## 4 Motion Controller
### Practical Stabilization Controller  
The control aim is to design a feedback to ensure that \(\lim_{t\to\infty}\hat{x}_{e}(t)=e\). For this purpose, we determine the dynamics of \(\hat{x}_{e}\):  
\[\hat{x}_{e}=X_{1,3}(\hat{x}_{e})\text{Ad}_{f}^{X}\Big{(}\hat{C}(\alpha, \varepsilon)\hat{u}-A_{e}(\alpha,\varepsilon)\hat{e}-\text{Ad}_{x_{e}^{-1}}^{X }v_{r}\Big{)}, \tag{11}\]where \(\hat{C}(\alpha,\varepsilon):=[C-A_{\alpha}(\alpha,\varepsilon)]\), \(A_{\alpha}(\alpha,\varepsilon)=X_{1,3}^{-1}(f)\frac{\partial f}{\partial\alpha}\), \(A_{\alpha}(\alpha,\varepsilon)=X_{1,3}^{-1}(f)\frac{\partial f}{\partial\varepsilon}\), \(f\equiv f(\alpha,\varepsilon)\). As stated in the section on notation, \(X_{1,3}\) is a matrix composed of _vf_\(X_{1}\), \(X_{2}\), and \(X_{3}\) from (1). In addition, \(X_{1,3}^{-1}\) is the inverse of the matrix \(X_{1,3}\equiv X_{1,3}(\hat{x}_{\varepsilon})\). The adjoin operator \(\mathrm{Ad}_{f}^{X}\) is calculated as a combination of operations with the matrix \(X_{1,3}\) as in \(X_{1,3}\mathrm{Ad}_{f}^{X}=\mathrm{Ad}_{f}X_{1,3}\); the adjoin operator \(\mathrm{Ad}_{f}\) acting on matrix \(X_{1,3}\) was introduced earlier. The second adjoin operator \(\mathrm{Ad}_{x_{\varepsilon}^{-1}}^{X}\) is calculated similarly, that is, \(X_{1,3}\mathrm{Ad}_{x_{\varepsilon}^{-1}}^{X}=\mathrm{Ad}_{x_{\varepsilon}^{ -1}}X_{1,3}\). The element \(x_{\varepsilon}^{-1}\) is the inverse of \(x_{\varepsilon}\) given by (6). In addition, here, we introduce the substitution of the input \(u_{3}\) with a time derivative of the variable \(\alpha\), which defines the dynamics of changes in \(f(\alpha,\varepsilon)\). So, the input is \(\hat{u}=[u_{1}\;u_{2}\;u_{3}]^{T}=[u_{1}\;u_{2}\;\hat{a}]^{T}\in\hat{\mathcal{ U}}\subseteq\mathbb{R}^{3}\). Thus, it is obvious that \(u_{1}\) and \(u_{2}\) are the same as in (1). In (11), there is also an additional control input \(v_{r}=[v_{r1}\;v_{r2}\;v_{r3}]^{T}\in\mathcal{V}_{r}\subseteq\mathbb{R}^{3}\), which is a reference input bounded with \(x_{r}\) (6) by the reference dynamics  
\[\hat{x}_{r}=X_{1,3}(x_{r})v_{r}, \tag{12}\]  
which is equivalent to (3).  
Taking into account that the operator \(X_{1,3}(\hat{x}_{\varepsilon})\mathrm{Ad}_{f}^{X}\) is globally invertible and that \(\hat{C}(\alpha,\varepsilon)\) is invertible for all \(\alpha\in\mathbb{S}^{1}\) due to the properties of the transverse function, we can easily decouple the dynamics (11). As a result, we can propose the following control law:  
\[\hat{u}:=\hat{C}^{-1}(\alpha,\varepsilon)\left(\mathrm{Ad}_{f-1}^{X}X_{1,3}^{ -1}(\hat{x}_{\varepsilon})K\hat{x}_{\varepsilon}+A_{\epsilon}(\alpha, \varepsilon)\dot{\varepsilon}\right), \tag{13}\]  
where \(K\in\mathbb{R}^{3\times 3}\) is a stable Hurwitz matrix. Substitution of (13) to system (11) yields a linear system \(\hat{x}_{\varepsilon}=K\hat{x}_{\varepsilon}\). This controller provides the exponential stability of \(\hat{x}_{\varepsilon}\) and practical stability at the same time of \(x_{\varepsilon}\). This, in turn, leads to the state \(x\) converging to the vicinity of the reference state \(x_{r}\), ensuring that the robot approximately follows the reference trajectory in practice. The properties of the controller given by (13) are discussed in detail in [27].