Turning Point and Free Segments Strategies for Navigation of Wheeled Mobile Robot

The basic idea of the developed work is to solve the problem of mobile robot navigation with obstacle avoidance and the trajectory tracking problem in simple and complex environments. The research contribution aims to develop a strategy of navigation based on the turning point and the free segments algorithms. Indeed, a turning point method is developed in order to solve the problem of navigation in a simple environment. Then, the free segments approach is applied in order to solve the problem of obstacle avoidance in a complex environment. The second part of this paper aims to solve the problem of trajectory tracking. For this reason, a sliding mode controller is proposed as a solution to control the stability of the mobile robot. Finally, some simulation results which are developed using Matlab software are given to prove the validity of the developed work.


Introduction
In the robotic field, the path planning is a very important and interested task. Since, the mobile robot should navigate and avoid the collision risk in the surrounding environment.
Many several researchers are interested to solve the problem of path planning [1], [2], [3]. In this sense, a control point approach is developed in [4] to solve the path planning problem. The basic idea of this approach is to search the optimal trajectory by determining the adequate control points in a static environment. A multi-agent strategy [5] is developed in order to solve the obstacle avoidance. The multi-agent system is composed of three essential agents which are: agent of navigation, agent of avoidance and agent of perception. This strategy simple and easy to implement but the big problem is that a conflict between agents can be generated. A B-spline approach is developed in [6] to ensure the safe path planning. The basic idea of this approach is to build the suitable path by determining the points of navigation using the B-spline method. In [7], [8], a control point searching algorithm is adopted in order to avoid the collision problem. This strategy aims to search the turning point of obstacle to facilitate the trajectory planning. This strategy is ameliorated and used in the strategy of free segments which is developed in [9]. Hence, the free segments algorithm is used for environment encumbered of obstacles.
In the other hand, the path tracking control task have occupied an important part in the robotic field [10]. This is due to the huge using of mobile robot in different areas of life like transportation, inspection, security and planetary exploration etc. This is require mobile robot to be able to track a ISSN 2775ISSN -2658 International Journal of Robotics and Control Systems Vol. 2, No. 1, 2022, pp. 172-186 173 desired trajectory stably. For this reason, many several researches are focused to solve the problem of tracking trajectory [11], [12], [13], [14]. Among these works, we cite the backstepping controller which is used as a solution to solve the problem of tracking trajectory [15], [16]. This control system is robust and easy in applications. Hence, this type of control system is adopted only for non linear system [17]. In [18], the tracking path problem is solved by using an adaptive neural network. The basic idea of this control law is to minimize the error positions. However, this control suffers from many problems such as the choosing of the appropriate network and the slow convergence for the goal [19]. A tracking method used the Proportional Integral Derive (PID) is developed in [20]. It is efficient to solve the problem of the trajectory tracking but this control system becomes instable specially when it is affected by the sensor sensitivity [21]. Other researchers are focused on the fuzzy logic controller such as [22], [23], [24]. This controller gives good tracking errors but his architecture is complex and has a slow response time. Furthermore, the sliding mode controller is adopted for tracking trajectory in [25], [26], [27] because it has good performance such fast response, good transient and stability.
In this work, the research contribution handles to solve the problem of navigation for mobile robot with obstacle avoidance. The basic idea of this contribution is inspired from the approach given by Jinpyo and Kyihwan [7]. First, the strategy presented in [7] is focused on determining the endpoint of a free segment which gives the shortest path. The aim disadvantages of this strategy that it is focused firstly on finding the shortest path without taking into consideration of the safety. Furthermore, the determining of the strategy of navigation leads an extensive and heavy computation and needs more time. In order to overcome these disadvantages, our developed algorithm aims to ensure at first the path safety by selecting the safest free segments. Then, searching the path length by selecting the endpoint of the safest free segments which gives the shortest path. By applying this algorithm, we can rapidly determined the safest and the shortest path. At least, in this research, there are two research contributions which are the turning point and the free segments algorithms. In simple environment, a turning point algorithm is developed to ensure the navigation with obstacle avoidance. The basic idea of this approach is to determinate the turning point of obstacle which gives the shortest path. Then, a dangerous circle is fixed at this point and the mobile robot turns around it in order to avoid obstacle. In the other hand, a free segments algorithm is investigated to solve the path planning problem in complex environment. This algorithm aims to search the safe and optimal path. This is achieved by selecting the safe free segment and determining the turning point of the safe free segment that gives the optimal trajectory. Furthermore, for tracking trajectory and ensuring the stability of the system, a sliding mode controller is used to control the wheeled mobile robot.
The present work is structured as follows. The model of the mobile robot khepera IV is presented in the section 2. The basic idea of the developed strategies is developed in the section 3. In the section 4, a sliding mode controller is adopted in order to solve the tracking trajectory problem. Simulation results and discussion are presented in the section 5 to show the validity of the developed strategies. In the section 6, the remainder of the developed work is presented in a small conclusion.

