Design of a robust tracking controller for a nonholonomic mobile robot based on sliding mode with adaptive gain

This article propounds addressing the design of a sliding mode controller with adaptive gains for trajectory tracking of unicycle mobile robots. The dynamics of this class of robots are strong, nonlinear, and subject to external disturbance. To compensate the effect of the unknown upper bounded external disturbances, a robust sliding mode controller based on an integral adaptive law is proposed. The salient feature of the developed controller resides in taking into account that the system is MIMO and the upper bound of disturbances is not priori known. Therefore, we relied on an estimation of each perturbation separately for each subsystem. Hence, the proposed controller provides a minimum acceptable errors and bounded adaptive laws with minimum of chattering problem. To complete the goal of the trajectory tracking, we apply a kinematic controller that takes into account the nonholonomic constraint of the robot. The stability and convergence properties of the proposed tracking dynamic and kinematic controllers are analytically proved using Lyapunov stability theory. Simulation results based on a comparative study show that the proposed controllers ensure better performances in terms of good robustness against disturbances, accuracy, minimum tracking errors, boundness of the adaptive gains, and minimum chattering effects.


Introduction
Control of linear systems is now a well-proficient field. The tools of linear algebra allow obtaining for these systems and control laws possessing properties of stability and optimality. 1,2 Over the last decade, a lot of research effort has been put into the design of sophisticated control strategies for strongly nonlinear systems, such as nonholonomic mobile robots. [3][4][5][6][7][8] Although this class of robotic systems presents great advantages in terms of high energy efficiency, fast and precise response flexibility, and advanced control dynamics, it is very sensitive to disturbances and uncertainties. This criteria has encouraged the researchers to focus deeply on studying the stability and trajectory tracking of the considered system. [7][8][9][10][11][12][13] In this framework, Shojaei and Sharhi 14 introduced an adaptive robust controller for nonholonomic robotic systems, where parametric and nonparametric uncertainties were taken into account. Parametric uncertainties were compensated via an adaptive controller and the nonparametric uncertainties were suppressed by a sliding mode controller. Fateh and Arab 15 treat the case, where the mobile robot contains dynamic and kinematic uncertainties. They propose as a solution a robust controller based on adaptive fuzzy estimator to compensate uncertainties. Li et al. 16 developed adaptive robust control techniques to deal with holonomic and nonholonomic constraints of mobile manipulators. Xian et al. presented a new continuous control mechanism that compensated uncertainty in a class of high-order multiple-input multiple-output (MIMO) nonlinear systems. 17 Based on this control strategy, Makkar et al. 18 propose modeling and compensation for parameterizable friction effects for a class of mechanical systems.
However, all those works mentioned previously require a prior knowledge of the upper bound of the uncertainties and perturbations. As a matter of fact, some researchers, in the last few years, have increased the challenge by trying to find the right controller for nonholonomic robots modeled with uncertainty and subjected to exogenous disturbances while estimating the upper bound. In this context and based on Xian's compensatory scheme, Sun and Wu 19 propose a tracking controller for a class of uncertainty nonholonomic mechanical systems. In addition, the issue of the upper bound-prior knowledge is relaxed using an adaptive update law via algebra processing technique. Patre 11 present an adaptive robust second order sliding mode control on a mobile robot with four mecanum wheels. An adaptive controller for the auto adjustment of switching gains was their solution to avoid the need for the prior knowledge of the upper bound. Peng et al. 20 developed a robust adaptive tracking controller for nonholonomic manipulator to deal with the unknown upper bounds of system parameters and external disturbances. Plestan et al. 21,22 proposed a robust adaptive controller based on the sliding mode. The advantage of the proposed adaptive law is that it does not require prior knowledge of the uncertainties and perturbation as well as the initial value of gain. However, it suffers from overestimation-underestimation problem as well as hard chattering phenomenon. Chen et al. 23 and Koubaa et al. 24 have proposed interesting adaptive law that depends on the sliding surface. This law takes into consideration the fact that the system is MIMO and it does not require the prior knowledge of uncertainties and perturbation as well as the initial value of the gain. Nevertheless, it suffers from a problem of overestimation of the gain and hard chattering.
It is worth saying that these works cited previously along with other works in the literature have succeeded in finding robust controllers for tracking the trajectory of nonholonomic robots and especially, in estimating the value of upper bound. Nevertheless, how to manage to estimate the appropriate value of the upper bound to have a minimal error and a smoother trajectory can be a real challenge. In this context, in the majority of these works, the proposed estimated upper bound is a scalar used for the whole system, which cannot necessarily ensure the same performance for each subsystem simultaneously.
For all these purposes, the challenging task investigated in this article resides in the design of a robust controller based on an integral adaptive law for the estimation of the unknown upper bound of each subsystem separately. The designed robust adaptive controller allows the nonholonomic robot to track the desired trajectory with a minimum error although the presence of non-negligible arbitrary bounded external disturbances under the form of exogenous signal. The stability of our controller is demonstrated through using Lyapunov approach. Moreover, to improve the performance of our nonholonomic system, a kinematic controller is used and the proof of its stability is also demonstrated within the Lyapunov theory. The advantages of the proposed dynamic controller are The knowledge of the upper bound of each disturbance is not necessary; Adaptive estimation is performed for each perturbation of each subsystem separately bounded by an unknown local upper bound; Overcoming problems of overestimation and underestimation; Reducing chattering; Simplicity in design; Good control performance: guaranteed stability, accuracy of tracking control and robustness against disturbances; Another advantage of this article is that the constraint of the nonholonomic, the saturations of the motors, the mechanical, kinematic and dynamic/ electrical model of robot are all detailed and taken into consideration during the development of our controllers.
The subsequent sections of this article are given in the following order. The second section is devoted to presenting the kinematic model of the nonholonomic mobile robot. In the third section, the dynamic model of the robot using Euler Lagrange method is detailed, while the fourth section is devoted to the electric and mechanic models of the motors. The fifth section is dedicated to the proposed controllers: the first part of the section is consecrated to the kinematic controller and the proof of its stability within Lyapunov function. The second part is devoted to highlight the proposed dynamic controller. Then the stability of the dynamic controller is proved using a Lyapunov candidate. The block diagram of the proposed control architecture is also presented in the same section. At the end of this section, a comparative study with two existing dynamic controllers based sliding mode with adaptive gain is suggested. Simulation results, based on a comparative study, are depicted in the next section to corroborate the merit and the high performances of the designed architecture. This section has shown that the proposed controllers ensure that the real robot trajectory of the closed-loop system asymptotically tracks the desired trajectory with the minimum of tracking error. According to the comparative results, the proposed dynamic controller presents better performances in terms of good robustness against disturbances, accuracy, minimum tracking errors, boundness of the adaptive gains and minimum chattering effects. Finally, we close up this set-up by a conclusion.

