# Consensus Formation Control for a Class of Networked Multiple Mobile Robot Systems

Authors: Long Sheng; Ya-Jun Pan; Xiang Gong
Journal: Journal of Control Science and Engineering
 (2012)

---

## Abstract

A consensus-based formation control for a class of networked multiple mobile robots is investigated with a virtual leader approach. A novel distributed control
algorithm is designed based on the Lyapunov method and linear matrix inequality (LMI) technique for time delay systems. A multiple Lyapunov Krasovskii functional candidate is proposed
for investigating the sufficient conditions to linear control gain design for the system with constant time delays. Simulation results as well as experimental studies on Pioneer 3 series mobile robots are shown to verify the effectiveness of the proposed approach.


---

## Body

## 1. Introduction

Embedded computational resources in autonomous robotic vehicles are becoming more abundant and have enabled improved operational effectiveness of cooperative robotic systems in civilian and military applications. Compared to autonomous robotic vehicles that operate single tasks, cooperative teamwork has greater efficiency and operational capability. Multirobotic vehicle systems have many potential applications, such as platooning of vehicles in urban transportation, the operation of the multiple robots, autonomous underwater vehicles, and formation of aircrafts in military affairs [1–3].The study of group behaviors for multirobot systems is the main objective of the work. Group cooperative behavior signifies that individuals in the group share a common objective and action according to the interest of the whole group. Group cooperation can be efficient if individuals in the group coordinate their actions well. Each individual can coordinate with other individuals in the group to facilitate group cooperative behavior in two ways, named local coordination and global coordination. For the local coordination, individuals react only to other individuals that are close, such as fish engaged in a school. For the global coordination, each individual can directly coordinate its act with every other individual in the group. Due to communication constraints, most researchers are interested primarily in group cooperation problems where the coordination occurs locally [4–6].Cooperative control of multirobotic vehicle systems brings us significant theoretical [7–9] and practical challenges. For example, the research objective is defined based on a system of some subsystems rather than a single system; the effects caused by the communication constraints should be considered and how to design coordination strategies so that coordination will result in a group cooperation [10, 11].As a concrete example of cooperative control, the formation control of multiple autonomous vehicles receives significant interest in recent years [12–15]. It requires that autonomous robotic vehicles collectively maintain a prescribed geometric shape during movement. Maintaining an accurate geometric configuration among multiple robotic vehicles moving in formation can result in less expensive and more capable systems that can accomplish objectives impossible for a single vehicle. The advantages of the formation control for multirobotic systems can be summarized as follows: good feasibility, accuracy, robustness, flexibility, lower cost, energy efficiency, and probability of success. For example, a group robotic vehicles can be used for large objective transferring, terrain model reconnaissance, unknown area exploration, and path obstruction.Various strategies and approaches, which can be roughly categorized as leader-follower, behavioral, and virtual leader approaches [16], have been proposed for the formation control. In the leader-follower approach, one of the vehicles is appointed as the leader, and other vehicles in the group are appointed as the followers. When the group cooperative behavior occurs, the followers should track the trajectory of the leader with some prescribed offset. The basic idea about the behavioral approach is to prescribe several desired behaviors for each vehicle and to make the control action to each vehicle according to each behavior. In the virtual leader structure approach, the entire formation of the group is treated as a single structure. The virtual leader’s dynamic or trajectory is converted as the desired action of each vehicle in the group. Tracking control based on consensus algorithm is then needed to tackle this problem.In the proposed work, a novel distributed control algorithm is designed based on the Lyapunov method and linear matrix inequalities (LMIs) technique for multiple robot systems. Note that Lyapunov-based approaches and LMIs technique have been successfully and widely applied in the area of systems and control. For example, in [17], a survey is in analysing the stability of time-delay systems by using of a Lyapunov-based method, LKF (Lyapunov Krasovskii function) theory to derive sufficient stability conditions in the form of LMIs. Furthermore, in [18], a set-value Lyapunov approach is to prove the stability of multiagent systems under a condition of time-dependent communication links. A Lyapunov-based stability theory and LMIs-based control method are described comprehensively in [19, 20], respectively.In this work, a consensus-based design scheme is applied to the formation control of multiple-wheeled mobile-robot group with a virtual leader. The group communication configuration is assumed to be a fully coupled system which means decisions made by each robot in the group affect the cost and outcomes of all other members of the group. In this case, what a single robot is going to do is affected by what all other robots in the group are going to do. The distributed formation control architecture is defined to accommodate an arbitrary number of subgroup leaders and arbitrary information flow among the robots. This architecture requires neighbor-to-neighbor information exchange. At the group level, the consensus tracking algorithm is applied to guarantee consensus on the time-varying group reference trajectory in a distributed manner. A consensus-based formation control strategy developed based on the group level consensus tracking algorithm is applied for vehicle level control.A novel delay-dependent multiple Lyapunov functional candidate related to LKF is constructed to investigate the convergence of the tracking error. The null sums have been added to the new multiple LKF with free weighting matrices introduced to reduce the conservatism in the derivation of the stability conditions. Therefore, the matrices and the sufficient conditions for the stabilization of the proposed control approach can be determined by solving LMIs. The effects caused by the group communication delays are well considered in the proposed approach. In addition to simulation results, the proposed control strategy is experimentally implemented for multiple-wheeled mobile robots under neighbor-to-neighbor information exchange with group communication delay involved.Notations
The information exchange among robots is usually modelled by graphs. Suppose that a team consists ofn mobile robots. çn=(νn,εn) is a graph, where νn=1,…,n is a finite nonempty node set, and εn⊆νn×νn is an edge set of ordered pairs of nodes, called edges. The adjacency matrix An=[aij]∈Rn×n of a graph çn=(νn,εn) is defined such that aij is a positive weight if (j,i)∈εn is ture, and aij=0 if (j,i)∈εn is false.


