A Novel Virtual-Structure Formation Control Design for Mobile Robots with Obstacle Avoidance

: The cooperative motion of multiple mobile robots has attracted wide attention due to its advantages in military, marine and aerospace ﬁelds, and formation control has become a signiﬁcant technology in the realization of these tasks. However, most of the existing formation control designs of mobile robots do not consider the practical obstacles in the environment, and the maintenance of both formation and trajectory tracking while confronting the obstacles is still a challenging issue. Therefore, in this paper, a virtual-structure-based formation control approach is designed with obstacle avoidance for a system with multiple mobile robots. The basic trajectory is generated for each robot in the group and parameterized to keep the group in formation. A trajectory generator is then established regarding the obstacles, where a potential function is designed to adjust the basic trajectory and replan the reference trajectory to achieve obstacle avoidance. Then, a novel design for the path parameter is proposed to improve the performance of the robot group when encountering obstacles. Finally, a tracking controller is designed to achieve good tracking performance for robots, and the guaranteed performance is achieved via the Lyapunov theorem. A comparative simulation with three sets is carried out, where an objective function F obj is designed to evaluate the tracking performance in the presence of obstacles. Besides this, a real experiment is implemented to further verify the effectiveness. The simulation and experimental results verify the good formation and tracking performance of the proposed design for a system with multiple mobile robots with obstacle avoidance. validation, F.H., Y.Z. and S.L.; formal analysis, F.H.; investigation, X.C.; resources, S.L. and Y.N.; data curation, S.L. and J.T.; writing—original draft preparation, X.C.; writing—review and editing, X.C.; visualization, S.L. and S.Z.; supervision, S.L. and Z.C.; project administration, S.L., J.T. and S.Z.; funding acquisition, Z.C., Y.N. and S.L.