Kinematic model
A nonholonomic unicycle wheeled robot moving under the assumptions that the wheel rolls without slipping and without pivoting on the ground are shown in Figure 1.
Its kinematic model has the following expression We can define the state vector q ¼ ðx; y; qÞ t , where ðx; yÞ is the position of the robot and q is the orientation. v and ! represent, respectively, the linear and angular velocity of the robot. The nonholonomic constraint can be shown clearly in the previous equation since The linear and angular velocities of the robot can be expressed as a function of the linear and angular speeds of the left wheel ðv L ; _ ' L Þ and the right wheel Thus, the kinematic model according to the angular velocities of the left and right drive wheels is written in the following form

Dynamic model
The general dynamic model of a nonholonomic mobile robot can be expressed by equation (6) where MðqÞ 2 R nÂn : inertia matrix (positive/definite matrix), Cðq; _ qÞ 2 R nÂn : vector of centripetal and Coriolis forces, Fð _ qÞ: matrix of friction, GðqÞ 2 R n : vector of gravity forces, t d : vector of bounded unknown disturbances, BðqÞ 2 R nÂm : input transformation, t: input torque, J T ðqÞ 2 R mÂn : matrix related with nonholonomic constraint, and l 2 R m : constraint multiplier. Assumption 1. We assume that the mobile robot moves in the horizontal plane and we ignore also the friction forces, thus, Fð _ qÞ ¼ GðqÞ ¼ 0.
Regarding the previous assumption, the dynamic motion of the robot could be expressed concisely as follows (equation (7)) In view of equation (7), it is clear that for nonholonomic robots, the constraints of motion are introduced using the multiplier constraint l. Those parameters are not constant and depend on the generalized coordinates and the time factor. Hence, the use of the transformation's coordinate is an interesting solution to reduce these multipliers. For that, we opt for the Lagrange dynamic model. Lagrange's equation is used systematically to derive the equations of the movement considering the kinetics and the potential energies of the considered system. It is expressed by the following equation (8) d dt where L ¼ T À V : Lagrange function, with T is the kinetic energy of the system and V is the potential energy, or V ¼ 0. The kinetic energy of the mobile robot is equal to the sum of the kinetic energy of the robot without wheels and the kinetic energies of the wheels and actuators. Thus, the kinetic energy of the mobile robot is equal to The kinetic energy of the right and left wheels where m c is the mass of the mobile robot without wheels and actuators (DC motors), m w is the mass of each wheel (with actuator), I c is the moment of inertia of the mobile robot about the vertical axis through the center of mass, I w is the moment of inertia of each driving wheel with a motor about the wheel axis, and I m is the moment of inertia of each wheel with a motor about the wheel diameter.
With refer to the previous equations, the matrices MðqÞ, Cðq; _ qÞ, and BðqÞ are expressed as follows where m ¼ m c þ 2m w is the total mass of the robot, I ¼ m c d 2 þ 2m w L 2 þ I c þ 2I m is the total equivalent inertia, and d is the distance between the center mass of the robot and the middle between the right and the left wheels. In the following part, we will focus on eliminating the constraint term J T ðqÞl since the Lagrange multipliers l i are unknown. As a matter of fact, we will investigate the kinematic model (equation (5)), which can be expressed by It can be easily verified that the transformation matrix S(q) is in the null space of the constraint matrix J ðqÞ, where Deriving equation (12) with respect to time yields Substituting equations (12) and (14) into the dynamic motion of the robot expressed by equation (7) leads to Premultiplying s T ðqÞ on both sides of equation (15), the following transformed system can be received where