## 2. Modelling of Pioneer 3 Mobile Robots

Pioneer mobile robots are durable, differential-drive robots for academic researchers. The most famous advantages of Pioneer 3 robot series are good versatility, reliability, and durability. In this work, two kinds in the series named Pioneer 3-DX (P3-DX) and Pioneer 3-AT (P3-AT) have been used for the experimental implementation.The P3-DX used in our lab is shown in Figure1(a). It assembled motors with 500-tick encoders, 19 cm wheels, 8 forward-facing ultrasonic sensors, 8 real-facing sonar, 1, 2, or 3 rechargeable batteries, and a microcontroller which can communicate with a laptop through serial port. P3-DX can reach the maximum speed of 1.6 meters per second and carry a payload of up to 23kg. It is an all-purpose base and can be used for research and applications involving mapping, teleoperation, localization, monitoring, reconnaissance, vision capture, cooperation, and other behaviors. P3-DX runs best on hard surfaces. It can traverse low sills and household power cords, and it can also climb most wheelchair ramps.Pioneer 3-DX and 3-AT mobile robots.
(a)(b)Another robot P3-AT used in this work is shown in Figure1(b). It is a highly versatile four-wheel drive robotic platform, which is softwarecompatible with other pioneer 3 robots. P3-AT is a popular team performer for outdoor or rough-terrain projects. It has powerful motors and four knobby wheels that can reach the maximum speed of 0.8 meters per second and carry a payload of up to 12kg. P3-AT uses 100-tick encoders with inertial correction recommended for dead reckoning to compensate for skid steering. Similar with P3-DX, P3-AT also has 8 forward and 8 rear sonar, a microcontroller which can be connected with a laptop through serial port and batteries.Both of P3-DX and P3-AT have the same kinematic model which can be expressed by the following equation:(1)ẋ=υcos⁡⁡(θ),ẏ=υcos⁡⁡θ,θ̇=ω,
where [x,y] is the inertial position of the P3 mobile robot, θ is the orientation of the robot, and [υ,ω] denote the linear and angular speeds of the robot. Since the P3 mobile robots used in this work have nonholonomic constraints, the coordination problem becomes more complicated. As we know, nonholonomic systems cannot be stabilized with continuous static-state feedback, so the difficulty of the coordination problem for differentially driven mobile robots is that the position and orientation of the center of the robot cannot be simultaneously stabilized with a time-invariant feedback control strategy. Some researchers successfully used discontinuous control laws and time-varying control laws to stabilize the center of a single differentially driven mobile robot; however, the multiple robot case is more complicated for sure.The most popular way to simplify this complex case is to define a hand position for each robot. As shown in Figure2, the hand position of the robot usually has been defined at the point h=[hx,hy]T which lies a distance L along the line that is normal to the wheel axis and intersects the wheel axis at the center point r=[x,y]T. The kinematic model of the hand position is holonomic for L≠0. Instead of considering the coordinating problem at the center of the robot, we consider the problem at the hand position. Another important advantage of defining a hand position for the robot is that the hand position has practical interest. For example, if the task of the robot group is to move an object from one place to another by using the gripper which has been installed at the hand position of each robot, then the control objective for this task is to move the gripper locations in a coordinated fashion.Figure 2
Hand position for P3 mobile robot.Now, let us find the kinematic model for the hand position of each robot. First, the hand position can be represented by the following equation:(2)hx=x+Lcos⁡(θ),hy=y+Lsin⁡(θ),
where h=[hx,hy]T is the hand position in x and y plane. Now, let us differentiate (2) with respect to time and substitute (1), then we get
(3)ḣx=cos⁡(θ)υ-Lsin⁡(θ)ω,ḣy=sin⁡(θ)υ+Lcos⁡(θ)ω.Defineh=[hx,hy]T, u=[ux,uy]T and let
(4)υ=cos⁡(θ)ux+sin⁡(θ)uy,ω=-1Lsin⁡(θ)ux+1Lcos⁡(θ)uy,
then we have
(5)ḣ=u,
which is the kinematic model of the robot’s hand position.


## 3. Problem Formulation