Introduction
With the development of automation [1][2][3][4][5], mobile robots have been widely applied due to their advantages in many fields, such as in environmental inspection, area reconnaissance, maritime search and rescue, etc. [6,7]. However, reliance solely on a single robot cannot handle some complicated tasks; thus, the concept of groups of multiple robots has come into being [8][9][10]. Formation control is a significant technology for multiple robots [11][12][13][14][15] that can increase the system's robustness and efficiency, expand the range of exploration and reduce the system cost. Therefore, formation control for robots has received increasing attention over recent years.
The main objective of formation control for groups of multiple robots is to track a predefined trajectory while maintaining a certain geometric pattern for the robots [16][17][18]. However, with regard to the practical environment, which is always complicated by the presence of obstacles [19], the aforementioned formation objective becomes a challenge. Therefore, collision avoidance is an inevitable but significant issue in the formation control of multiple mobile robots, which can improve the flexibility of robots when undertaking more complicated tasks in the real environment. Formation control can be roughly classed as three approaches [20][21][22][23], which are leader-following, behavioral and virtual structures, respectively; a detailed review is presented below.
The leader-following approach is the most widely used approach due to its good operability and ability to keep the formation even if the leader is perturbed by disturbances. This approach designates the leader and followers of the group. The leader tracks the predefined trajectory while the followers track the trajectory determined by the state of the leader. A leader-following formation control method for underactuated surface vehicles with model uncertainties and environmental disturbances was proposed in [24]. Gui et al. [25] proposed the leader-following approach with the combination of Lyapunov-based sliding-mode control design in the formation of multiple robots. F. Fahimi et al. [13] proposed sliding-mode control laws to control multiple robots in arbitrary formations, where the stability was guaranteed by the combination of local information and planned formation motion. L. Lapierre et al. [26] designed the leader-following approach to steer robots along identical parallel paths with the least information exchange. Schoerling et al. [27] design the cooperative controllers for robots. A. Loria et al. [28] design the controller based on the assumption that only one agent knows the information of reference trajectory. Ref. [29] proposed a leader-following approach considering the constraints of the control input. Chen et al. [30] designed a directed formation control law based on the knowledge only of the neighbor's direction by using the integrator backstepping technique. Li et al. [31] proposed leader-following controller considering the time-varying delay and nonlinear dynamics. These studies exhibit good formation tracking performance for robots; however, since no feedback is provided by the follower, the leader-following approach cannot maintain the formation well when the follower is perturbed. This approach cannot achieve good formation tracking performance when encountering obstacles. Moreover, few applications of the behavioral approach are based on the formation control of robots due to the limited sensing range and difficulty of stability analysis [32], which makes it difficult for the robots to track the reference trajectories precisely.
In contrast to the leader-following and behavioral approaches, the entire formation is predefined as a single entity in the virtual-structure approach since it has a rigid geometric relationship. When the virtual structure moves, it produces the reference trajectory for the tracking of each robot. In [33], a virtual-structure control strategy with mutual coupling between the robots is proposed. In [16], a combination of the virtual structure and path-tracking approaches is used to derive the formation architecture, and the controller is designed in such a way that the path derivative is left as a free input to synchronize the robots' motion. Do et al. [34] presented a constructive method to design output-feedback cooperative controllers that drive a group of robots with limited sensing ranges to perform desired formation tracking. Furthermore, in [17], this formation control method was applied to robots with limited sensing ranges to perform the desired formation. Yu et al. [35] proposed a novel controller for the trajectory tracking of nonholonomic vehicles, which could guarantee a bounded velocity. Generally, a virtual structure can maintain the formation well for multiple robots and track the predefined trajectories precisely, which is applied in this paper to design the formation controller for multiple robots.
However, the obstacles in the environment are not considered in the aforementioned references, which is an inevitable but significant issue for the practical formation control of robots to achieve the obstacle avoidance. A consensus-based cooperative formation control strategy with collision-avoidance capability for a group of multiple unmanned aerial vehicles (UAVs) was proposed in [36]. A control law based on the potential function and a formation control protocol based on graph theoretic considerations were proposed in [20,21], respectively. In [37], a control law with online obstacle avoidance was discussed with online optimization to maintain the formation automatically. K. Do et al. [22] developed distributed controllers that could force a group of robots to perform a desired formation with no collision among any of the robots in the group. In [38], a formation strategy with the combination of the leader-following formation approach and potential function-based method was proposed.
Although some research works have been undertaken to consider collision avoidance [38][39][40][41], few can be applied directly to robots, and keeping the tracking error as small as possible in the formation when encountering the obstacles is still challenging. Thus, considering the obstacles in the environment, a virtual-structure-based formation control design for groups of multiple mobile robots is proposed in this paper. The virtual-structure approach is applied to generate the basic trajectory for each robot in the group, and the trajectory is parameterized to keep this group in formation. A trajectory generator is established with the consideration of obstacles, where the potential function is designed to adjust the basic trajectories and generate new reference velocities, which can be used to replan the reference trajectories. Subsequently, a tracking controller is designed to achieve good tracking performance, and the guaranteed performance is achieved via the Lyapunov theorem. A comparative simulation is carried out to show the formation and tracking regarding obstacles. Besides this, a real robot experiment is implemented to further verify the effectiveness of the proposed control design. The main contributions are as follows: (A) The potential function method is applied to the virtual-structure-based approach for the consideration of obstacles; thus, the algorithm can adapt to the practical environment. (B) A novel path parameter which parameterizes the basic trajectories is designed to adjust the weight of the formation and tracking in the moving process according to the situation that the formation encounters obstacles. The system can give priority to tracking rather than formation when encountering obstacles, meaning that the tracking errors of the team can be as small as possible.
The remainder of this paper is organized as follows. In Section 2, the problem statement is given. In Section 3, the details of our formation controller are presented. Section 4, a simulation is implemented to prove the effectiveness of the proposed controller. In Section 5, a real robot experiment is carried out to further show the tracking and obstacle avoidance performance. Section 6 describes the contributions of this paper and future research.

Problem Statement
All symbols used in this paper are shown in Nomenclature. Consider a group of robots, shown in Figure 1, where the kinematic model of each robot can be defined as follows: where x and y are the global coordination of gravity center for each robot, θ is the heading and ν and ω are the linear velocity and angular velocity, which are regarded as the control inputs of each robot.
Due to the nonholonomic constraint of robots, the trajectory R(t) = x (t) y (t) T should satisfy the following equation: −ẋ sin θ +ẏ cos θ = 0 where θ is the heading angle and can be defined as θ = arctan(ẏ/ẋ).
To achieve the formation control of mobile robots, N desired trajectories x di y di θ di T , (i = 1, 2, . . . , N) are planned for the tracking of the group in the formation. Specifically, since collision is an inevitable issue in formation control, especially in a complex environment, a potential function is designed in this paper to achieve collision avoidance for the group. Therefore, based on the above statement, the objective of this paper can be described as follows:

Global frame
consider the obstacles in the environment and design a formation control input ν i ω i T to guarantee the stability of the closed-loop system and make the tracking errors as small as possible.

Formation Controller Design
The proposed virtual-structure-based formation control scheme is shown in Figure 2. For a group of N robots, the virtual-structure approach is applied to generate N basic desired trajectories x di y di T for these robots to track, and the trajectories are parameterized by s in order to keep the group in formation. The desired velocities ν di ω di T can be calculated based on the desired trajectories containing the desired velocities and trajectories. To achieve collision avoidance via the potential function, a trajectory generator is designed to replan the reference trajectories x ri y ri T with the desired velocities ν di ω di T and adjusted velocities ν ai ω ai T . Based on the reference velocities and trajectories, the tracking controller ν i ω i T is designed to achieve good formation tracking performance. Moreover, the parameter s is designed to adjust the desired velocities to track with regard to the tracking errors of the whole formation, where the desired formation can be slowed down to wait for the robots to track when the system has large tracking errors. Therefore, good formation and tracking performance regarding the obstacles can be achieved by the proposed control design.

Basic Trajectory Planning
In this subsection, the basic desired trajectories x di y di T and velocities ν di ω di T are planned.
A group of N robots needs N desired trajectories to stay in formation. The virtual-structure approach is applied here to generate the desired trajectories.
Consider a virtual structure whose center moves along the desired trajectories with s being the path parameter. Then, trajectories can be specified by the displacement from the center of the structure to each place-holder (shown in Figure 3), which can be calculated as follows: where θ d0 is the heading angle of the center of structure and can be defined as θ d0 (s) = arctan((∂y d0 (s)/∂s)/(∂x d0 (s)/∂s)).
Each trajectory is parameterized by the path parameter s so that the desired trajectories can always be in formation.
Then, the desired liner velocity and angular velocity for each robot can be calculated as where the time derivative of path parameter s is included in the desired linear and angular velocity, which indicates thatṡ determines the desired formation speed; the selection of s is discussed in Section 3.4.

Collision Avoidance
In this subsection, the component ν ai ω ai T is designed via the potential function method to adjust the basic trajectories dynamically with regard to obstacles in the environment. For easy implementation, the shape of obstacles is simplified as being round, and a single robot is also regarded as a round obstacle for other robots. The detailed design is given below. Define the potential function candidate as where d = x i − x p 2 + y i − y p 2 is the distance from the ith robot to the obstacle, and the coordinates are (x i , y i )and x p , y p . r is the radius of the round obstacle and R is the radius of the detection region around the obstacle; note that R > r > 0 . Thus, this function will blow up when the robot is close to the obstacle and will be equal to zero whenever the robot is outside the detection region. It is noteworthy that there is no need to consider situation d ≤ r because collision will occur before that time.
Take the partial derivatives of Γ i with respect to x i and y i coordinates as and define the virtual force vector l pi = −k pi Transform this virtual force vector to the robot's body coordination as Then, the adjusted component can be obtained as where c 3i and c 4i are positive constants. In this design, the virtual force Ψ wi directly acts on the reference angular velocity, and the action direction is opposite to the obstacle (see Figure 4), which means that the generator tends to turn in the direction without obstacles; correspondingly, new reference trajectories will deviate from the desired path to avoid obstacles. Another force Ψ vi acts on the linear velocities, and the forward speed tends to decrease to adjust the direction when the obstacle is in front. By applying this design, the new trajectories can be guaranteed to gradually move away from the location of the obstacle.