Electrical and mechanical actuator's model
In applications, where the power involved is less than few kilowatts, the permanent magnet DC motor is widely used.
In addition, small engines are very often equipped with a reducing device. It is a question of adapting the motor to the requirements of an application. In fact, the optimum operating speeds of an electric motor, such as a DC motor, are generally higher than the desired speeds. This is particularly true in the case of applications with very low speed and, in particular, for position control. An engine with the speed reducer (ratio N) can be represented by Figure 2.
The armature equation is defined by where E ¼ K'ð _ qÞ, U: supply voltage, i: current in the motor armature, R: resistance of the armature, L: inductance of the armature, K: motor f.c.m constant, _ q: rotation speed of the MCC. ¼ K ' i, C ¼ K m i, and C is the motor torque The mechanic equation is where C r : resistance torque, J m : moment of inertia of the MCC, and f: viscous friction of the MCC. The output torque applied to the wheel after an operation of the speed reducer is given by C mr ¼ NC.

Mobile robot control
In this section, we consider the nonholonomic mobile robot schematized by Figure 1 and modeled by kinematic, dynamic, electrical, and mechanical models represented, respectively, by equations (5) and (16) to (18). With such kind of robots, the tracking control issue could be classified in two axes: kinematic or dynamic control. However, it is worth noting that the perplexity in dealing with this category of robots consists on the nonintegrability of nonholonomic constraints. Therefore, the topic of tracking control's mobile robot is difficult to manage. For that, we propose to design a control architecture that takes into account both models simultaneously. The control architecture is schematized by Figure 3. The kinematic controller represents the high level control of the mobile robot. Its role is to generate the vector of the set speeds used as inputs for the dynamic controller. The objective of the kinematic controller proposed in this article is to elaborate a control law ðv c; w c Þ, which makes it possible to cancel the posture of error. These produced speeds are used later as inputs for the dynamic control unit, which represents the law level of the control. This proposed unit is addressed to generate the appropriate torque applied to the robot's wheels to guide it to follow the desired trajectory.
For the remainder of this section, we dedicate the first part for a detailed study of the applied kinematic controller accompanied by a proof of stability, while the second part is dedicated to detail the proposed dynamic controller with an interesting proof of stability according to Lyapunov theory.
Kinematic controller. The control law at the kinematic level is based on the stable tracking method, which is frequently used in the literature to cope with the tracking problem. The relationship between the measured variables ðx; y; qÞ and the variables describing the desired trajectory ðx r ; y r ; q r Þ represents the state feedback applied on the real system. The main goal of the controller is to establish a control law ðv c ; ! c Þ, which aims to decrease the convergence posture of error towards 0. We define the errors between the actual and the desired positions and orientations byq where q d ¼

5.
Thusq We also define the tracking error vector q r in the reference linked to the robot q r ¼ e r1 ; e r2 ; e r3 ½ T  Te is the matrix of transformation of the coordinates' fixed reference in the reference linked to the robot. The entries ðv c ; ! c Þ, which could cancel the errors e r1 , e r2 , and e r3 , are given 26 by the following relation where k 1 , k 2 , and k 3 are positive parameters.