As described in the above section, the nonlinear kinematic model of the center position of the robot has been simplified and linearized into the form of single-integrator dynamics shown in (5) by defining a hand position for each robot. The control interest has been converted from the center position of the robot to its hand position. So the state of the hand position of the robot is used as the state of the robot itself.The virtual leader and virtual structure approach is one solution to formation control. Figure3 shows the example of the virtual leader and virtual structure approach with a formation composed of three vehicles with planar motions. In Figure 3, C0 is the global coordinate system, ri(t)=[xi(t),yi(t)]T is the ith vehicle’s actual position at time t, and rid(t)=[xid(t),yid(t)]T is the ith P3 mobile robot’s desired positions at time t. Both its actual and desired position at time t are relative to C0. The group can move with the desired formation shape only if each vehicle can track its desired position accurately.Figure 3
The framework for P3 mobile robot team with virtual leaders.In this paper, we assumed each P3 mobile robot knows the state of its virtual subgroup leader versus time. If each vehicle has inconsistent knowledge of its virtual subgroup leader’s states, then the desired formation cannot be maintained.The linearized model of each robot in the group can be represented by the following equation:(6)ṙi(t)=ui(t),i=1,…,n,
where ri(t)=[xi(t),yi(t)]T∈Rn is the state of the ith robot in the group which includes its position and velocity information. i is the index denoting the number of the robot in the group. n is the total number of all robots in the group. ui(t)∈Rm is the control input signal.Now, define the virtual subgroup leader’s state, which is also the desired state for each P3 mobile robot in the group, asrid(t)=[xid(t),yid(t)]T. If ri(t)→rid(t),  i=1,…,n, as t→∞, then the desired formation shape is maintained, and the group movement follows the desired reference.


## 4. A Novel Consensus Control Approach