Khepera IV model
Khepera IV is a non-holonomic mobile robot which has two independent driving wheels. The control of the mobile robot is ensured by the acting on the wheel speeds (speed right and left). It is a good platform for simulation and testing trajectory. This type of robot is used as a platform of simulation in many several research works like [8], [9]. The schematic model of the robot Khepera IV is illustrated in the Fig. 1. The kinematic model is presented by the following system: Where V R is the robot right wheel velocity, V L is the robot left wheel velocity, dα dt is the robot angular velocity, L is the distance between the two wheels and α is the angle between the robot direction and X axis.

Strategies of Navigation
In the present section, two strategies of navigation are developed. These strategies are classified depending on the nature of the environment of navigation. For the simple environment, the turning point algorithm is adopted as a strategy of navigation and the free segments algorithm is applied only in complex environment.

Turning Point Algorithm
The basic idea of the turning point algorithm is to ensure a safe navigation when the mobile robot navigates in simple environment. Firstly, a turning point P tp is defined as the endpoint of obstacle which gives the safe shortest path [8].
When the environment of navigation contains obstacles, it is necessary to solve the problem of obstacle avoidance. In this context, the turning point algorithm should be applied in order to determinate the safe shortest trajectory for the mobile robot (see Fig. 2). First, the endpoints of each obstacle are determined. Second, it is important to select the endpoint which gives the safe optimal path. Then, a dangerous circle with radius R D is fixed at this point. The radius of this circle R D is defined as the radius of the mobile robot R r and a margin for collision avoidance noted δ (R D = R r + δ). Finally, the mobile robot turns around the tangential direction to the circle fixed at this point.
The remainder of this strategy is illustrated in the Fig. 3. The turning points are determined and circles dangerous are fixed at these points. Two paths are planned (path 1 and path 2) and the mobile robot navigates with the shortest path (path 1).  When the environment of navigation is encumbered by obstacles, a collision risque can persist between the mobile robot and obstacles even the turning point algorithm is applied. For this reason, we aim to develop a second approach which is called the free segments to solve this collision problem when the obstacles are too close and the environment of navigation is encumbered by obstacles.

Free Segments Algorithm
The present section is devoted to solve the problem of navigation when the environment of navigation is encumbered by obstacles. In order to solve the problem of trajectory planning, an algorithm based on the searching for the turning point of a free segment is developed [9]. In fact, a free segment is defined as the distance that separates two endpoints of two successive obstacles.
The remainder of the proposed algorithm is summarized in this flowchart presented in the Fig. 4. The algorithm of free segment starts by selecting the safe free segment and ignoring the danger free segment. First, a safe free segment is a segment which distance S P is larger than the robot diameter D r (S P ≥ D r ). On contrary, when the distance S P is smaller than the robot diameter D r (S P ≤ D r ), the free segment is considered as a danger segment. From the Fig. 5, the segments are selected and the distances S P 1 and S P 2 are determined as shown in the Equations (2) and (3). Second, even the safe segments are selected, we determinate the turning point P tp of the safe segment witch gives the optimal path. The optimal path is obtained by comparing all distances that separate the robot position, the endpoints of the safe segment and the goal position. Then, a dangerous circle with radius R D is fixed at the searched point. Finally, the mobile robot starts from its initial position and turns around the tangential direction of the dangerous circle until reaching the goal position.