Stability proof of the kinematic controller
From (equation (1)), it is clear that the model of the considered robot can be seen as being periodic (with period 2p) with respect to its orientation q. This property of the system should be also reflected in the control law as well as the stability analysis. Hence, we can say that it is clear that the problem of tracking is periodic with respect to the orientation. This can be observed from the kinematic model using an arbitrary control input and an arbitrary initial condition, resulting in a certain robot trajectory. If the same control input is applied to the robot and the initial condition only differs from the previous one by a multiple of 2p, the same response is obtained for xðtÞ and yðtÞ, whereas qðtÞ differs from the previous solution for the same multiple of 2p.
The periodic nature should also be reflected in the control law used for the tracking. This should mean that one searches for a control law that is periodic with respect to the error in the orientation e r3 (the period is 2p) and ensures the convergence of the posture error to one of the points 0 0 2kp ½ (which is the case of the used control law in equation (22)).
Obviously, the function that is used in this article for the convergence analysis should also be periodic in e r3 . To sum up, when controlling a unicycle robot, our goal is to bring the position error to zero, whereas the orientation error should converge to any multiples of 2p. To do this, a Lyapunov function that is periodic with respect to e r3 (with a natural period of 2p) will be used. Hence, the general form of the Lyapunov function must have the following form where f ðe r3 Þ is a periodic function (the period is 2p) that is positive everywhere, except at multiples of 2p, where it becomes 0. For that, we choose It is obvious that f ðe r3 Þ is a periodic function (the period is 2p) that is positive everywhere, except at multiples of 2p, where it becomes 0. We have And now, using the following trigonometric relation: sin 2 a ¼ 1Àcos 2a 2 , and replacing the angle a with e r3 2 , we have Hence, the considered positive Lyapunov candidate function is The development of the derivative of the Lyapunov function V 1 leads to Taking into account the expressions of the following matrixes Thus, the tracking error can be expressed as follows This leads to Hence, the time derivative _ V 1 is negative as long as k 1 , k 2 , and k 3 are positive gains.
The asymptotic stability of the equilibrium points e k ¼ 0 0 2kp ½ t k 2 Z will be shown in the following Theorem.
Theorem 1. If the control law (22) is applied to the system (29), where k 1 , k 2 , and k 3 are positive constants. Then, the closed-loop system is asymptotically stable and the tracking errors converge to zero with respect to the following assumptions: Linear and angular velocities of the reference robot and their first derivatives are assumed to be bounded . The linear and angular velocities of the reference robot do not converge to zero simultaneously.
Proof. Using the proposed control law (22) and the dynamical equations of errors (29), the equations of the closedloop system are as follows To prove the stability of the equilibrium points, we will use the following theorem of Barbalat's lemma. 27 Barbalat's Lemma. Let f ðtÞ a differentiable function of t.
Corollary of Barbalat's Lemma 28 . Let f ðtÞ satisfies the following conditions: f ðtÞ admits a lower bound; _ f ðtÞ is defined seminegative; _ f ðtÞ is uniformly continuous over time.
Remark. The easiest way to check the uniform continuity of a function f ðtÞ on 0 1 ½ Þis to see if its second derivate € f is bounded.
Since V 1 is positive definite Lyapunov function, it is lower bounded by zero. On the other hand, from equation (30), we have _ V 1 is defined seminegative. Also, according to equation (24), boundedness of V 1 leads to the boundness of the variables e r1 and e r2 . In addition, using equations (30) and (31), the second derivative of V 1 is as follows Since the constants k 1 , k 2 , and k 3 are bounded and considering the assumptions cited in Theorem 1 above, € V 1 is bounded too, which means that _ V 1 is uniformly continuous. Therefore, according to the Barbalat's Lemma Corollary, _ V 1 converges to zero, as time approaches to infinity. Consequently, e r1 and sin e r3 will converge to zero too.
Until now, only the convergence of e r1 and sin e r3 to 0 is established. To show that e r2 will also converge to zero, let us consider the following dynamical equation of e r1 in the system (31), which is rewritten here Hence, the second time derivate of e r2 is Similar to the previous discussion, it can be easily shown that the second derivative of e r1 is bounded and again according to the Barbalat's Lemma, _ e r1 converges to zero, as t tends infinity. Therefore, equation (33) leads to the following equation since it is proved previously that lim t!1 sin e r3 ¼ lim t!1 e r1 ¼ 0, thus, lim t!1 _ e r1 ¼ 0 leads to lim t!1 e r2 ! d þ k 2 e 2 r2 v d ¼ 0. Similarly, consider the dynamical equation of e r3 in system (31), which is rewritten here Similarly, it is easy to show that the second derivative of e r3 is bounded too and according to the Barbalat's Lemma _ e r3 converges to zero, as t tends to infinity, or since lim t!1 sin e r3 ¼ 0. Thus, according to equation (36) According to assumptions of Theorem 1 and equations (35) and (37), e r2 converges to zero. This means that the asymptotic stability of the equilibrium points 0 0 2kp ½ t k 2 Z in system (31) is guaranteed.