In [21], the controller ui is designed for agents in the form of integrators such that all followers track the virtual leader with local interaction in the absence of velocity measurements. Specifically, a distributed consensus tracking algorithm is defined as
(7)ui(t)=-α∑j=0naij(rj-ri)-βsgn⁡[∑j=0naij(ri-rj)],
where α is a nonnegative constant, β is a positive constant, and sgn(·) is the signum function, since it considers the tracking problem under fixed and switching network topologies. In the proposed work, a new distributed consensus tracking control algorithm with consideration of some communication delay can be represented as(8)ui(t)=ṙid(t)-ki(ri(t)-rid(t))-∑j=1,i≠jnaij(rj(t-τ)-rjd(t-τ)),
where ki is the designed control gain. Notice that each robotic vehicle in the group has the same group communication coupling and kinematic model, ki can be represented as k instead, aij is the (i,j) entry of adjacency matrix An∈Rn×n according to the interaction topology Çn=(νn,εn) for ri-rid, rj-rjd is the information from neighbors of the ith P3 mobile robot, which can also be treated as the coupling between the ith P3 mobile robot and its neighbors, and τ is the constant network-induced group communication delay. Submiting (8) into (6), we have(9)ṙi(t)=ṙid(t)-k(ri(t)-rid(t))-∑j=1,i≠jnaij(rj(t-τ)-rjd(t-τ)).
If we define
(10)ei(t)=ri(t)-rid(t),
then (9) can be rewritten as
(11)ėi(t)=-kei(t)-∑j=1,i≠jnaijej(t-τ).
It is obvious that if ei→0,i=1,…,n as t→∞ which means ri→rid,i=1,…,n as t→∞, then the desired formation shape is maintained, and the group movement follows the desired reference. The next step is to find the sufficient conditions for the design of the control gain k so that it can stabilize the error dynamics represented by (11).Lemma 1 (Jensen inequality).
For any constant matrixE∈ℛn×n,  E=ET>0, vector function  ω:[0,τ]→ℛn such that the integrations concerned are well defined, then(12)τ∫0τωT(s)Eω(s)ds≥[∫0τω(s)ds]TE[∫0τω(s)ds].Theorem 2.
Consider the error dynamics model represented by (11), for a given time delay  τ and the number of members in one group  n; if there exist symmetric positive definite matrices  P=[P11P12P12TP22]>0,  Q=[Q1100Q22]>0,  R=[R1100R22]>0, matrices  Mi,Ni,i=1,…,5 with appropriate dimensions, such that the following inequality holds:
(13)H=[H11****H21H22***H31H32H33**H41H42H43H44*H51H52H53H54H55]<0,
where
(14)H11=P̂12+P̂12T+(n-1)Q̂11+(n-1)τR̂11+N1+N1T+M1K+KTM1T,H21=-P̂12T+N2-N1T+ATM1T+M2K,H22=-(n-1)Q̂11-N2-N2T+M2A+ATM2T,H31=(n-1)P̂11+N3+M1T+M3K,H32=-N3+M3A+M2T,H33=(n-1)Q̂22+(n-1)τR̂22+M3+M3T,H41=(n-1)P̂22+N4+M4K,H42=-(n-1)P̂22-N4+M4A,H43=P̂12T+M4,H52=-N2T-N5+M5A,H51=-N1T+N5+M5K,H44=-(n-1)R̂11τ,H53=-N3T+M5,H54=-N4T,H55=-(n-1)R̂22τ-N5-N5T,
then system (11) is asymptotically stable, for example, ei(t) tends to zero asymptotically which means the ith robot in the group tracks its desired trajectory well.Proof.
For each robot in the group, we take the Lyapunov Krasovskii functional candidate as(15)Vi=(n-1)eiT(t)P11ei(t)+2eiT(t)P12∑j=1,j≠in∫t-τtej(s)ds+∑j=1,j≠in∫t-τtejT(s)dsP22∫t-τtej(s)ds+∑j=1,j≠in∫t-τt[ejT(s),ėjT(s)]Q[ej(s)ėj(s)]ds+∑j=1,j≠in∫-τ0∫t+θt[ejT(s),ėjT(s)]R[ej(s)ėj(s)]dsdθ,
and now we define
(16)êT(t)=[e1T(t),…,enT(t)]1×n,
and take the multiple Lyapunov Krasovskii functional candidate as
(17)V=∑i=1nVi=(n-1)êT(t)P̂11ê(t)+2êT(t)P̂12∫t-τtê(s)ds+(n-1)∫t-τtêT(s)dsP̂22∫t-τtê(s)ds+(n-1)∫t-τt[êT(s),ê̇T(s)][Q̂1100Q̂22]2n×2n[ê(s)ê̇(s)]ds+(n-1)∫-τ0∫t+θt[êT(s),ê̇T(s)][R̂1100R̂22]2n×2n×[ê(s)ê̇(s)]dsdθ,
where
(18)P̂ii=diag⁡[Pii,…,Pii]n×n,i=1,2,P̂12=[0P12⋯P12P12⋱⋱⋮⋮⋱⋱P12P12⋯P120]n×n,Q̂ii=diag⁡[Qii,…,Qii]n×n,i=1,2,R̂ii=diag⁡[Rii,…,Rii]n×n,i=1,2.
With appropriate dimensions, the following two zero equations hold:
(19)ϕ1=2zTN[ê(t)-∫t-τtê̇(s)ds-ê(t-τ)]=0,ϕ2=2zTM[ê̇(t)+Kê(t)+Aê(t-τ)]=0,
where
(20)z=[ê(t),ê(t-τ),ê̇(t),∫t-τtê(s)ds,∫t-τtê̇(s)ds]T,N=[N1,N2,N3,N4,N5]T,Ni=diag⁡[ni,…,ni]n×n,i=1,…,5,M=[M1,M2,M3,M4,M5]T,Mi=diag⁡[mi,…,mi]n×n,i=1,…,5,K=diag⁡[k,…,k]n×n,A=[0a12⋯a1(n-1)a1na210⋯a2(n-1)a2n⋮⋮⋱⋮⋮a(n-1)1a(n-1)2⋯0a(n-1)nan1an2⋯an(n-1)0].
Then, the derivative of the multiple Lyapunov function candidate is as follows:
(21)V̇=V̇+ϕ1+ϕ2=(n-1)ê̇T(t)P̂11ê(t)+(n-1)êT(t)P̂11ê̇(t)+2ê̇T(t)P̂12∫t-τtê(s)ds+2êT(t)P̂12ê(t)-2êT(t)P̂12ê(t-τ)+(n-1)êT(t)P̂22∫t-τtê(s)ds-(n-1)êT(t-τ)P̂22∫t-τtê(s)ds+(n-1)(∫t-τtêT(s)ds)P̂22ê(t)-(n-1)∫t-τtêT(s)dsP̂22ê(t-τ)+(n-1)êT(t)Q̂11ê(t)+(n-1)ê̇T(t)Q̂22ê̇(t)-(n-1)êT(t-τ)Q̂11ê(t-τ)-(n-1)ê̇T(t-τ)Q̂22ê̇(t-τ)+τ(n-1)êT(t)R̂11ê(t)+τ(n-1)ê̇T(t)R̂22ê̇(t)-(n-1)∫t-τt[êT(s),ê̇T(s)][R̂1100R̂22]2n×2n[ê(s)ê̇(s)]ds+2zTN[ê(t)-∫t-τtê̇(s)ds-ê(t-τ)]+2zTM[ê̇(t)+Kê(t)+Aê(t-τ)].
Using Lemma 1, we have
(22)V̇≤(n-1)ê̇T(t)P̂11ê(t)+(n-1)êT(t)P̂11ê̇(t)+2ê̇T(t)P̂12∫t-τtê(s)ds+2êT(t)P̂12ê(t)-2êT(t)P̂12ê(t-τ)+(n-1)êT(t)P̂22∫t-τtê(s)ds-(n-1)êT(t-τ)P̂22∫t-τtê(s)ds+(n-1)∫t-τtêT(s)dsP̂22ê(t)-(n-1)∫t-τtêT(s)dsP̂22ê(t-τ)+(n-1)êT(t)Q̂11ê(t)+(n-1)ê̇T(t)Q̂22ê̇(t)-(n-1)êT(t-τ)Q̂11ê(t-τ)+τ(n-1)êT(t)R̂11ê(t)+τ(n-1)ê̇T(t)R̂22ê̇(t)-n-1τ∫t-τtêT(s)dsR̂11∫t-τtê(s)ds-n-1τ∫t-τtê̇T(s)dsR̂22∫t-τtê̇(s)ds+2zTN[ê(t)-∫t-τtê̇(s)ds-ê(t-τ)]+2zTM[ê̇(t)+Kê(t)+Aê(t-τ)]=zTHz,
where H is shown in (13). If (13) holds, then from (22), we have V̇≤0 which means that the system (11) is asymptotically stable, for example, ei(t) tends to zero asymptotically which means the ith robot in the group tracks its desired trajectory well.Note that the LMI condition in (13) is nonconvex, and hence the following theorem is proposed to be the sufficient condition of (13).Theorem 3.
Consider the error dynamics model represented by  (11), for a given time delay  τ, given scalars  θi,  i=1,…,5 and the number of members in one group  n, if there exist matrices  P̅11,  P̅12,  P̅22,  Q̅11,  Q̅22,  R̅11,  R̅22,  X,  Y,  N̅i,i=1,…,5 with appropriate dimensions, such that the following inequality holds:
(23)[H̅11****H̅21H̅22***H̅31H̅32H̅33**H̅41H̅42H̅43H̅44*H̅51H̅52H̅53H̅54H̅55]<0,
where
(24)H̅11=P̅12+P̅12T+(n-1)Q̅11+(n-1)τR̅11+N̅1+N̅1T+θ1Y+θ1YT,H̅21=-P̅12T+N̅2-N̅1T+θ2XAT+θ2Y,H̅22=-(n-1)Q̅11-N̅2-N̅2T+θ2AXT+θ2XAT,H̅31=(n-1)P̅11+N̅3+θ1TX+θ3Y,H̅32=-N̅3+θ3AXT+θ2X,H̅33=(n-1)Q̅22+(n-1)τR̅22+θ3XT+θ3X,H̅41=(n-1)P̅22+N̅4+θ4Y,H̅42=-(n-1)P̅22-N̅4+θ4AXT,H̅43=P̅12T+θ4XT,H̅52=-N̅2T-N̅5+θ5AXT,H̅51=-N̅1T+N̅5+θ5Y,H̅44=-(n-1)R̅11τ,H̅53=-N̅3T+θ5XT,H̅54=-N̅4T,H̅55=-(n-1)R̅22τ-N̅5-N̅5T,
then system (11) is asymptotically stable with control gain K=YX-1, for example, ei(t) tends to zero asymptotically which means the ith robot in the group tracks its desired trajectory well.Proof.
In order to transform the nonconvex LMI in (13) into a solvable LMI, assume that Mi=θiM0,i=1,…,5 where θi is known and given. Define X=M0-1, Ŵ=diag(X,X,X,X,X), and Y=KX. Then by premultiplying the inequality in (13) by ŴT and postmultiplying by Ŵ, we can obtain the inequality (23).Remark 4.
Equation (23) in Theorem 3 and (13) in Theorem 2 are used to design control gain K. Equation (23) is a sufficient condition of (13) in Theorem 2 due to the simplification of Mi matrices.


