## 4 Motion Control System
### Pose Controller  
In order to take into account the actual pose of the robot in the control system, let us introduce the pose error vector \({}^{O}\mathbf{q}_{e}\) in the fixed co-ordinate system \(\{O\}\) in the following form:  
\[{}^{O}\mathbf{q}_{e}= \begin{bmatrix}{}^{O}\mathbf{e}_{x}\\ {}^{O}\mathbf{e}_{y}\\ {}^{O}\mathbf{e}_{\theta}\end{bmatrix} ={}^{O}\mathbf{q}_{d}-{}^{O}\mathbf{q}= \begin{bmatrix} {}^{O}\mathbf{x}_{Rd}-{}^{O}\mathbf{x}_{R}\\ {}^{O}\mathbf{y}_{Rd}-{}^{O}\mathbf{y}_{R}\\ {}^{O}\mathbf{\varphi}_{0 zd}-{}^{O}\mathbf{\varphi}_{0z}\end{bmatrix} . \tag{33}\]  
Since it is convenient to control the robot motion in a moving co-ordinate system \(\{R\}\), let us transform the pose error vector \({}^{O}\mathbf{q}_{e}\) to such a system using the following relationship:  
\[{}^{R}\mathbf{q}_{e}= \begin{bmatrix}{}^{R}\mathbf{e}_{x}\\ {}^{R}\mathbf{e}_{y}\\ {}^{R}\mathbf{e}_{\theta}\end{bmatrix} = \begin{bmatrix}{}^{\cos}({}^{O}\mathbf{\varphi} _{0z})&{}^{\sin}({}^{O}\mathbf{\varphi}_{0z})&0\\ {}^{-\sin}({}^{O}\mathbf{\varphi}_{0z})&{}^{\cos}({}^{O}\mathbf{\varphi}_{0z})&0\\ 0&0&1\end{bmatrix} {}^{O}\mathbf{q}_{e}. \tag{34}\]  
Figure 5 illustrates the following quantities for the robot: the desired path resulting from the desired motion trajectory \({}^{O}\mathbf{q}_{d}(t)\), the desired pose vector \({}^{O}\mathbf{q}_{d}= \begin{bmatrix}{}^{O}\mathbf{x}_{Rd},&{}^{O}\mathbf{y}_{Rd},&{}^{O} \mathbf{\varphi}_{0 zd}\end{bmatrix} ^{T}\) and the desired velocity vector \({}^{O}\mathbf{v}_{Rd}\) at the analyzed moment of time, and the actual pose vector  
Figure 4: Schematic diagram of the control system with wheels’ controller only. \({}^{O}\mathbf{q}=\left[{}^{O}\!x_{R},\ ^{O}\!y_{R},\ ^{O}\!\varphi_{02}\right]^{T}\) and the actual velocity vector \({}^{O}\!v_{R}\), as well as the vectors of pose errors \({}^{O}\mathbf{q}_{e}=\left[{}^{O}\!e_{x},\ ^{O}\!e_{y^{\prime}},\ ^{O}\!e_{\varphi}\right]^{T}\) and \({}^{R}\mathbf{q}_{e}=\left[{}^{R}\!e_{x},\ ^{R}\!e_{y^{\prime}},\ ^{R}\!e_{\varphi}\right]^{T}\), expressed in the fixed co-ordinate system \(\{O\}\) and in the robot co-ordinate system \(\{R\}\), respectively. Additionally, one can calculate the distance of the characteristic point \(R\) of the robot from its actual to the desired position:  
\[{}^{O}\!e_{d}={}^{R}\!e_{d}=\sqrt{\left({}^{O}\!e_{x}\right)^{2}+\left({}^{O} \!e_{y}\right)^{2}}=\sqrt{\left({}^{R}\!e_{x}\right)^{2}+\left({}^{R}\!e_{x} \right)^{2}}. \tag{35}\]  
In this case, the trajectory tracking control problem is to determine the control vector \(\mathbf{u}_{s}\), such that \({}^{O}\!q(t)\rightarrow{}^{O}\!\mathbf{q}_{d}(t)\) for \(t\rightarrow\infty\). Figure 6 shows a schematic diagram of the proposed control system with a pose controller, which also includes the wheel's controller. In the analyzed case, the pose controller generates a control vector \(\mathbf{u}_{s}\) for the lower layer of the control system, i.e., for the wheels' controller, for which this vector is an input vector, and, so, equivalent to the vector of the desired generalized velocities \(\mathbf{v}_{d}\), and its output vector is the control vector \(\mathbf{u}\) for the robot's drive units. In this case, the desired wheel spin angular velocities \(\mathbf{\omega}_{d}\) are calculated by the wheels' controller based on the control vector \(\mathbf{u}_{s}\). Various solutions are used as a pose controller. A comparative analysis of selected solutions of this type was the subject of the article by [PERSON] et al., 2016 [29]. Newer solutions are proposed, among others, in the works of [PERSON] and [PERSON], 2023 [30], [PERSON] and [PERSON], 2023 [14], [PERSON] et al., 2023, [31] and [PERSON] et al., 2024, [32]. Figure 5: Illustration of pose errors of the robot. Figure 6: Schematic diagram of control system with wheels’ and pose controllers. In this paper, the pose controller is used in the following form:  
\[\mathbf{u}_{s}= \begin{bmatrix}v_{s}\\ \omega_{s}\end{bmatrix} =