Reference Trajectory Replanning
The reference velocities can be obtained as It should be noted that the adjusted component Ψ vi Ψ wi T is equal to 0 when the robot is outside the detection region.
Then, define a switch coefficient Therefore, the reference trajectories can be replanned as where R di (t) are basic trajectories and R ai (t) are adjusted trajectories. The adjusted trajectories R ai (t) are generated by the reference velocities when the robot gets close to the obstacle. It can be obtained as where θ ai (t) = t t 0 ω ri (τ)dτ + θ ri (t 0 ) and t 0 is the moment when η switches from 0 to 1.

Remark 1.
When the ith robot is out of the detection region-i.e., no collision occurs-the reference trajectories x ri y ri T are equal to the desired x di y di T . However, when the ith robot is inside the detection region and the potential function Γ i blows up, the reference trajectories will have already been adjusted to deviate from the desired ones to avoid the collision. In this case, the Γ i can asymptotically converge to 0 if the robots track the reference trajectories.

The Selection of the Path Parameter
As described in Section 3.1,ṡ is the time derivative of the path parameter for all desired trajectories. Equation (4) implies thatṡ determines the desired linear and angular velocity.
For a single mobile robot trajectory tracking problem, s = t is chosen intuitively. However, in the formation control problem, for the selection of s, two situations need to be considered to be follows: (P1) s should reflect the overall formation tracking status. Thus, for a group of N mobile robots, define where ξ xi , ξ yi and ξ θi are tracking errors, which can be defined as where x di y di θ di T are basic desired trajectories. Therefore, V can reflect the formation tracking errors well and can blow up whenever any robot deviates from the desired trajectories and converge to 0 whenever all the robots are on the track. From (4), the time derivative of path parameterṡ determines the desired formation velocities. Thus,ṡ is expected to decrease to slow down the velocities of desired trajectories whenever V is large, which means that some robots are out of track. Then, there is plenty of time left for these robots to reach their desired trajectories. On the other hand,ṡ is expected to converge to 1 whenever all the robots on the track, meaning that the formation velocities can reach a desired value. In conclusion: Thus,ṡ can be designed as follows [16]: where α ∈ [0, 1]; this choice is discussed later.
(P2) Consider a situation in which a robot becomes stuck due to obstacles or needs to deviate with a large range to get around obstacles. It will break the tracking status without doubt; then, V will blow up andṡ will converge to 0 correspondingly, which leads to a low speed of the whole formation. Therefore, the reference velocities are expected to reach the desired velocities in this situation instead of converging to 0. By doing this, the robots who do not get close to the obstacle can maintain formation with the desired velocities, while those who are impeded by obstacles can move away from the obstacles by adjusting their desired velocities continuously. Thus, the design ofṡ can be modified.
..,N Γ i , which can indicate whether some robots become stuck. F will blow up whenever any robot is impeded by obstacles. On the contrary, F converges to 0 under normal conditions. When F has a large value,ṡ will converge to 1 instead of 0 despite V being large. Therefore, the parameter α is modified to achieve the following target: Thus, α is designed as follows: where k is a positive constant. In conclusion:ṡ

Tracking Controller
The tracking controller is designed based on reference velocities ν ri ω ri T and trajectories x ri y ri T . Define the tracking errors regarding the robot's coordination (show in Figure 5) as Then, the error dynamics can be obtained as follows: The tracking controller [ ν i ω i ] T should be designed to have a good tracking performance for reference trajectories.
Thus, the tracking controller can be designed as where c 1i and c 2i are positive constants.
i th robot For the good tracking performance of the trajectory generator, one theorem can be obtained as follows.

Theorem 1.
With the reference trajectories [ x ri y ri ] T and velocities [ ν ri ω ri ] T , by applying the tracking controller (23), the closed-loop system is asymptotically stable with the achievement of the following equations: which means that the tracking controller (23) shows a good tracking performance and can maintain the formation for a group of N mobile robots.