## 5. Simulations

In this subsection, three robots in the group move with a constant delay at 1 second is simulated. In effect, the proposed approach is applicable for any group with multiple robotic systems (greater than three).The consensus control algorithm in (8) has been applied to adjust the whole group movement performance. The control gain has been designed based on the sufficient condition in Theorem 3 as
(25)Ki=YX-1=[5.6681005.6681],
where
(26)X=[-0.065400-0.0654],Y=[-0.370500-0.3705],i∈[1,2,3].The evolution of the group movement has been shown in Figure4. For robot 1, the desired trajectory is a linear function, xd1=60t + 250; yd1=t. For robot 2, it is xd2=t + 4; yd2=t. And for robot 3, it is xd3=t; yd3=t+12. The initial positions for three robots are arranged by every 2cm at X-axis with 0 mm at Y-axis. Robots 1 and 2 start moving at (4,0) and (6,0), respectively, while robot 3 starts at (8,0) position. As shown in Figure 4 at 1 second after the group starts moving, the initial position information of each robot at t=0 second has not been received by each other. Since the time increment is measured as 0.2 seconds, at the 0.4 seconds, three robots sufficiently started to move toward the desired trajectory from the original positions. In t=1 second, the robots have received the signals between each other, due to the communication delay. Finally, they reached the desired formation after a certain time.Figure 4
Evolution of the robot group movement with long-time communication delay(τ=1second).In Figure5, the tracking error figure shows the tracking error in X- and Y-axis versus time, respectively. Because the tracking error at X-axis corresponded to the Y-axis in term of magnitude, it is accurately sufficient to focus on the tracking error at X-axis only. From this figure, at t=0 second, the tracking errors which are measured at X-axis for robot 3 are highest, approximately 8 cm until the time past t=1 second, which is the time the robots received the signal. Since the control gain was designed well to reduce the effect caused by the delay, the tracking errors gradually converged to zero in the next 2.5 seconds.The tracking error of the robot group movement with time delay(τ=1second): (a) X-axis; (b) Y-axis.
(a)
Error inX-axis(b)
Error inY-axisTo further test the stabilization ability of the proposed control approach, the virtual leaders’ trajectories are adopted as nonlinear curve, which is different compared with those in the previous section. For robot 1, the desired trajectory isxd1=t; yd1=sin(0.5t). For robot 2, it is xd2=t; yd2=sin(0.5t)+0.5. And for robot 3, it is xd2=t; yd3=sin(0.5t)+1.The evolutions of the group movement is as shown in Figure6. From the figure, it can be seen that finally the group tracks the virtual leaders’ trajectory and maintains the desired group formation very well. The tracking errors have been represented in Figure 7 based on both X- and Y-axis. As shown in Figure 7, the tracking errors converge to zero in 2.5 seconds which shows the effectiveness of the proposed consensus control algorithm. It can make the whole networked multirobots reach consensus and maintain the desired group formation well. It also can reduce the effects caused by communication delays.Figure 6
Evolution of the group movement with nonlinear formation with time delay(τ=1second).Tracking errors of the group with time delay(τ=1second): (a) X-axis; (b) Y-axis.
(a)
Error inX-axis(b)
Error inY-axis