Proposed dynamic control
In this section, we propose a robust adaptive controller as a dynamic controller. The challenge in this part is to take into consideration the external disturbances that appear in the dynamic equation of Lagrange. Indeed, our purpose is to find the adequate controller so that the robot could follow the desired trajectory while resisting against the exogenous disturbances that could deform the path. With reference to the reduced dynamic equation (16), we have Finding the suitable control law uðtÞ, the reel trajectory of the robot hðtÞ tracks the desired trajectory h d ðtÞ and returns to minimizing the error position To achieve the desired control objective, we found it more interesting to work with the following filtered tracking error (equation (40)), which is defined to facilitate the subsequent design and analysis e 2 ðtÞ ¼ _ e 1 ðtÞ þ le 1 ðtÞ ð 40Þ The dynamic equation (30) can be described in function of the errors e 1 ðtÞ and e 2 ðtÞ as follows Assumption 2. Each element of the perturbation vector t is bounded by an unknown positive constant noted the unknown local upper bound: ½ and, where, the norm of the vector t d is bounded by the minimum between G i , which represents the unknown global upper bound: t d k k l min fG g, where G is a diagonal matrix: G ¼ diag G i ½ and l min fG g is the smallest eigenvalue of the corresponding matrix (i.e. the minimum between G i ).

Remark 1.
The only requirement imposed here is that the perturbation term has to be bounded by an unknown upper bound. The knowledge of this upper bound will be overcome by an adaptive law.
Hence, we propose the following sliding mode-based controller where k d e 2 is a torque controller (k d > 0). G T signðe 2 Þ is a robust term to estimate the local unknown upper bound corresponding to the disturbance of each subsystem and suppress the effect of these perturbations.
The proposed adaptation law iŝ where the speed and resolution of the adaptation of the functionĜ ðtÞ is affected by the gain s, which is a positive constant, and the term Àa e 2 k kĜ is a nonlinear damping term to guarantee that _ G ðtÞ tends 0 as long as t tends 1, e ð2;iÞ represents the i'th element of the error vector e 2 and

Stability proof of the proposed dynamic controller
To prove the stability of the proposed robust adaptive controller, the following properties will be used. Property 2. The matrix _ M À 2C is skew symmetric: Let us consider the positive Lyapunov-like function (equation (46)) based on quadratic form, 27 which is frequently used for the proof of uniform ultimate bound of the errors' norms (in this article, the error norms are e 2 k k andG ) as well as in Barbalat's Lemma theorem proof for stability analysis. We note also that the quadratic Lyapunov function is used for disturbed systems, where the evolution of perturbations parameters is not known, which is the case of the disturbances considered in this article whereG ¼ G ÀĜ is the estimation error and trð:Þ is the trace operator.
In the Lyapunov function above, the trace operator is applied since the Lyapunov function should be a scalar.
And since (G TG ) is a matrix, we have used trace(.) In this section, we aim to prove that e 2 k k andG is uniformly ultimate bounded (UUB) _ V 2 converges to zero when t tends infinity, and thus, e 2 k k is globally asymptotically stable.

The derivate of this function is
With reference to Property 2, we have Using the fact that x T y ¼ trðyx T Þ, we deduce Using the Cauchy-Schwartz inequality, this yields e T 2 ðt d À G T signðe 2 ÞÞ e 2 k kðÀl min fG g þ t d k kÞ This is guaranteed negative since t d k k l min fG g Consequently, with l min ðk d Þ is the smallest eigenvalue of gain matrix k d _ V 2 is guaranteed negative as long as the following inequalities are satisfied Uniform ultimate boundness e 2 k k andG : At this stage, to show that e 2 k k andG are UUB, the following theorems will be used.
Rayleigh-Ritz theorem. Let A be a real symmetric positive definite matrix. Let l min (respectively l max ) the minimum (respectively maximum) value of the eigenvalues of A. Thus, 8 x 2 R n , we have l min ðAÞ x k k 2 x t Ax l max ðAÞ x k k 2 Uniform ultimate bound theorem. Let V be a continuous Lyapunov function in time such that where h is a positive constant, g 1 and g 2 are strictly increasing continuous functions and g 3 is a nondecreasing contin- Thus, using the Lyapunov theorem extension, e 2 k k and G are UUB. 29 Stability of e 2 k k: To study the stability of the error e 2 , we will apply the corollary of Barbalat's Lemma defined and exploited in the previous section of "Stability proof of the kinematic controller." We have V 2 is a definite positive Lyapunov function, therefore, it admits zero as the lower bound. On the other hand, the parameter a is very small and very close to zero, thus, the second term of equation (54) vanishes, which ensures that _ V 2 is negative semidefined: _ V 2 Àl min ðk d Þ e 2 k k 2 . We have, also, e 2 andG are bounded, thus,Ĝ and G are bounded. Hence, _ V 2 is bounded since the perturbation t d is also bounded. Thus, since _ V 2 is bounded, and using the equation (47) Therefore, e 2 is globally asymptotically stable. This completes the proof.
Remark 3. The chattering effect from the discontinuity of the sgn() function used in the control law (equation (44)) must be considered in some practical applications. This problem is common in sliding mode control schemes and is usually solved by approximating the discontinuous function sgn() using a continuous function, such as the saturation function. Effects of such approximation on the stability results are analyzed and presented by Benosman and Lum. 30

