## 2 Materials and Methods
### Design of Tracking Differentiators
#### 2.3.4 Some Aspects of Designing Paths and Polygons
Let us introduce the following notations: \(\rho>0\) is the distance (with a small margin) from the center of mass to each corner point of the platform; \(\alpha<\pi/2\) is the value of the angle between the center line of the platform and its diagonals; \((z_{11}(t);z_{12}(t))\) is the current coordinates of the center of mass of the platform; and \((\bar{z}_{11,j}(t);\bar{z}_{12,j}(t))\) is the current coordinates of the corner points of the platform, \(j=\overline{1,4}\). Recall that in System (1), \(\theta\) is the angle between the \(Ox\) axis and the center line of the platform, which coincides with the direction of the velocity vector, \(\theta=\mathrm{arc}g(\dot{y}_{12}/\dot{y}_{11})\) (3). First, the waypoints of the mobile robot (38) are planned on the polygon. The primary reference influences (39) are entered into the input of the tracking differentiator (41) with the output variables \(z_{11}(t),z_{12}(t)\), which simulate the position of the platform's center of mass in the stationary Cartesian coordinate system. The formulas for computing the current coordinates of the platform corner points are as follows  
\[\left\{ \begin{array}{l}\bar{z}_{11,1}(t)=z_{11}(t)+\rho\cos(\overline{\theta }(t)+\alpha),\\ \bar{z}_{12,1}(t)=z_{12}(t)+\rho\sin(\overline{\theta}(t)+\alpha);\end{array}  \right.\left\{ \begin{array}{l}\bar{z}_{11,2}(t)=z_{11}(t)+\rho\cos( \overline{\theta}(t)-\alpha),\\ \bar{z}_{12,2}(t)=z_{12}(t)+\rho\sin(\overline{\theta}(t)-\alpha);\end{array} \right. \tag{42}\] \[\left\{ \begin{array}{l}\bar{z}_{11,3}(t)=z_{11}(t)+\rho\cos( \overline{\theta}(t)+\alpha+\pi),\\ \bar{z}_{12,3}(t)=z_{12}(t)+\rho\sin(\overline{\theta}(t)+\alpha+\pi);\end{array}  \right.\left\{ \begin{array}{l}\bar{z}_{11,4}(t)=z_{11}(t)+\rho\cos( \overline{\theta}(t)-\alpha-\pi),\\ \bar{z}_{12,4}(t)=z_{12}(t)+\rho\sin(\overline{\theta}(t)-\alpha-\pi);\end{array} \right.\] \[\left. \begin{array}{l}\bar{\theta}(t)=\mathrm{arc}g(z_{22}(t)/ z_{21}(t))\end{array} \right.\]  
and are correct at \(0\leq\overline{\theta}\leq\pi/2\). Technically, at other directions of the velocity vector, we should change the signs \(\pm\) in Equation (42) and use additional logic. Let us not complicate the algorithm and track the direction of motion of the platform. When changing the quadrant in which the angle \(\overline{\theta}\) is located, the angular points on the right side \(\bar{z}_{12}(t)\), \(\bar{z}_{13}(t)\) will represent the path of the points on the left side \(\bar{z}_{11}(t),\bar{z}_{14}(t)\) and conversely. Thus, curves \((z_{11}(t),z_{12}(t))\) and (42) shown on the same plot will indicate the dimensional footprint of the wheeled platform, which is required. Such representations are a visual and convenient tool for polygon design, object placement, and trajectory planning. The developed algorithms complex is a convenient tool for mobile robot motion planning and polygon design. Figure 1 shows a flowchart of the robot motion planning process on a polygon with stationary obstacles. This process includes the following:  
1. Designing a base set of 3D points (38) for a specific workspace considering obstacles, robot velocity and turning radius constraints, route length, etc. ;
2. Computing a primitive non-smooth trajectory (39) over a reference set of 3D points (38);
3. Smoothing of the primitive trajectory using a tracking differentiator. This process is a numerical solution of differential Equation (32), i.e., calculation of the sigmoid and integration operations;
4. Dimension trajectory simulation and safe corridor visualization (42). Appendix A presents a structural diagram created by simulating the algorithms developed in the MATLAB Sumulink software environment. The main interface of Simulink is a graphical block diagraming tool and a customizable set of block libraries.