## 6. Experimental Results

In this section, the proposed distributed formation control strategy is applied to multiple mobile robots for experimental tests. As shown in the following subsections, there are three main parts: (i) the hardware experimental setup; (ii) the software regarding the control operation system ofP3 mobile robots; (iii) discussions on the experimental results.


### 6.1. Implementation of the Proposed Approach

Experimental tests are implemented in the Advanced Control and Mechatronics Laboratory at Dalhousie University. The multiple mobile robot test platform consists of one Pioneer 3-DX and one Pioneer 3-AT as shown in Figure8. The two robots are connected with two laptops through serial ports, and the two laptops can communicate with each other through wireless network with TCP/IP protocols. Each robot has encoder for their position and orientation information. All calculations, receiving data information from the robots and inputting control signals to the robots, are processed by the laptops.Figure 8
Pioneer 3 mobile robot test platform framework.In the experimental tests, a group of twoP3 mobile robots is required to maintain the desired group formation according to its desired trajectory. The kinematic model for each robot is as shown in (1), and this model can be linearized by setting a hand position for each robot, for example, the simplified model represented by (5). After the group starts moving, laptops attached on the robots will keep performing the following tasks once per second: (1) reading position and orientation data from robots; (2) exchanging those data with each other through the wireless network with 1 second communication delay; (3) calculating the control input values according to the distributed consensus formation control algorithm (8) and then calculating the desired linear and orientation speed for the robots according to (4); (4) converting the desired linear and orientation speed of the robots into the desired rotating speed of the left and right wheel of the robots, respectively, based on the following equation:
(27)R̃=υω,VL=ω(R̃-0.5l),VR=ω(R̃+0.5l),
where VL and VR are the left and right wheels rotating speed of the robot, l=33 cm is the length between left and right wheels of Pioneer 3-DX, and l=38 cm is that of Pioneer 3-AT, (5) sending signals to robots to set the rotating speeds as the desired values.


### 6.2. Introduction on Software

In the experimental tests, software programming is another important issue. All commands and calculations processed by the controller (laptop) attached on each robot are programmed in C++ language. For simplifying the programming task, advanced robot interface for applications (ARIAs) has been used in the work.ARIA is a programming library for C++ programmers who want to access their mobile robot platform and accessories at either a high or low level. Written in the C++ language, ARIA is client-side software for easy, high-performance access to and management of the robot, as well as to the many accessory robot sensors and effectors. ARIA includes many useful utilities for general robot programming and cross-platform (Linux and Windows) programming as well.ARIA can dynamically control the robot’s velocity, heading, relative heading, and other motion parameters either through simple low-level commands or through its high-level “actions” infrastructure. In this work, ARIA also receives odometric position estimates, sonar readings, and all other current operating data sent by the robot platform. Functions defined in ARIA have been invoked to help read position data and set robot’s velocity and orientations, which as a result saves lots of time in programming.Since the two laptops are required to communicate with each other via the wireless network with TCP/IP topology, a library named ArSocket in ARIA is then used for this issue. With the help of ArSocket, the user can directly create a server with one laptop and create a client with another. At the beginning of the group movement, the server opens a server port for the client and waits for the client to connect. The client is then connected to the server by following the server’s IP address. When the server receives the client’s call, it will send a call back to the client and start action. Then the client will start action as soon as it receives the call from the server. The server and client can interact synchronously through this way.


### 6.3. Experimental Results