Proof. Define
We note that η i is non-negative and converges to 0 if and only if θi converges to 4Kπ, K ∈ Z [35]. Thus, η ei instead of θi is applied to design a Lyapunov function as follows: where Γ i is potential function (5) so that V i is non-negative and V i → ∞ as xi + yi → ∞.
Taking the time derivative of V i : where the time derivative of potential function Γ i has the following form: We note that d is the distance between the robot and the obstacle. When the robot is outside the collision region,Γ i is equal to 0. While inside the collision region-i.e., r < d ≤ R-then ≤ 0, which means the sign ofΓ i depends on the sign ofḋ. Considering Remark 1, the reference trajectories can be adjusted dynamically to avoid obstacles; thus, d is guaranteed to increase when the robot is in the collision region. Therefore, it can be concluded thatḋ ≥ 0; thus,Γ i ≤ 0 always holds.
Then, substituting (22) and (23) into (27), the derivative of V i can be calculated as follows: As V i ≥ 0,V i ≤ 0, then V is bounded, which demonstrates that xi and yi are bounded in t. Moreover,V i is uniformly continuous and bounded, soV i → 0, with regard to Barbalat's Lemma; then, xi → 0, sin θi 2 → 0 as t → ∞. To show yi → 0 when xi → 0, sin θi 2 → 0, define Since yi is bounded and sin θi 2 → 0, then f (t) → 0. Taking the time derivative of f (t), where f 1 (t), f 2 (t) are defined as follows: where ω ri can be substituted by (23).
Since sin θi 2 → 0, f 2 (t) → 0. f 1 (t) is uniformly continuous in t, the following can be derived: We note that v ri = 0. Thus, Thus, we can see that yi → 0 when xi → 0, sin θi 2 → 0, the stability of the closed-loop system by applying controller ν i ω i T is guaranteed and the controller can achieve good tracking performance.

Remark 2.
When the ith robot is outside the detection region and no collision occurs, the reference trajectories x ri y ri T are equal to the desired x di y di T . Thus, with Theorem 1, N mobile robots can move along the reference trajectories, where the tracking errors can converge to 0 in the situation of no collision.

Remark 3.
When the ith robot is inside the detection region and a collision is about to occur, the reference trajectories are replanned as R ri (t) = R ai (t) to deviate from the desired ones considering a collision in the environment. Then, using Theorem 1 to guarantee the good tracking of reference trajectories R ri (t) = R ai (t), and by the decrease of parameter α in s, which is used to overcome the stuck situation and further track the reference trajectories, N mobile robots can move along the reference trajectories and avoid the obstacle, where the tracking errors converge to 0 in the situation of collision.

Simulation Setup
To illustrate that the group of multiple mobile robots can achieve collision avoidance with the proposed controller with tracking errors kept as small as possible, the following three sets of comparative simulations are implemented based on the MATLAB/Simulink environment.