Comparison with existing robust adaptive laws
To elaborate the advantages of the proposed adaptive law (equation (45)), let us consider two adaptive laws that do not require a priori knowledge of the upper bound of disturbances.
The first adaptive law proposed by Plestan et al. 21,22 _ KðtÞ ¼ k sðtÞ k ksignð sðtÞ k kÀ eÞ where k, e, and b are positive parameters and the sliding surface _ s ¼ t d ðtÞ þ u, where t d ðtÞ is the bounded perturbation and u is the robust control input u ¼ ÀK signðsðx; tÞÞ.
From this equation, we can notice that when s k k ! e, the switching gain K increases monotonously even though the error trajectories come close to s k k ¼ e. This gives rise to the problem of overestimation of the gain. Now, if s k k < e, the switching gain K decreases monotonically. Thus, at one point, K would become insufficient and the error will increase again, which creates a problem of underestimation. In addition, the value of e has a great influence on the value of the gain. On one hand, if the value of e is low, it can force K to increase for a longer time if s k k ! e, causing an overestimation problem. On the other hand, if the value of e is high, it can force K to decrease for a longer time when s k k < e causing the problem of underestimation.
The second adaptive law proposed by Chen et al. 23 and Koubaa et al. 24 This adaptive law is interesting since it takes into consideration the fact that the system is MIMO. And so, it allows to estimate each upper bound of each subsystem separately. The dynamics of the gain depends directly on the tracking error (sliding variable). It is clear that the value _ KðtÞ is always positive, which leads to a monotonous increase in the value of gain, and therefore, an overestimation of the gain seen that _ KðtÞ ¼ 0 only if sðtÞ ¼ 0. This gives rise to chattering problems. In addition, this methodology is applicable only to the ideal sliding mode, the objective s ¼ 0 being accessible. In case of real sliding mode, this last objective is not accessible, which implies that the gain K always increases. Moreover, this approach is not directly applicable but requires modifications for its application to real systems. Thus, the function of sign is replaced by a function of saturation affected by the width of the boundary layer that is introduced adjacent to the surface s ¼ 0. This affects the accuracy and robustness of the system and the control gain is always overestimated. In addition, no method of adjusting the boundary layer width is proposed.
If we now return to the equation (45) of the adaptive law proposed in this article, it is clear that The knowledge of the upper bound of each disturbance is not necessary. Adaptive estimation is performed for each perturbation of each subsystem bounded by an unknown local upper bound, which provides improved stability and accuracy in the control of finite-time trajectory tracking and robustness against external disturbances.
The proposed adaptive law allows its gains to increase to compensate the disturbance effect if s k k increases and moves away from 0 neighborhood and decrease if s k k decreases to converge to 0 (overcoming the overestimate problem) and to remain unchanged when they are sufficient to keep the error at 0 neighborhood (overcoming the underestimate problem). And since it overcomes the problems of overestimation and underestimation, it leads to better results and performance while reducing the effect of "chattering." As we mentioned previously, the second term of the adaptive law proposed Àa e 2 k kĜ is a damping term. It makes it possible to force the parameters estimated to be bounded. In fact, if G k k is not too large, then the proposed adaptive law is very similar to equation (58). Otherwise, if G k k is too large, then the second term of the proposed law will play the role of damping so that the estimated parameters remain bounded. In other words, this term represents the stabilizing part of the proposed adaptive law.