The two robots in the team start moving at initial position of(0,0) for robot 1 (P3-AT) and (1050,1050) for robot 2 (P3-DX) with a unit in mm. As described above, the hand position for each robot has a distance L to the center point of the robot. In the experiment, L=30 cm for both robots, so the initial hand positions of robot 1 and robot 2 are (300,300) and (1350,1350), respectively, with a unit in mm. For the first test, the “hands” of the robot group are firstly required to track a straight line as
(28)xd(t)=60t+500,yd(t)=60t+500,
where t is the time starting from 0 second, the unit of xd and yd is mm, and (28) is according to the coordinate system Ci of the ith robot itself. The group movement trajectory is as shown in Figure 9.Experimental result of group movement tracking straight line: (a) 0 second; (b) 20 seconds; (c) 40 seconds; (d) 60 seconds.
(a)(b)(c)(d)In order to evaluate the group performance, the group movement trajectory was recorded and analyzed using MATLAB. The group trajectory is drawn by Figure10. Since the position data has been recorded once per second, the time period between each location point in the figure is 1 second. As shown in the figure,  P3-AT and P3-DX start moving from initial positions together at 0 second. The group starts getting close to the virtual leader’s trajectory or the desired trajectory in the first 8 seconds of the movement. After 8 seconds, the group gets on the desired trajectory. During this process, the desired group formation has been kept very well. Figure 11 shows that the consensus tracking errors for the virtual center position converge more and more close to 0, and the lowest values of the errors are below 2cm. This convergence property of the tracking error guarantees the good maintenance of the group formation.Figure 10
Group movement tracking straight line.Figure 11
Consensus tracking errors for the virtual position: straight line case.For the second test, the group is required to track a curve as(29)xd(t)=20t+500,yd(t)=2t2+500,
where t is the time starting from 0 second, the unit of xd and yd is mm, and (29) is according to the coordinate system Ci of the ith robot itself. The team movement with fixed group formation is as shown in Figure 12.Experimental result of group movement tracking curve: (a) 0 second; (b) 7 seconds; (c) 20 seconds; (d) 35 seconds.
(a)(b)(c)(d)For this case, the data has also been recorded and analyzed. Figure13 shows the group movement trajectory and virtual leader trajectory. As shown in the Figure, the group trajectory of each robot undulates a little bit in the first 8 seconds transition time compared with the previous test as in Figure 10. After 8 seconds, the group gets on desired trajectory and undulates a little bit more than the previous test (the straight line case). Through drawing the consensus tracking errors for virtual center positions in Figure 14, it shows that the tracking error of each robot converges in the first 20 seconds and the minimum value is below 2cm. And then after 20 seconds, it increases a little bit between 2cm and 3cm. That is because the motor speed of each robot, which is calculated and set by the controller once per second, is held for each 1 second during the movement. So the system is not “ideal time continuous.” For the curve tracking case, the virtual leader of each robot moves with an acceleration along Y-axis which is equal to 4 mm/s2. As the time goes after movement, the virtual leader’s velocity increases greatly and becomes bigger and bigger so that it becomes more and more difficult for each robot to react and match the velocity and motion of its virtual leader. This hardware limitation causes the performance of the consensus tracking errors as shown in Figure 14. If the group moves for over 200 seconds, then the speed of the virtual leader along Y-axis becomes more than 0.8 meters per second which is the maximum speed of P3-AT. This is the main difference compared with the previous test (straight line case).Figure 13
Group movement tracking curve.Figure 14
Consensus tracking errors for the virtual position: curvilinear case.From the results, the consensus-based formation control strategies described in Section4 are applied to the experimental test for P3 robot group. Due to the proper design of the control gain, the mobile robot group can track the virtual leader’s trajectory and maintain the desired group formation well.


## 6.1. Implementation of the Proposed Approach

Experimental tests are implemented in the Advanced Control and Mechatronics Laboratory at Dalhousie University. The multiple mobile robot test platform consists of one Pioneer 3-DX and one Pioneer 3-AT as shown in Figure8. The two robots are connected with two laptops through serial ports, and the two laptops can communicate with each other through wireless network with TCP/IP protocols. Each robot has encoder for their position and orientation information. All calculations, receiving data information from the robots and inputting control signals to the robots, are processed by the laptops.Figure 8
Pioneer 3 mobile robot test platform framework.In the experimental tests, a group of twoP3 mobile robots is required to maintain the desired group formation according to its desired trajectory. The kinematic model for each robot is as shown in (1), and this model can be linearized by setting a hand position for each robot, for example, the simplified model represented by (5). After the group starts moving, laptops attached on the robots will keep performing the following tasks once per second: (1) reading position and orientation data from robots; (2) exchanging those data with each other through the wireless network with 1 second communication delay; (3) calculating the control input values according to the distributed consensus formation control algorithm (8) and then calculating the desired linear and orientation speed for the robots according to (4); (4) converting the desired linear and orientation speed of the robots into the desired rotating speed of the left and right wheel of the robots, respectively, based on the following equation:
(27)R̃=υω,VL=ω(R̃-0.5l),VR=ω(R̃+0.5l),
where VL and VR are the left and right wheels rotating speed of the robot, l=33 cm is the length between left and right wheels of Pioneer 3-DX, and l=38 cm is that of Pioneer 3-AT, (5) sending signals to robots to set the rotating speeds as the desired values.


## 6.2. Introduction on Software