Simulation of Set 1
This simulation set is designed to illustrate that the controller with collision avoidance can show better performance in a relatively complex environment than without. To obtain a fair and effective comparison, two controllers are compared as follows: C1: Virtual-structure-based formation controller with P1 considering collision avoidance. The control law is selected as (23), where c 1i = 10 and c 2i = 5, and the parameters in adjusted component (9) in Section 3.2 is selected as c 3i = 1 and c 4i = 1. The parameter in P1 (17) is selected as α = 1.
C2: Virtual-structure consensus tracking control (proposed in [18], without collision avoidance). The control law is designed as where is the distance between the position of the ith robot and the position of the center of the virtual structure k = 1. Then, is the desired trajectory. The workshop is 4 m × 4 m square in the simulation set, which contains three mobile robots cooperating with each other. Assume that the shape of each robot is round, each robot can detect the position of others and obstacles in the workshop are within a certain range. A triangle formation is expected and built by the virtual structure (show in Figure 6a) and the distance l xi l yi T between the ith desired trajectory and the center of the virtual structure x d0 y d0 T is given as follows: Then, the desired trajectory of the virtual center is designed as follows: where T 1 = 5, T 2 = 5 + 2.5π, T 3 = 5 + 5π, T 4 = 10 + 5π, and the desired trajectory of the ith robot R di is calculated based on R d0 , as shown in Figure 6b. We note that the desired trajectory designed for formation maintenance has discontinuities.
(a) The triangle formation setup in set 1 (b) The desired trajectories for the robot formation in set 1 Figure 6. The triangle formation setup and desired trajectories for the robot formation in set 1.
The radius of the robot is set as 0.175 m, and the detection region radius is set to be 0.3 m. Then, the two obstacles are set in the workshop with the radius r 0.2 m, where the radius of detection region R is 0.3 m, and the positions are located at (1, 0.2) and (1, 1.9), respectively.
For the easy illustration of the fact that the tracking error can be as small as possible with regard to obstacles in the environment, an objective function F obj is designed to make comparisons between the proposed controller C1 and its counterpart C2, where the definition of F obj is as follows: The results of simulation set 1 is shown in Figures 7-11. Figures 7 and 8 show the tracking performance of the formation for robots, and the triangle represents the formation shape at that moment. From Figure 7, it can be seen intuitively that the triangle formation is maintained well in the process of tracking desired trajectories via C1. We note that the robots can avoid obstacles via C1 while the robots in C2 cannot, since C2 does not consider the obstacle avoidance in the control design.   Figures 9 and 10 show the tracking errors of the whole group. It should be noted that the desired trajectories have three mutation points, which result in the blowing up of tracking errors at these moments. The tracking errors caused by trajectory catastrophe in C1 are obviously lower than those in C2. However, the group in C1 avoids the obstacles at the 20th second, which leads to an increase of tracking errors in C1 at the end of simulation.   Figure 11 shows the F obj of C1 and C2. Compared to the tracking error, this can better evaluate the tracking and obstacle avoidance performance. We note that the F obj of C1 increases slightly when the robots get close to the obstacles; this is because the desired trajectories can deviate for robots in C1 to avoid the obstacles, which results in the decrease of Γ and means the achievement of obstacle avoidance, though the tracking error rises slightly. On the contrary, F obj of C2 blows up after the group first encounter the mutation point at the fifth second; this is because C2 does not consider the collision avoidance and the group gets close to the obstacle, which results in the sharp increase of Γ although the tracking error is small. As a result, the desired trajectories suddenly change when close to the obstacles, but F obj of C1 is obviously lower than that of C2, which further reflects the good tracking and obstacle avoidance performance of C1. Based on the result of simulation set 1 with different controllers, it can be seen that the proposed C1 has a good formation and tracking performance, which can achieve collision avoidance well and keep the tracking error as small as possible for the whole process.

Simulation of Set 2
This simulation set is designed to illustrate the effectiveness of path parameter P2 compared to P1 when the group encounters obstacles. Thus, two different sets are applied on C1 to make comparisons as follows: C1-P1: Apply the proposed controller C1 in set 1 with P1 (proposed in [16]) aṡ C1-P2: Take the same controller C1 with P2 (proposed in this paper) aṡ In this simulation set, the reference trajectories and workshop are set to be the same as those in set 1. Two obstacles are set in the workshop with a radius r of 0.2 m, where the radius of the detection region R is 0.3 m and the positions are located at (1, 0.2) and (1, 1.9), respectively. An additional obstacle is set to further show the compared performance, whose radius r is 0.5 m with a radius of the detection region R of 0.8 m, and the position is located at (−1, −1). The same triangle formation as in set 1 is expected.
Similar to simulation set 1, the objective function in (39) is used to evaluate the tracking performance for robots, and Figures 12 and 13 show the tracking performance of formation maintenance for robots. The black triangle in Figures 12 and 13 is generated every fixed time, which represents the formation at this moment. Thus, as can be speculated from the intensity of the black triangle, the group under P1 is impeded by the obstacles and cannot complete the trajectories at the same time, while the group under P2 can complete them with better formation maintenance.
In Figure 14, the F obj of two groups increase sharply at 13 s, which is caused by the increase of both the potential function and tracking errors when the group first encounters obstacles. We note that the F obj of P1 changes slightly behind P2, because the path parameter designed in P1 cannot decrease the weight of the formation to satisfy tracking when encountering obstacles, meaning that P1 can be stuck at this moment. Then, when the group encounters obstacles that cannot be passed easily in 24 s, the F obj of P1 grows quickly and maintains a high value because the group is stuck and the potential function is high, while the F obj of P2 rises first and then falls, which illustrates that P2 can give priority to tracking rather than formation to pass the obstacles. The results show the improvement of P2 on keeping the F obj small in the tracking process. Therefore, a good formation tracking performance is achieved for groups of multiple robots via C1-P2, especially when close to obstacles.