Simulation results
In this section, simulations are conducted to verify the effectiveness of the proposed control architecture (shown in Figure 3) and its robustness against external disturbances. For that, consider a nonholonomic unicycle mobile robot navigating in 2D space (see Figure 1) and subjected to an external disturbance. We stress that the parameters involved in the sliding mode type controller with an adaptive gain as well as kinematic controller are determined using trial and error method to achieve a satisfactory performance. To put our approach in value, we propose in this section, simulation results, for different scenarios, based on a comparison with the methods, 21--24 already detailed in the previous section. The model of the robot is given by the equations (5) and (16) to (18). The system parameters values are set as follows: The width of the driving wheels is 2L ¼ 0:3 m. The radius of the driving wheels is r ¼ 0:1 m. The total masse of the robot is m ¼ 5 kg. The moment inertia is The simulation results of two scenarios are shown as follows.

Scenario 1: circular reference trajectory
In this scenario, simulations are conducted for a circular reference trajectory with center ð0; 0Þ and radius 1. External disturbances are considered and have the following expression Note that each dynamic controller is accompanied by a kinematic controller (equation (22)). The kinematic controller gains are set to k 1 ¼ 1, k 2 ¼ 2, and k 3 ¼ 3. Figures 4 to 8 show the results of tracking the circular reference trajectory that results from the use of kinematic controller and dynamic controller proposed by Plestan et al. 21,22 based on the adaptive law of the equation (57).
The dynamic controller parameters are selected by trial and error method as b ¼ 0:1, e ¼ 0:5, l ¼ 2, and k d ¼ 3.
According to the Figures 4 and 5, this command ensures a good reference trajectory tracking with orientation tracking errors that do not deprive the 0:25 and position tracking errors that do not deprive the 0:04. Tracking errors converge to zero when t ¼ 27:5 s. Figure 6 shows that when the right wheel undergoes the disturbance at the instant t ¼ 10 s, the adaptive law applied increases to compensate the effect of errors caused by perturbations until t ¼ 11:26 s (peak of the adaptive law). From this instant up to t ¼ 11:62 s, the adaptive law decreases since e 2 k k < e (Figure 8). From this moment up to t ¼ 14:06 s, we notice that the sliding surface oscillates: once it is greater than e and once lower (Figure 8), which causes oscillations of the adaptive law until t ¼ 14:06 s, where e 2 k k ¼ e, and therefore, the adaptive law is constant (seen that _ K ¼ 0) with a value of 0:1 ¼ b. In addition, chattering in the control torque wheels in Figure 7 is clear and not negligible. In practice, this chattering damages the robot's engines. Figures 9 to 13 show the results of tracking the circular reference path that results from the use of kinematic controller (equation (22)) and dynamic controller by Chen et al. 23 and Koubaa et al. 24 based on the adaptive law of equation (58). The dynamic controller parameters are selected by trial and error method as l ¼ 2, r ¼ 1, and k d ¼ 6.
According to Figures 9 and 10, this command ensures a good trajectory tracking with low tracking errors. Orientation tracking errors do not deprive the 0:125 and position tracking errors do not deprive the 0:03. Tracking errors converge to zero when t ¼ 26 s. Figure 11 shows that when perturbation is triggered to the right wheel at instant t ¼ 10 s, the control applied to this wheel starts increasing  at the same time and quickly to compensate errors due to the disturbance applied. The parameters estimated by the adaptive law remain stable and each upper bound converges to a specific value ( Figure 11) as soon as e 2 k k converges to 0 ( Figure 13).
Moreover, the torque applied to the right wheel presents some chattering in Figure 12. Figures 14 to 18 show the results of tracking the circular reference trajectory that results from using the kinematic controller (equation (22)) and our proposed dynamic controller (equations (44) and (45)). The values of the proposed dynamic controller are set s ¼ 4, a ¼ 0:4, k d ¼ 17, and l ¼ 7.  As shown in Figures 14 and 15, the proposed approach ensures a very good tracking trajectory with low tracking errors: orientation tracking errors that do not deprive the 0:02 and position tracking errors do not deprive the 0:0005. Tracking errors converge to zero when t ¼ 26 s. Figure 16 shows that when the right wheel undergoes the external disturbance at t ¼ 10 s, thus, the control applied to this wheel increases at the same time and quickly to compensate errors due to the disturbance applied. It is clear that the parameters estimated by the adaptive law remain stable and that each upper bound converges toward a specific value guaranteeing a small tracking error despite the local external disturbances. As soon as e 2;i i ¼ 1; 2 f gconverges to 0 (Figure 18), the corresponding parameters of the adaptive lawsĜ i ðtÞ remain constant. In addition, the torque controllers in Figure 17 are very smooth. External disturbances are supposed lasting all the time In this scenario also, we will compare the results of the trajectory tracking of the proposed dynamic controller with approaches proposed by Plestan et al. 21,22 and by Chen et al. 23 and Koubaa et al. 24 The kinematic controller gains applied for the different approaches are k 1 ¼ 6, k 2 ¼ 150, and k 3 ¼ 65. Figures 19 to 22 show the results of tracking the lemniscate reference trajectory that results from the use of kinematic controller (equation (22)) and dynamic controller by Plestan et al. 21,22 based on the adaptive law of equation (57). The dynamic controller parameters are set as b ¼ 0:1, e ¼ 0:5, l ¼ 2, and k d ¼ 3.
Based on the results in Figures 19 and 20, the tracking trajectory is acceptable with position errors less than 0:2 and orientation errors less than 1:6. Figure 21 shows that the adaptive law applied to the two wheels is always increasing even if the norm of the sliding surface tends 0 ( Figure 23). This causes a problem of overestimation of the gains and therefore a problem of "chattering," which is  (57)) by Plestan et al. 21,22 clearly manifested in Figure 22, where the torque of the two wheels is not smooth and oscillate all the time. In practice, this chattering damages the robot's engines. Figures 24 to 28 show the results of tracking the lemniscates reference path that results from the use of kinematic controller (equation (22)) and dynamic controller by Chen et al. 23 and Koubaa et al. 24 based on the adaptive law of equation (58). The dynamic controller parameters are l ¼ 3, r ¼ 2, and k d ¼ 4.
From the results given in Figures 24 and 25, the tracking trajectory is acceptable with position errors less than 0:2 and orientation errors of less than 1:6. Figure 26 shows that