In the experimental tests, software programming is another important issue. All commands and calculations processed by the controller (laptop) attached on each robot are programmed in C++ language. For simplifying the programming task, advanced robot interface for applications (ARIAs) has been used in the work.ARIA is a programming library for C++ programmers who want to access their mobile robot platform and accessories at either a high or low level. Written in the C++ language, ARIA is client-side software for easy, high-performance access to and management of the robot, as well as to the many accessory robot sensors and effectors. ARIA includes many useful utilities for general robot programming and cross-platform (Linux and Windows) programming as well.ARIA can dynamically control the robot’s velocity, heading, relative heading, and other motion parameters either through simple low-level commands or through its high-level “actions” infrastructure. In this work, ARIA also receives odometric position estimates, sonar readings, and all other current operating data sent by the robot platform. Functions defined in ARIA have been invoked to help read position data and set robot’s velocity and orientations, which as a result saves lots of time in programming.Since the two laptops are required to communicate with each other via the wireless network with TCP/IP topology, a library named ArSocket in ARIA is then used for this issue. With the help of ArSocket, the user can directly create a server with one laptop and create a client with another. At the beginning of the group movement, the server opens a server port for the client and waits for the client to connect. The client is then connected to the server by following the server’s IP address. When the server receives the client’s call, it will send a call back to the client and start action. Then the client will start action as soon as it receives the call from the server. The server and client can interact synchronously through this way.


## 6.3. Experimental Results

The two robots in the team start moving at initial position of(0,0) for robot 1 (P3-AT) and (1050,1050) for robot 2 (P3-DX) with a unit in mm. As described above, the hand position for each robot has a distance L to the center point of the robot. In the experiment, L=30 cm for both robots, so the initial hand positions of robot 1 and robot 2 are (300,300) and (1350,1350), respectively, with a unit in mm. For the first test, the “hands” of the robot group are firstly required to track a straight line as
(28)xd(t)=60t+500,yd(t)=60t+500,
where t is the time starting from 0 second, the unit of xd and yd is mm, and (28) is according to the coordinate system Ci of the ith robot itself. The group movement trajectory is as shown in Figure 9.Experimental result of group movement tracking straight line: (a) 0 second; (b) 20 seconds; (c) 40 seconds; (d) 60 seconds.
(a)(b)(c)(d)In order to evaluate the group performance, the group movement trajectory was recorded and analyzed using MATLAB. The group trajectory is drawn by Figure10. Since the position data has been recorded once per second, the time period between each location point in the figure is 1 second. As shown in the figure,  P3-AT and P3-DX start moving from initial positions together at 0 second. The group starts getting close to the virtual leader’s trajectory or the desired trajectory in the first 8 seconds of the movement. After 8 seconds, the group gets on the desired trajectory. During this process, the desired group formation has been kept very well. Figure 11 shows that the consensus tracking errors for the virtual center position converge more and more close to 0, and the lowest values of the errors are below 2cm. This convergence property of the tracking error guarantees the good maintenance of the group formation.Figure 10
Group movement tracking straight line.Figure 11
Consensus tracking errors for the virtual position: straight line case.For the second test, the group is required to track a curve as(29)xd(t)=20t+500,yd(t)=2t2+500,
where t is the time starting from 0 second, the unit of xd and yd is mm, and (29) is according to the coordinate system Ci of the ith robot itself. The team movement with fixed group formation is as shown in Figure 12.Experimental result of group movement tracking curve: (a) 0 second; (b) 7 seconds; (c) 20 seconds; (d) 35 seconds.
(a)(b)(c)(d)For this case, the data has also been recorded and analyzed. Figure13 shows the group movement trajectory and virtual leader trajectory. As shown in the Figure, the group trajectory of each robot undulates a little bit in the first 8 seconds transition time compared with the previous test as in Figure 10. After 8 seconds, the group gets on desired trajectory and undulates a little bit more than the previous test (the straight line case). Through drawing the consensus tracking errors for virtual center positions in Figure 14, it shows that the tracking error of each robot converges in the first 20 seconds and the minimum value is below 2cm. And then after 20 seconds, it increases a little bit between 2cm and 3cm. That is because the motor speed of each robot, which is calculated and set by the controller once per second, is held for each 1 second during the movement. So the system is not “ideal time continuous.” For the curve tracking case, the virtual leader of each robot moves with an acceleration along Y-axis which is equal to 4 mm/s2. As the time goes after movement, the virtual leader’s velocity increases greatly and becomes bigger and bigger so that it becomes more and more difficult for each robot to react and match the velocity and motion of its virtual leader. This hardware limitation causes the performance of the consensus tracking errors as shown in Figure 14. If the group moves for over 200 seconds, then the speed of the virtual leader along Y-axis becomes more than 0.8 meters per second which is the maximum speed of P3-AT. This is the main difference compared with the previous test (straight line case).Figure 13
Group movement tracking curve.Figure 14
Consensus tracking errors for the virtual position: curvilinear case.From the results, the consensus-based formation control strategies described in Section4 are applied to the experimental test for P3 robot group. Due to the proper design of the control gain, the mobile robot group can track the virtual leader’s trajectory and maintain the desired group formation well.


## 7. Conclusions

In this work, a consensus-based tracking control strategy was proposed for the virtual leader formation control approach of multiple mobile-robot group with group communication delays. The kinematic model of P3 mobile robot has been introduced. The formation control algorithm has been applied to the linearized dynamic model of P3 mobile robot. A novel multiple Lyapunov functional candidate has been proposed to give the sufficient conditions of the control gain design as shown in theorems. The proposed consensus formation control strategy can be successfully applied to the multiple P3 mobile-robot experimental platform in the host laboratory. The results show a good group performance due to the good feasibility of the proposed approach.



---

*Source: 150250-2012-05-14.xml*