Sliding Mode Control Approach
The present section is devoted to design a control law system for controlling the mobile robot. In this sense, the sliding mode controller is adopted to guide the robot in order to track the desired trajectory. The basic idea of the sliding mode controller is to guide the states of the controlled system to reach the designed surface (sliding surface) and keeping them there with a shifting law [28]. The choice of this control system is proved by its flexibility to solve the tracking trajectory problem for wheeled mobile robot. It is a powerful method to solve the tracking control problem [4], [6], [8]. The aim advantages of the proposed control law system that it has good robustness, low response time and high precision. For this reason, we have recourse in this work to solve the trajectory following problem by using the sliding mode controller. First, the using of this control system needs to know two essential configurations witch are the desired position and the current robot position (see Fig.  6). Second, the desired position p r =(x r , y r , α r ) is defined as the desired position to be reached and the current robot position p=(x, y, α) is defined as its real position at this moment. Then, the difference between the reference position p r and the current position p is called the tracking error position p e =(x e , y e , α e ). Finally, the expression of p e is defined in Equation (4) as follows: Fig. 6. Tracking error.
The basic idea of this control law system is to determinate the adequate control vector q = (v, w) T (v is the linear velocity of the wheeled mobile robot and w is its angular velocity). The autonomous mobile robot is controlled by right and left wheel velocities V R and V L as shown in the Equation (5). In order to analyse the stability of the control system, a Lyapunov candidate function is chosen as given in the Equation (6) [28] and the first switching function x e is chosen equal to zero to solve this problem.
The time derivative of the function V is calculated as follows: = −x e y e w − v r y e sin(arctan(v r y e )).
Based on the obtained result, we notice thatV ≤ 0 because v r y e sin(arctan(v r y e )) ≥ 0. Then, we introduce α e = − arctan(v r y e ) as a switching candidate function to ameliorate the performance of the sliding mode controller. Also, we define the switching surface vector s of the mobile robot as shown in the Equation (7) [28] and the saturation function sat(s) as given in the Equation (8) [28].
With ξ is positive constant that defines the threshold width of the saturation function.
After that, we define the switching function as a saturation function as shown in the Equation (9).
Then, the vector of the sliding surfaces is expressed as: Finally, the obtained control law is expressed as follows [8]: where γ = arctan(v r y e ); w r =V ; v r = 1; ∂γ dv r = y e 1 + (v r y e ) 2 and ∂γ dy e = v r 1 + (v r y e ) 2 .

Simulation Results and Discussion
The present section is devoted to show the effectiveness and the performance of the developed strategies. For this reason, simulation results are given in simple and complex environment. In this research, all simulation results are simulated on Matlab software.

Navigation in Simple Environment
In this case, the environment of navigation contains three static obstacles. The initial center coordinate of obstacles are presented in the Table 1. As shown in the Fig. 7, the turning point algorithm is applied and a dangerous circle is fixed in a turning point. As result, the mobile robot is able to avoid obstacle and follow the desired position (x t , y t )=(300, 300). When the position of obstacle 3 is changed (see Table 2), it is clearly that the trajectory of the mobile robot changed (see Fig. 8). Two turning points are determined and two dangerous circles are fixed in these points. This is to avoid the collision that can persist with obstacles 1 and 3. Furthermore, the robot turns around these circles until following the target configuration.    9 is presented to demonstrate that a collision problem between the robot and obstacle 2 can persist, even the turning point algorithm is applied. In this case, the initial center coordinate of obstacles are presented in the Table 3.
Based on these simulation results, it is noted that the turning point algorithm is able to solve the path planning problem only in simple environment. That's why, a free segments strategy is developed in order to solve the collision problem in simple and complex environments.   Fig. 9. Situation 3.

