# Leader-Follower Formation Control of Wheeled Mobile Robots without Attitude Measurements
## 4 Formation Control Algorithm  
The kinematic model (1) is an underactuated nonlinear system. To overcome this problem, consider the auxiliary control input  
\[\boldsymbol{u}_{i}=\
u_{i}\mathbf{R}_{\mathrm{d}}\boldsymbol{e}_{1}=\
u_{i} \mathbf{\Theta}_{\mathrm{d}i} \tag{15}\]  
where \(\mathbf{R}_{\mathrm{d}i}=\left[\begin{array}{cc}\mathbf{\Theta}_{\mathrm{d} i}&\mathbf{S}\mathbf{\Theta}_{\mathrm{d}i}\end{array}\right]\in SO(2)\) represents the desired orientation with \(\mathbf{\Theta}_{\mathrm{d}i}=\mathrm{col}(\cos(\theta_{\mathrm{d}i}),\sin( \theta_{\mathrm{d}i}))\). Therefore, the kinematic model can be written as  
\[\dot{x}_{i} =\boldsymbol{u}_{i}+\
u_{i}(\mathbf{\Theta}_{i}-\mathbf{\Theta}_ {\mathrm{d}i}) \tag{16a}\] \[\dot{\theta}_{i} =\omega_{i}. \tag{16b}\]  
In this case, the translational subsystem given by (16a) can be analyzed as a completely actuated system perturbed by the coupling term \(\
u_{i}(\mathbf{\Theta}_{i}-\mathbf{\Theta}_{\mathrm{d}i})\) which relates the translationalsubsystem with the attitude subsystem (16b). On the other hand, given the control input \(\mathbf{u}_{i}\) the desired vector \(\mathbf{\Theta}_{\mathrm{d}i}\) and \(\
u_{i}\) can be computed as  
\[\mathbf{\Theta}_{\mathrm{d}i}=\frac{\mathbf{u}_{\mathrm{i}}}{\|\mathbf{u}_{\mathrm{i}}\|}, \quad\
u_{i}=\|\mathbf{u}_{i}\|. \tag{17}\]  
The proposed formation control strategy is based on the leader-follower approach and delayed reference signals. Contrary to the conventional distance-based leader-follower approach, where the follower robot follows the trajectory generated by the leader, in our proposed approach, the followers track the delayed desired trajectory of the leader robot. To avoid collisions, the time delay depends on the distance between the robots. The time delay becomes larger when the follower is closed to the leader and vice versa. The control objective can be stated as follows: design the control inputs \(\mathbf{u}_{i}\) and \(\omega_{i}\) such that the position and attitude tracking errors defined as  
\[\widetilde{\mathbf{x}}_{\ell} =\mathbf{x}_{\mathrm{d}}(t)-\mathbf{x}_{\ell}, \widetilde{\theta}_{\ell} =\theta_{\mathrm{d}\ell}(t)-\theta_{\ell} \tag{18a}\] \[\widetilde{\mathbf{x}}_{\mathrm{fi}} =\mathbf{x}_{\mathrm{d}}(t-\tau_{i})-\mathbf{x}_{\mathrm{fi}}, \widetilde{\theta}_{\mathrm{fi}} =\theta_{\mathrm{d}\mathrm{fi}}(t-\tau_{i})-\theta_{\mathrm{fi}} \tag{18b}\]  
converges asymptotically to zero without using attitude measurements. In (18), the subscripts \(\ell\) and \(f\) denote the leader and follower robots and \(\mathbf{x}_{\mathrm{d}}(t)\in\Re^{2}\) and \(\theta_{\mathrm{d}i}(t)\) are the desired Cartesian trajectory and desired orientation, respectively. Finally, \(\tau_{i}\) denotes the time delay (\(i=1,\ldots,n\)) which is obtained as the output of the system  
\[s_{i} =-\gamma_{i}s_{i}+a_{i}(1-\exp(b_{i}/\|\widetilde{\mathbf{p}}_{i}\|) ),\quad s_{i}(0)=s_{i0} \tag{19a}\] \[\tau_{i} =s_{i}+s_{i-1}, \tag{19b}\]  
where \(a_{i}\), \(b_{i}\) and \(\gamma_{i}\) are positive parameters and \(s_{0}=0\). For the first leader we have \(\widetilde{\mathbf{\rho}}_{1}=\mathbf{x}_{\ell}-\mathbf{x}_{\mathrm{f}}\), and for \(i>1\) we have \(\widetilde{\mathbf{\rho}}_{i}=\mathbf{x}_{\mathrm{fi}-1}-\mathbf{x}_{\mathrm{fi}}\). The second term in (19a) increases or decreases the magnitude of the time delay depending on the distance between the robots.