Torque[Nm]
Torque applied to the right wheel Torque applied to the left wheel  the adaptive laws applied to the right and left wheels are always increasing even if the norm of the sliding surface tends to 0 ( Figure 28). This causes a problem of overestimation of disturbance and therefore a problem of "chattering," which is clearly shown in Figure 27, where the torques of the two wheels are not smooth and oscillate all the time. In practice, this chattering damages the robot's engines. Figures 29 to 33 show the results of tracking the lemniscate reference trajectory that results using the kinematic controller (equation (22)) and our proposed dynamic controller (equations (44) and (45)). The values of the proposed dynamic controller are set: s ¼ 3, a ¼ 0:2, k d ¼ 9, and l ¼ 8.
The results shown in Figures 29 and 30 show clearly that the controllers proposed have the ability to stabilize the global nonholonomic mobile robot system and provide a good tracking performance with position errors less than 0:05 and orientation errors of less than 1.
The results prove the effectiveness of the proposed controller, with robust and adaptive terms, where each upper bound local is only sensitive to its local disturbance. It is clear that the estimated parameters remain stable and that each upper bound converges toward a specific value (Figure 31) while the sliding surface converges to 0 (Figure 33), guaranteeing a small tracking error despite the local external disturbance.
Moreover, the torques' oscillations ( Figure 33) are negligible comparing to the results obtained in Figures 27  and 24.

Discussion
To conclude, after the follow-up results of the trajectories tracking illustrated in scenarios 1 and 2, we can extract the following remarks.
The dynamic controller proposed in this article is more efficient than the other controllers since it ensures: Good robustness against external disturbances; Stability of the nonholonomic robotic system studied; Good accuracy of trajectory tracking; Speed of convergence of the sliding surface toward 0 without chattering; Minimum of trajectory tracking errors; Minimum of chattering in the produced torques; Values of estimated gains bounded and therefore no problems of over / underestimation of parameters.

Conclusion
In this article, we have studied and solved the problem of trajectory tracking of nonholonomic mobile robot subjected to external disturbances. To study the subject from all sides, we have firstly detailed the kinematic and dynamic models of nonholonomic robot as well as the electric and dynamic models of the actuators. Then, we proposed a kinematic controller to elaborate a control law, which makes it possible to cancel the posture of error. A sliding mode-based adaptive gain controller is then designed, stabilizing each of the subsystems, to compensate the negative influence of the external disturbances. The interesting idea in this article is that we have proposed an adaptive integral law for the estimation of the unknown upper bound of each subsystem separately using the diagonal matrix. Based on Lyapunov theory, stability of the two proposed controllers was proved. The performance of the control architecture based on kinematic and dynamic controllers is illustrated on two simulation examples based on a comparative study with two other dynamic controllersbased sliding mode with adaptive law. The results of simulations have shown that the proposed approach is more efficient since it allows having lower tracking errors, good robustness and accuracy, and also, it overcomes the problems of under/over estimation. In addition, chattering is negligible compared to other methods.

Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.

Funding
The author(s) received no financial support for the research, authorship, and/or publication of this article.