Navigation in Complex Environment
This section traits the problem of navigation in complex environment. The environment of navigation contains seven static obstacles which are placed as shown in the Fig. 10. It is noted that six free segments are determined. Table 4 presents the initial center coordinates of each obstacle. Fig. 11 indicates that the mobile robot is able to avoid obstacles and reach its goal position (x t , y t )=(250, 750) safely. In this situation, both the free segments and turning point algorithms are applied. All free segments are safe and dangerous circles are placed on the determined turning points. Even the target position is changed ((x t , y t )=(750, 750)), it is clearly from the Fig. 12 that five dangerous circles are fixed in the adequate turning points and the mobile robot reaches the target safely without any collision with obstacles.
When the position of obstacles is changed (see Table 5), the trajectory of the mobile robot is  modified also. It is clearly that there is appearance of dangerous segments (free segments of obstacle 1, 2 and 3) and only safe segments are tacked into consideration (see Fig. 13). Based of the presented simulation results, it is noted that the developed strategy is very reactive because the robot is able to achieve the obstacle avoidance in different situations. Furthermore, the mobile robot should track the planned path. That's why, the sliding mode controller is adopted as solution to solve the path tracking problem.

Tracking Trajectories
The present section is presented to prove the performance of the sliding mode controller. First, the control law was applied in order to track the trajectory planned by the turning point algorithm. Then, the trajectory tracking problem is processed for trajectory planned by the free segments approach. In all simulation, the initial configuration of the mobile robot is (x r ,y r ,α r )= (20, 0, Π/4). Fig. 14 shows that the mobile robot is able to track the planned path and to follow the target position without any problem and Fig. 15 indicates that all error positions tend to zero. For trajectory planned with the free segments algorithm, Fig. 16 and Fig. 17 are presented in order to show the performance of the control law system. Based on the presented results, the mobile robot is able to track the desired trajectory (see Fig. 16) and all error positions tend to zero (see Fig. 17). According to these simulations, it can be seen that the sliding mode control is able to solve the problem of trajectory tracking and shows good performances.
Compared to the work developed by Jinpyo and Kyihwan [7], it is obvious that the simulation results presented in this research give better results than the result obtained on the research developed in [7]. The aim advantages of the developed contributions that the optimal path for navigation is obtained quickly. In addition to this, the proposed algorithm is shorter than the previous algorithm because it requires the shortest spanned time regardless of any situations. Also, the developed strategies are simple and easy to apply on a real prototype.

Conclusion
In this research, two principle contributions for the mobile robot Khepera IV navigation have been developed. The first contribution witch is based on the turning point algorithm has been adopted in order to solve the problem of trajectory planning in simple environment. Hence, the second contribution has been investigated the problem of navigation in complex environment by developing a free segments algorithm. Furthermore, the problem of trajectory tracking has been tackled by using the sliding mode controller to ensure the stability of the mobile robot. Some simulation results have proved the flexibility of turning point strategy to solve the problem of navigation in simple and complex environments. According to these simulation results, the mobile robot has been reached the desired trajectory without any collision with obstacles in all situations. Theses strategies have proved its simplicity and flexibility to solve the path planning problem with obstacle avoidance. Moreover, simulation results have mentioned the good performance of the sliding mode controller. Based on these results, the mobile robot has been reached its desired trajectory with minimum errors. As a future work, it could be interesting to apply the obtained results on a real prototype Khepera IV mobile robot and study the path planning problem when the robot navigates in dynamic environments.
Author Contribution: All authors contributed equally to the main contributor to this paper. All authors read and approved the final paper.