Simulation of Set 3
This simulation set is designed to further show the effectiveness of C1-P2 with different numbers of robots and a relatively complex workspace. The robots in this set can form linear, triangle and quadrilateral formations to track an S-shaped trajectory. The desired trajectory x d0 y d0 T of the center robot is given as follows: where T 1 = 30, T 2 = 30 + 10π, T 3 = 50 + 10π, T 4 = 50 + 20π. The desired trajectory of the ith robot R di is calculated based on R d0 . The workshop is 10 m × 10 m square in this simulation set, which contains four obstacles. Three of the obstacles are set with a radius r of 0.2 m and a radius of the detection region R of 0.3 m. Their positions are located at (4, 3.5),(−1.7, −0.5) and (−2, 0.5). Another obstacle has a different size, whose radius r is 0.5 m with a radius of the detection region R of 0.8 m, and the position is located at (2,3). The properties of robots are set to be the same as those in set 1.
The results of simulation set 3 are shown in Figures 15-17. These three figures show the tracking and formation performance for different numbers of robots; the dotted line represents the desired trajectory of the virtual center and the black polygon represents the formation at this moment. The results show that the entire team have a good tracking and formation performance, which further shows that C1 proposed in this paper can adapt to different numbers of robots well and can be applied to relatively complex environments.

Experiment
To further verify the effectiveness of C1-P2 in a real environment, an experiment is implemented in which the setup is selected to be the same as the simulation setup of set 2 in Section 4.
The experiment is performed with the Quanser Unmanned Vehicle System (UVS), which includes an operator station PC, three Q-bot mobile robots and 12 OptiTrack cameras. The Q-bots are mobile robots which are driven by two driven wheels, and they can receive velocity control commands from the station PC via a WIFI network. The OptiTrack cameras are responsible for localizing objectives (i.e., Q-bots and obstacles) and send the messages to the station PC. The operator station PC acts as the host for the models running on the Q-bots and handles the processing of the OptiTrack data.
The results of experiment are shown in Figures 18 and 19. Figure 18 shows the tracking performances under C1-P2 in set 2, and Figure 19 represent the trajectories under C1-P2; the trajectories of simulation results are shown for comparison. Then, it can be seen intuitively that the experiment has the same results as the simulation, which further verifies the effectiveness of the C1-P2 at achieving formation and tracking performance with collision avoidance in a real enviroment.

Conclusions
In this paper, a virtual-structure-based formation control design is proposed for a group of multiple mobile robots with the consideration of obstacle avoidance, where N basic desired trajectories are generated in advance and parameterized by the path parameter s to maintain the formation for multiple mobile robots. To achieve collision avoidance, a trajectory generator with a potential function is designed that can adjust the basic trajectories and replan the reference trajectories. Subsequently, a tracking controller is designed to achieve the good tracking performance of mobile robots, and the asymptotical stability is guaranteed via the Lyapunov theorem. A comparative simulation with three sets is implemented with the design of an objective function F obj to evaluate the tracking performance, and the simulation results verify the good formation and tracking performance of the proposed formation control design for multiple mobile robots with obstacle avoidance and smaller tracking errors. Finally, the real robot experiment is implemented to further verify the effectiveness of the proposed control design.
Since the potential function-based path planning approach has essential drawbacks, such as the robot group possibly becoming stuck in a deadlock, the path parameter P2 proposed in this paper is developed to further improve the deadlock situation. In detail, the controller C1-P2 can adjust the path parameter to lower the weight of formation at this time, which maintains the good tracking and formation of the rest of this group with the sacrifice of stopping the motions of the stuck robot. However, this deadlock situation cannot be thoroughly solved because the stuck robot is left behind. Meanwhile, due to the hardware condition, the obstacle set is static, which can be relatively easily detected via the OptiTrack cameras. However, in practice, since a collision is usually instantaneous and time-varying, the online perception of obstacles and the identification of obstacle shapes becomes quite challenging, which may lead to a performance reduction in a real environment. Therefore, in future, other collision-avoidance algorithms and the online perception of obstacles and their shapes will be investigated to further improve the tracking and formation performance in the practical environment.