1 Introduction

Trajectory tracking control of nonholonomic wheeled mobile robots (NWMRs) has attracted much attention in past decades due to their wide use in various applications [1]. In addition, they pose a challenge to control practitioners since the mechanism of NWMRs is characterized by nonholonomic constraints and the inherent nonlinearity limits the effectiveness of linear controllers [2].

Achieving a more robust and faster trajectory tracking performance is a challenging task due to the system nonlinearities, model uncertainties and disturbances, and many efforts have been devoted to this research field [3,4,5,6,7]. Fast response and strong robustness against system uncertainties and disturbances are crucial objectives in tracking control tasks which are also the key features of sliding mode control (SMC) techniques [8, 9]. Although many studies on applying SMC techniques for tracking control of the NWMR have been published, it is worth paying attention to the question of how to utilize more advanced SMC to achieve better control performance. The work in [10] proposed an SMC law for trajectory tracking of an NWMR using computed torque technique and representing the posture in polar coordinate, which is subjected to constraints on the heading angle and desired velocities. This was further extended in [11], which loosened the constraint of the former study in regard to heading angles and desired velocities for the mobile robot by designing three separate controllers under three operating conditions. However, there is an inherent drawback of the control input singularity around the origin in both aforementioned papers.

Meanwhile, attempts have been made to apply SMC law in Cartesian coordinates [12,13,14,15,16,17,18]. Among those studies, cascaded control systems, namely inner-outer loop control structures [13,14,15], are adopted. The inner loop controller is targeted at velocity following control for the NWMR while the outer loop focuses on designing a model-free kinematic controller. According to the posture tracking errors, the outer loop controller generates corresponding velocity commands to the inner loop which guarantees actual velocities to converge to the velocity commands. The capability for the NWMR to achieve the desired performance is built upon the assumption of perfect velocity tracking [19] which, however, may not hold in practice depending on the accuracy of the inner-loop control. In [13], a super-twisting SMC method is developed with a proportional-derivative (PD) controller which increases the robustness by mitigating the influence of neglected dynamics, but singularity issue also arises based on the designed sliding surface. With a similar PD controller, the work [14] proposed an adaptive fuzzy SMC method that reduces the system chattering by replacing the adaptive fuzzy logic with the traditional discontinuous portion in SMC. By combining an event-triggered structure with a robust SMC, the control input singularity was avoided in [15].

Note that most of the aforementioned papers only guarantee the asymptotic stability of the mobile robot system which means that they may achieve convergence in infinite settling time and a fast convergence rate may not be accomplished. Finite-time tracking control of nonholonomic mobile robots quickly became an emerging topic [20,21,22]. In [21], a cascaded control system is formed by splitting the error dynamics of the mobile robot into two subsystems. Based on the controller developed, a finite-time convergence is guaranteed but only when the velocities and their derivatives are within a limited range. Additional modeling parameters are considered in the work [22] to improve the control accuracy. Likewise, two subsystems are formed with two adaptive sliding mode controllers to strengthen the robustness. However, the control system only guarantees that the tracking errors can converge to a region instead of zero and the desired angular velocity cannot reach zero, which means that a straight-path following task is not achievable. In addition, both studies [21, 22] only illustrated simulation results and thus the practical effectiveness of their controllers is still questionable.

Motivated by [15, 22, 23], we proposed an AFNTSMDC method in this paper, whose main contribution is to provide a unified control scheme compared to the classic cascaded control structure. Thus, the assumption of perfect velocity tracking is not needed. This also simplifies the design process as there is no need to design a kinematic controller and a dynamic velocity controller separately. This also leads to a reduction in the number of tuning parameters and tuning processes. In addition, the AFNTSMDC method guarantees finite-time convergence of the tracking error towards zero. It is also more robust against model uncertainties and external disturbances. By properly designing the tracking-error function, an alternative solution to eliminating the control input singularity is also proposed.

The remaining part of the paper is organized as follows. The plant model of the NWMR system consisting of parametric uncertainties and external disturbances is formulated in Sect. 2. Section 3 describes the AFNTSMDC design method, the stability analysis and parameters selection are also elaborated. Section 4 presents the experimental performance of the developed controller on the NWMR platform in comparison with other existing methods. The conclusion is drawn in Sect. 5.

The following notations are used in paper: for \(\Psi \in {\mathbb {R}} ^{f}\), sgn(\(\Psi \)) denotes \( \big [\text {sign}(\psi _1), \ldots , \text {sign}(\psi _f) \big ]^T\); sig(\(\Psi \)) represents \( \big [\vert \psi _1 \vert \text {sign}(\psi _1), \ldots , \vert \psi _f \vert \text {sign}(\psi _f) \big ]^T\), and diag([\(\Psi \)]) denotes the diagonal matrix with diagonal elements of \( \psi _1 , \ldots , \psi _f\). For \(\Psi \in {\mathbb {R}} ^{f \times q}\), \(\lfloor \Psi \rfloor \) denotes the element-wise absolute value of matrix \(\Psi \).

Fig. 1
figure 1

Top view of a nonholonomic wheeled mobile robot

2 Problem formulation

In this section, the dynamics and kinematics of NWMRs are discussed. A schematic top view is shown in Fig. 1, where the mass center of the mobile robot is denoted by \(O_m\) and the distance from \(O_m\) to the middle of the two front driving wheels \(O_l\) is denoted as h. Thus, \(\{O_g X_g Y_g\}\) is the reference coordinate system, whereas \(\{O_l X_l Y_l\}\) is the coordinate system fixed to the mobile robot. The position of the robot is completely specified by the vector \(p=[x_g, \ y_g, \ \phi _g]^T\). Then, a dynamic model for the NWMR can be described as [22]

$$\begin{aligned} {\bar{M}}(p)\ddot{p} +{ {\bar{V}}(p, {\dot{p}}){\dot{p}}} + \tau _d = {\bar{B}}(p)\tau - A^{T}(p) \lambda \end{aligned}$$
(1)

where \({\bar{M}}(p) \in {\mathbb {R}}^{ {3 \times 3} } \) is a positive symmetric definite inertia matrix; \(\tau _d \in {\mathbb {R}}^{ {2}}\) denotes the lumped components including surface friction, external disturbances, and unmodeled dynamics; \(\tau \in {\mathbb {R}}^{ {2} }\) is the input vector. \({{\bar{V}}} (p, {\dot{p}}) \in {\mathbb {R}}^{ {3 \times 3}}\) is the centripetal and coriolis matrix; \(A^{T}(p) \in {\mathbb {R}}^{ {3 \times 1} } \) is the matrix associated with constraints, and \(\lambda \in {\mathbb {R}}\) is the vector of Lagrange multipliers. The matrices \({{\bar{M}}}(p)\), \(A^T(p)\), \({{\bar{B}}}(p)\), \(\bar{V}(p,{\dot{p}})\) , \(\tau \), \(\tau _{d}\) and \(\lambda \) are given as follows:

$$\begin{aligned}&{{\bar{M}}}(p) = \begin{bmatrix} m &{} 0 &{} {{\bar{m}}_1}\\ 0 &{} m &{} {-{\bar{m}}_2}\\ {{\bar{m}}_1} &{} {-{\bar{m}}_2} &{} I\\ \end{bmatrix}, \ A^T(p) = \begin{bmatrix} -\text {sin}(\phi _g) \\ \text {cos}(\phi _g) \\ 0 \end{bmatrix} \nonumber \\&{{\bar{B}}}(p) \!=\! \frac{1}{r} \begin{bmatrix} \text {cos}(\phi _g) &{} \text {cos}(\phi _g)\\ \text {sin}(\phi _g) &{} \text {sin}(\phi _g)\\ b &{} -b \end{bmatrix}, \ {{{\bar{V}}}(p,{\dot{p}}) \!\!=\!\!\begin{bmatrix} 0 &{} 0 &{} {\bar{m}}_2 {\dot{\phi }}_g\\ 0 &{} 0 &{} {\bar{m}}_1 {\dot{\phi }}_g\\ 0 &{} 0 &{} 0 \end{bmatrix}} \nonumber \\&\lambda = -m\big (\dot{x}_g \text {cos}(\phi _g)+\dot{y}_g \text {sin}(\phi _g)\big ){{{\dot{\phi }}}_g}, \nonumber \\&\tau = \begin{bmatrix} \tau _1 \\ \tau _2 \end{bmatrix}, \tau _d = \begin{bmatrix} \tau _{d1} \\ \tau _{d2} \end{bmatrix} \nonumber \\&{{\bar{m}}_1 = m h \text {sin}(\phi _g)}, \ {{\bar{m}}_2 = mh\text {cos}(\phi _g)} \end{aligned}$$
(2)

where m is the total mass of the NWMR including load uncertainty; I is the moment of inertia of the mobile robot; \(\tau _1\) and \(\tau _2\) indicate the torques generated by the right and left wheel; \(\tau _{d1}\) and \(\tau _{d2}\) denote the external disturbances.

The nonholonomic kinematic constraints are described by

$$\begin{aligned} A(p){\dot{p}} = 0. \end{aligned}$$
(3)

The kinematic model for the NWMR can be described as

$$\begin{aligned} {\dot{p}} = S(p)z \end{aligned}$$
(4)

where

$$\begin{aligned} S(p) = \begin{bmatrix} \text {cos}(\phi _g) &{} 0\\ \text {sin}(\phi _g) &{} 0\\ 0 &{} 1\\ \end{bmatrix}, \ z = \begin{bmatrix} v\\ \omega \\ \end{bmatrix} \end{aligned}$$
(5)

with v and \(\omega \) denote the forward velocity and angular velocity, respectively. From (4), it follows that

$$\begin{aligned} \ddot{p} = S(p){\dot{z}} + {\dot{S}}(p)z. \end{aligned}$$
(6)

Substituting (6) into (1) yields

$$\begin{aligned}&{{\bar{M}}}(p) \big (S(p){\dot{z}} + {\dot{S}}(p)z\big ) + {{\bar{V}}}(p, {\dot{p}}) S(p)z + \tau _d \nonumber \\&\quad = {{\bar{B}}}(p)\tau - A^{T}(p) \lambda . \end{aligned}$$
(7)

Multiplied (7) by \(S^T(p)\) on the left, the system dynamics (1) can be rewritten as

$$\begin{aligned} M{\dot{z}}&= B\tau + d \end{aligned}$$
(8)

where

$$\begin{aligned}&M = \begin{bmatrix} m &{} 0\\ 0 &{} I\\ \end{bmatrix}, B = \frac{1}{r} \begin{bmatrix} 1 &{} 1\\ b &{} -b\\ \end{bmatrix}, d = \begin{bmatrix} d_1\\ d_2\\ \end{bmatrix}\nonumber \\&=-S^T(p)\tau _d. \end{aligned}$$
(9)

In addition, the following parametric uncertainties are considered:

$$\begin{aligned}&M = M_0 + \Delta M \end{aligned}$$
(10)

with

$$\begin{aligned} M_0 = \begin{bmatrix} m_0 &{} 0\\ 0 &{} I_0\\ \end{bmatrix}, \ \Delta M = \begin{bmatrix} \Delta m &{} 0\\ 0 &{} \Delta I\\ \end{bmatrix} \end{aligned}$$

where \(m_0\) and \(I_0\) denote the nominal model parameters and \(\Delta m\) and \(\Delta I\) denote the corresponding uncertainties, respectively.

Combining (10) and (9), we can obtain the dynamic model for the NWMR as follows:

$$\begin{aligned} M_0{\dot{z}} = B\tau - \delta \end{aligned}$$
(11)

where \(\delta = [\delta _1, \ \delta _2]^T = \Delta M {\dot{z}} + d\) represents the reformatted uncertainty to system (9).

Assumption 1

In the following, the lumped uncertainty \(\delta \) is assumed to be bounded by

$$\begin{aligned} \vert m_0^{-1} \delta _1 \vert&< c_1 + c_3 \vert v \vert \end{aligned}$$
(12)
$$\begin{aligned} \vert I_0^{-1}\delta _2 \vert&< c_2 + c_4 \vert \omega \vert \end{aligned}$$
(13)

where \(c_i \ (i=1,2,3,4)\) are unknown but bounded positive numbers. The terms \(c_1\) and \(c_3\) denote the upper bound of the external disturbance and surface friction. Meanwhile, \(c_2\) and \(c_4\) denote the upper bound of the dynamic impact caused by modeling imprecision.

In the sequel, the control design for the AFNTSMDC will be constructed according to the kinematic model in (4) and dynamic model in (11) formulated for the NWMR.

3 Control design

In this section, the AFNTSMDC design method will be presented such that the NWMR can track the desired trajectory command accurately in the presence of system uncertainties and external disturbances in a finite time. To achieve this goal, we will first define a tracking-error function. Then, a fast nonsingular terminal sliding surface with an adaptive reaching law will be developed, based on which the finite-time convergence is achieved, the singularity issue is resolved, and the unified control scheme is developed. Thus, the AFNTSMDC law is constructed with both the velocity and position as feedback signals and the motor torques as the control input.

3.1 Construction of the AFNTSMDC

First, define a tracking error vector [19] for the NWMR as

$$\begin{aligned} p_e = \begin{bmatrix} x_e\\ y_e\\ \phi _e\\ \end{bmatrix} = \begin{bmatrix} \text {cos}(\phi _g) &{} \text {sin}(\phi _g) &{}0\\ -\text {sin}(\phi _g) &{} \text {cos}(\phi _g) &{} 0\\ 0 &{} 0 &{} 1\\ \end{bmatrix} (p_r - p) \end{aligned}$$
(14)

where \(p_r=[x_r,\ y_r,\ \phi _r]^T\) is the desired trajectory posture and its kinematics can be modeled as

$$\begin{aligned} \dot{p}_r = S(p_r)z_r \end{aligned}$$
(15)

where \(z_r = [v_r, \ \omega _r] ^T\) is the desired velocity, \(v_r\) denotes the desired forward velocity, and \(\omega _r\) denotes the desired angular velocity which can be calculated by

$$\begin{aligned} v_r&= \sqrt{{\dot{x}}_r^2+{\dot{y}}_r^2}\end{aligned}$$
(16)
$$\begin{aligned} \omega _r&= {\dot{\phi }}_r= \frac{{\dot{x}}_r\ddot{y}_r-\ddot{x}_r{\dot{y}}_r}{{\dot{x}}_r^2+{\dot{y}}_r^2} . \end{aligned}$$
(17)

Combining (14) and the kinematic model described in (4), one can obtain the error model for the trajectory tracking control as

$$\begin{aligned} \dot{p}_e = F + Gz \end{aligned}$$
(18)

in which

$$\begin{aligned} F = \begin{bmatrix} v_r\text {cos}(\phi _e)\\ v_r\text {sin}(\phi _e)\\ w_r\\ \end{bmatrix}, \ G = \begin{bmatrix} -1 &{} y_e\\ 0 &{} -x_e\\ 0 &{} -1\\ \end{bmatrix}. \end{aligned}$$
(19)

Differentiating (14), we have

$$\begin{aligned} \ddot{p}_e = {\dot{F}} + {\dot{G}}z + G{\dot{z}}. \end{aligned}$$
(20)

Combining (11) with (20), we obtain

$$\begin{aligned} \ddot{p}_e = {\dot{F}} + {\dot{G}}z + GM_0^{-1}(B\tau -\delta ). \end{aligned}$$
(21)

Second, we shall introduce a new tracking-error function

$$\begin{aligned} \xi = \begin{bmatrix} \xi _1\\ \xi _2\\ \end{bmatrix} = \begin{bmatrix} x_e\\ \phi _e + \frac{\rho }{ \vert x_e \vert +\rho } \text {tan}^{-1}y_e\\ \end{bmatrix} \end{aligned}$$
(22)

where \( 0< \rho < 1\) is the control parameter to be tuned. Note that for \( 0< \rho < 1\) and any \(x_e \in {\mathbb {R}}\), the expression \(\frac{\rho }{\vert x_e \vert +\rho } \in (0,1]\), which can be regarded as a weighting parameter to adjust the convergence rate of \(y_e\) and \(\phi _e\). It will be shown later that once \(\xi \) converges to zero, the tracking error vector \(p_e\) will converge to zero accordingly. Hence, our control objective is now converted to enabling the finite-time convergence of \(\xi \) through the proposed method.

Taking the first-order derivative of the tracking-error function (22) yields

$$\begin{aligned} {\dot{\xi }} = H\dot{p}_e \end{aligned}$$
(23)

with

$$\begin{aligned} H = \begin{bmatrix} 1 &{} 0 &{} 0\\ - \rho ( \vert x_e \vert +\rho )^{-2}\text {sgn}(x_e)\text {tan}^{-1}y_e &{} \frac{\rho }{( \vert x_e \vert +\rho )(1+y_e^2)} &{} 1 \\ \end{bmatrix}. \nonumber \\ \end{aligned}$$
(24)

Based on (23), we can obtain

$$\begin{aligned} \ddot{\xi } = {\dot{H}}\dot{p}_e+H\ddot{p}_e. \end{aligned}$$
(25)

Substituting (21) into (25) yields the tracking-error dynamic equation as follows:

$$\begin{aligned} \ddot{\xi } = {\dot{H}}\dot{p}_e+H\big ({\dot{F}}+{\dot{G}}z+GM_0^{-1}(B\tau -\delta )\big ). \end{aligned}$$
(26)

Furthermore, we define a sliding surface s as

$$\begin{aligned} s = {\dot{\xi }} + \alpha \xi + \beta \text {sig}(\xi )^{\gamma } \end{aligned}$$
(27)

where \(\alpha = \text {diag}([\alpha _1, \ \alpha _2])> 0, \beta = \text {diag}([\beta _1, \ \beta _2])> 0\), and \(1< \gamma < 2\). It has been proved in Appendix B that when the sliding variable s reaches to zero, for any initial values of \(\xi \) and \({\dot{\xi }}\), the tracking-error function \(\xi \) can converge to zero in a finite time \(t_\xi \) bounded by

$$\begin{aligned} t_\xi \le \text {max} \{ \eta _1^{-1}\vert \xi _1(0) \vert ^\frac{1}{2}, \eta _2^{-1}\vert \xi _2(0) \vert ^\frac{1}{2}\} \end{aligned}$$
(28)

with \(\eta = [\eta _1, \eta _2]^T = \alpha \lfloor \xi \rfloor + \beta \lfloor \xi \rfloor ^{\gamma }\). Meanwhile, taking derivative of the sliding surface s, one has

$$\begin{aligned} {\dot{s}} = \ddot{\xi } + \alpha {\dot{\xi }} + \beta \gamma \lfloor \xi \rfloor ^{\gamma -1}{\dot{\xi }}. \end{aligned}$$
(29)

Substitute (26) into (29), we obtain

$$\begin{aligned} {\dot{s}}&= {\dot{H}}\dot{p}_e+H\big ({\dot{F}}+{\dot{G}}z+GM_0^{-1}(B\tau -\delta )\big )\nonumber \\&\quad +\alpha {\dot{\xi }}+\beta \gamma \lfloor \xi \rfloor ^{\gamma -1}{\dot{\xi }}. \end{aligned}$$
(30)

Last, the AFNTSMDC law will be constructed based on the tracking-error function and sliding surface proposed above. Let \(\delta = 0\) and replace \(\tau \) with \(\tau _{eq}\). Then, solving (30) for \({\dot{s}} = 0\) leads to

$$\begin{aligned} \tau _{eq}= & {} -(HGM_0^{-1}B)^{-1}\big ({\dot{H}}\dot{p}_e+H({\dot{F}}+{\dot{G}}z)+\alpha {\dot{\xi }}\nonumber \\&+\beta \gamma \lfloor \xi \rfloor ^{\gamma -1}{\dot{\xi }}\big ). \end{aligned}$$
(31)

Furthermore, a reaching control input \(\tau _{r}\) is designed as

$$\begin{aligned} \tau _{r}= & {} -(HGM_0^{-1}B)^{-1}\Big (K_1s+K_2\text {sig}(s)^{\mu }\Big )\nonumber \\&\quad - B^{-1}M_0L{\hat{C}} \end{aligned}$$
(32)

with

$$\begin{aligned} L&= \text {diag} ([\text {sgn}(s_1), \ \text {sgn}(s_2)]) \end{aligned}$$
(33)
$$\begin{aligned} C&= [ \hat{c_1}+\hat{c_3} \vert v \vert , \ \hat{c_2}+\hat{c_4} \vert \omega \vert ]^T \end{aligned}$$
(34)
$$\begin{aligned} K_1&= \text {diag} ([k_1,\ k_2]) \end{aligned}$$
(35)
$$\begin{aligned} K_2&= \text {diag} ([k_3,\ k_4]) \end{aligned}$$
(36)

where \(k_i\) \((i =1,2,3,4)\) are positive control parameters, \(0< \mu < 1 \); and the adaption gain \(\hat{c_i}\) \((i=1,2,3,4)\) is updated by the following adaptive law:

$$\begin{aligned}&\dot{\hat{c_1}} = \zeta _1 \vert s_1 \vert , \ \dot{\hat{c_2}} = \zeta _2 \vert s_2 \vert \end{aligned}$$
(37)
$$\begin{aligned}&\dot{\hat{c_3}} = \zeta _3 \vert v \vert \vert s_1 \vert , \ \dot{\hat{c_4}} = \zeta _4 \vert \omega \vert \vert s_2 \vert \end{aligned}$$
(38)

with \(\zeta _i \ge 0\), \(\hat{c_i}(0) \ge 0 \) (\(i = 1, 2, 3,4\)) are control parameters to be designed. Thus, the complete form of the AFNTSMDC law can be obtained as

$$\begin{aligned} \tau = \tau _{eq} + \tau _{r} \end{aligned}$$
(39)

where \(\tau _{eq}\) and \(\tau _{r}\) are given in (31) and (32), respectively.

3.2 Stability analysis

The result for the proposed AFNTSMDC law is summarized in the following lemma and stability analysis is provided.

Lemma 1

Given the NWMR system in (4) and (11), and the control law (39), \({\hat{c}}_i\) has an upper bound and there exists a positive value \(c_i\) in (12) such that \(\hat{c_i} \le c_i \ (i = 1,2,3,4)\) always holds.

Proof

Supposing the sliding surfaces \(s_1\) and \(s_2\) have not arrived at zero and \({\hat{c}}_i\) is increasing and there exists time instances \(t_1\) and \(t_2\) such that:

$$\begin{aligned}&{\hat{c}}_1(t_1) + {\hat{c}}_3(t_1) \vert v \vert > \vert m_0^{-1} \delta _1 + k_1 s_1 + k_3 \text {sig}(s_1)^{\mu }\vert \end{aligned}$$
(40)
$$\begin{aligned}&{\hat{c}}_2(t_2) + {\hat{c}}_4(t_2) \vert \omega \vert > \vert I_0^{-1} \delta _2 + k_2 s_2 + k_4 \text {sig}(s_2)^{\mu }\vert . \end{aligned}$$
(41)

Based on (12), when \(t_3 = \text {max} \{ t_1, \ t_2\}\), \({\hat{c}}_i\) will be large enough to make the sliding surfaces \(s_1\) and \(s_2\) reach to zero in a finite time \(t_s\). Then, the value of \({\hat{c}}_i(t)\) will hold at \({\hat{c}}_i(t_3 + t_s)\) finally.

Under Assumption 1 and the continuity property of \({\hat{c}}_i\), it is clear that \(t_3 + t_s\) is finite and for all t, \({\hat{c}}_i(t)\) has an upper bound. Therefore, there exists such a positive value \(c_i\) in (12) satisfying \({\hat{c}}_i \le c_i\).

This completes the proof of Lemma1. \(\square \)

Lemma 2

Consider the NWMR system in (4) and (11), then under the AFNTSMDC law (39) the tracking error vector \(p_e\) converges to zero in a finite time.

Proof

Firstly, by substituting the control law (39) into (30), one can obtain

$$\begin{aligned} {\dot{s}} = -K_1s-K_2\text {sig}(s)^{\mu } - HG \big ( L{\hat{C}} - M_0^{-1}\delta \big ). \end{aligned}$$
(42)

Define the adaptive estimation error \({{\bar{c}}}_i = \hat{c_i} - c_i \ (i = 1,2,3,4)\) and choose the Lyapunov function as

$$\begin{aligned} V = \frac{1}{2}s^Ts + \frac{1}{2} \sum _{i=1}^4 {\bar{c}}_i^2 \end{aligned}$$
(43)

Using (42) and evaluating the derivative of V along this system trajectory with the proposed AFNTSMDC input yields

$$\begin{aligned} {\dot{V}}&= s^T{\dot{s}} + \ \sum _{i=1}^4{\bar{c}}_i \dot{\hat{c_i}} \\&= -K_1 \lfloor s \rfloor -K_2 \lfloor s \rfloor ^{\mu +1} -s^T HG\big ( L{\hat{C}} - M_0^{-1}\delta \big )\\&\quad + \ \sum _{i=1}^4 {\bar{c}}_i \dot{\hat{c_i}} \\ \le&{ - \lfloor s \rfloor ^T \lfloor HG \rfloor \big ( {\hat{C}} - \lfloor M_0^{-1}\delta \rfloor \big ) + \ \sum _{i=1}^4 {\bar{c}}_i \dot{\hat{c_i}} }\\&= - \lfloor s \rfloor ^T \lfloor HG \rfloor \big ( {\hat{C}} - \lfloor M_0^{-1}\delta \rfloor \big ) \\&\quad + \ \sum _{i=1}^4 {\bar{c}}_i \dot{\hat{c_i}} + \lfloor s \rfloor ^T \lfloor HG \rfloor C - \lfloor s \rfloor ^T \lfloor HG \rfloor C \\&= -\lfloor s \rfloor ^T \lfloor HG \rfloor \big (C - \lfloor M_0^{-1}\delta \rfloor \big ) - \lfloor s \rfloor ^T \lfloor HG \rfloor \lfloor C - {\hat{C}} \rfloor \\&\quad + \ \sum _{i=1}^4 {\bar{c}}_i \dot{\hat{c_i}} . \end{aligned}$$

Following \(c_i > {\hat{c}}_i\) from Lemma 1, we have

$$\begin{aligned} \dot{V}&\le -\lfloor s \rfloor ^T \lfloor HG \rfloor \big (C - \lfloor M_0^{-1}\delta \rfloor \big ) - \lfloor s \rfloor ^T \lfloor HG \rfloor \lfloor C - \hat{C} \rfloor \nonumber \\&\quad - \ \sum _{i=1}^4 \vert \bar{c}_i \vert \dot{\hat{c_i}} \nonumber \\&= -\lfloor s \rfloor ^T Q - \zeta _1 \vert s_1 \vert \vert \bar{c}_1 \vert - \zeta _2 \vert s_2 \vert \vert \bar{c}_2 \vert - \zeta _3 \vert v \vert \vert s_1 \vert \vert \bar{c}_3 \vert \nonumber \\&\quad - \zeta _4 \vert w \vert \vert s_2 \vert \vert \bar{c}_4 \vert \end{aligned}$$
(44)

where

$$\begin{aligned} C&= \begin{bmatrix} c_1 + c_3 \vert v \vert , \ c_2 + c_4 \vert \omega \vert \end{bmatrix}^T\\ Q&= [q_1, \ q_2]^T = \lfloor HG \rfloor \big ( C - \lfloor M_0^{-1}\delta \rfloor + \lfloor C - {\hat{C}} \rfloor \big ) . \end{aligned}$$

To make the expression compact, the following symbols are defined:

$$\begin{aligned}&\epsilon _1 =\zeta _1 \vert s_1 \vert , \ \epsilon _2 = \zeta _2 \vert s_2 \vert \\&\epsilon _3 = \zeta _3 \vert v \vert \vert s_1 \vert , \ \epsilon _4 = \zeta _4 \vert w \vert \vert s_2 \vert . \end{aligned}$$

It is obvious that \(\epsilon _i > 0\) \((i=1,2,3,4)\), thus (44) can be rewritten as

$$\begin{aligned} {\dot{V}}&\le - \sqrt{2} \bigg (q_1 \frac{ \vert s_1 \vert }{\sqrt{2}} + q_2 \frac{ \vert s_2 \vert }{\sqrt{2}} + \epsilon _3 \frac{ \vert {\bar{c}}_1 \vert }{\sqrt{2}} + \epsilon _4 \frac{ \vert {\bar{c}}_2 \vert }{\sqrt{2}} \nonumber \\&\qquad + \epsilon _5 \frac{ \vert {\bar{c}}_3 \vert }{\sqrt{2}} + \epsilon _6 \frac{ \vert {\bar{c}}_4 \vert }{\sqrt{2}} \bigg )\nonumber \\&\le - \sqrt{2}\eta _3 \bigg (\frac{ \vert s_1 \vert }{\sqrt{2}} \!+\! \frac{ \vert s_2 \vert }{\sqrt{2}} \!+\! \frac{ \vert {\bar{c}}_1 \vert }{\sqrt{2}} \!+\! \frac{ \vert {\bar{c}}_3 \vert }{\sqrt{2}} \!+\! \frac{ \vert {\bar{c}}_3 \vert }{\sqrt{2}} \!+\! \frac{ \vert {\bar{c}}_4 \vert }{\sqrt{2}} \bigg ) \nonumber \\&\le - \sqrt{2}\eta _3 V^{\frac{1}{2}} \end{aligned}$$
(45)

and

$$\begin{aligned} \eta _3 = \text {min} \{q_1,q_2,\epsilon _1,\epsilon _2,\epsilon _3,\epsilon _4 \}. \end{aligned}$$
(46)

Therefore, according to the result in Appendix A, the inequality (45) satisfies the finite-time stability criterion. More specific, V will converge from any initial condition V(0) to zero in a finite time \(t_s\) shown in the following equation:

$$\begin{aligned} t_s \le \frac{\sqrt{2}V^{\frac{1}{2}}(0)}{\eta _3} . \end{aligned}$$
(47)

This implies that the sliding variable s and the estimation error \(\bar{c_i}\) will converge to zero in a finite time \(t_s\).

When sliding surface is first arrived (i.e., \(s = 0\) and \({\dot{\xi }} = -\alpha \xi - \beta \text {sig}(\xi )^{\gamma }\)), the finite-time converging condition of \(\xi \) is met. After a finite time \(t_\xi \) when \(\xi = 0\), according to the definition of \(\xi \) in (22), we have

$$\begin{aligned} \left\{ \begin{aligned}&x_e = 0\\&\phi _e = -\text {tan}^{-1}y_e . \end{aligned} \right. \end{aligned}$$
(48)

Substituting the condition (48) into (18), the dynamics of \(y_e\) can be written as

$$\begin{aligned} \dot{y_e}&= -v_r\text {sin}(\text {tan}^{-1}y_e)\nonumber \\&= -\frac{v_ry_e}{\sqrt{1+y_e^2}} . \end{aligned}$$
(49)

To investigate the stability of the dynamics of \(y_e\), we choose a Lyapunov candidate \(V_{ye} = \frac{1}{2}y_e^2\). Thus, \({\dot{V}}_{ye}\) can be expressed as

$$\begin{aligned} {\dot{V}}_{ye}&= -\frac{v_ry_e^2}{\sqrt{1+y_e^2}}\nonumber \\&\le -\frac{v_r \vert y_e \vert }{\sqrt{1+y_e^2}}\sqrt{2}\frac{ \vert y_e \vert }{\sqrt{2}} \nonumber \\&=-\sqrt{2}\eta _4V_{ye}^{\frac{1}{2}} \end{aligned}$$
(50)

where \(\eta _4 = \frac{v_r \vert y_e \vert }{\sqrt{1+y_e^2}}\) and \(v_r > 0\). According to Appendix A, \(y_e\) converges to zero in the finite time satisfying

$$\begin{aligned} t_{ye} \le -\frac{\sqrt{2}V^{\frac{1}{2}}(0)}{\eta _4} . \end{aligned}$$
(51)

Recall the condition in (48). When \(y_e\) reaches zero, \(\phi _e\) reaches zero at the same time. Therefore, under the proposed AFNTSMDC law, the x-axis tracking error \(x_e\) converges from any initial condition to zero in a finite time of \(t_{xe} = t_s + t_\xi \) and it takes additional finite time \(t_{ye}\) for \(y_e\) and \(\phi _e\) to reach zero.

The proof is thus completed. \(\square \)

Fig. 2
figure 2

Block diagram of the proposed unified control structure for NWMR systems

Remark 1

The controller (39) requires the inverse of the matrix \( HGM_0^{-1}B \). Similar issue has appeared in [13, 15] while examining the singularity of the control laws. In our method, the singularity issue can be resolved by the proposed tracking-error function (22). This can be straightly justified by the determinant of the matrix \( HGM_0^{-1}B \) as follows:

$$\begin{aligned} \vert HGM_0^{-1}B \vert = - \frac{2b}{rm_0I_0} \bigg ( \frac{\rho }{( \vert x_e \vert +\rho )(1+y_e^2)}x_e + 1 \bigg ). \end{aligned}$$
(52)

It can be seen that for \(0< \rho < 1\), the function \(\frac{\rho }{( \vert x_e \vert +\rho )(1+y_e^2)}x_e \ne -1\) because of the functions \(\frac{\rho x_e}{ \vert x_e \vert +\rho } \in (-1, 1)\) and \(\frac{1}{1+y_e^2} \in (0, 1]\). Therefore, the inverse of \( HGM_0^{-1}B \) is finite.

Remark 2

In the adaptation law (37)–(38) , the sliding variable s is generally chattering around zero due to system uncertainties and measurement noises, resulting in overly large estimations of \(c_i\) causing control input saturation. Hence, the dead zone technique [24] can be employed in practice to moderate this issue. More specifically, the following rules are implemented:

$$\begin{aligned}&\left\{ \begin{aligned}&\dot{\hat{c_1}} = \zeta _1 \vert s_1 \vert , \ \dot{\hat{c_3}} = \zeta _3 \vert v \vert \vert s_1 \vert ,&\text {for} \ \vert s_1 \vert > \varepsilon \\&\dot{\hat{c_1}} = \dot{\hat{c_3}}= 0,&\text {for} \ \vert s_1 \vert \le \varepsilon \end{aligned} \right. \end{aligned}$$
(53)
$$\begin{aligned}&\left\{ \begin{aligned}&\dot{\hat{c_2}} = \zeta _2 \vert s_2 \vert , \ \dot{\hat{c_4}} = \zeta _4 \vert \omega \vert \vert s_2 \vert ,&\text {for} \ \vert s_2 \vert > \varepsilon \\&\dot{\hat{c_2}} = \dot{\hat{c_4}} = 0,&\text {for} \ \vert s_2 \vert \le \varepsilon \end{aligned} \right. \end{aligned}$$
(54)

where \(\varepsilon \) is a small positive threshold value selected as 0.05 in our case. It is clear that when s is within the region \(\varepsilon \), \(\hat{c_1}\) and \(\hat{c_2}\) will not increase but retain the present values. One can easily verify that when both \(\vert s_1 \vert < \varepsilon \) and \(\vert s_2 \vert < \varepsilon \), (45) still holds. Therefore, the finite-time stability property is still retained in practice.

Remark 3

The boundary layer technique can be used to compromise between control accuracy and the chattering induced by the reaching control. This can be accomplished by replacing sgn(\(\cdot \)) in the reaching law (32) with a saturation function given by

$$\begin{aligned} \text {sat}(\vartheta ) = \left\{ \begin{aligned}&\text {sgn}(\vartheta ),&\text {for} \ \vert \vartheta \vert > \varrho \\&\vartheta \varrho ^{-1},&\text {for} \ \vert \vartheta \vert \le \varrho \end{aligned} \right. \end{aligned}$$
(55)

where \(\varrho \) denotes the boundary layer thickness and \(\varrho = \text {diag} ([0.04,\ 0.04])\) is chosen in our case to reach a balance between chattering reduction and acceptable tracking errors.

Remark 4

To emphasize the advantage of the proposed control scheme which is shown in Fig. 2, a comparison is made between the AFNTSMDC method and a classic control scheme that is presented in Fig. 3. In Fig. 3, the inner velocity controller and an outer loop controller are designed based on the dynamic model and the kinematic model separately, whereas the AFNTSMDC is the controller that integrates the control requirements for both the kinematic and dynamic model. Thus, the proposed control scheme simplifies the system structure which potentially leads to more reliable performances, a reduction in the number of tuning parameters and tuning processes, and less computational and hardware cost. Further comparisons and statistical validations regarding the practical performance will be presented in Sect. 4.

Fig. 3
figure 3

Block diagram of an inner-outer control structure for the NWMR system [12]

3.3 Control parameters selection

During the implementation, trade-offs between the desired tracking performance and other factors such as control input saturation, control command smoothness, and measurement noises are expected. In the following, we will discuss the controller parameters selection guideline for the proposed AFNTSMDC law and give their values for the NWMR under study.

  1. (1)

    Selection of \(\alpha \), \(\beta \), \(\gamma \): The parameters in \(\alpha \), \(\beta \), and \(\gamma \) affect the dynamic behaviors of the sliding surface s in (27). An increment of these parameters can lead to faster convergence of \(\xi \) towards zero but may incur a rising in the amplitude of the tracking-error overshoots. For the NWMR constructed for the experiment, \(\alpha = \text {diag} ([7,\ 7])\), \(\beta = \text {diag} ([7,\ 6])\) and \(\gamma = 1.67\) are chosen.

  2. (2)

    Selection of \(\rho \): Before \(x_e\) reaches zero, a smaller value of \(\rho \) in the tracking-error function (22) can increase the convergence rate of \(y_e\) and \(\phi _e\). However, it may invoke oscillations in transient response of \(\phi _e\). Thus, \(\rho \) is set to be 0.8.

  3. (3)

    Selection of \(K_1\), \(K_2\), \(\mu \): The control parameters \(K_1\), \(K_2\), and \(\mu \) in the reaching law (32) dominate the system robustness. Increasing the values of \(K_1\) and \(K_2\) strengthens the system robustness at the cost of control signal smoothness. Meanwhile, \(\mu \) can balance the control signal chattering and the robustness. In our case, \(K_1 = \text {diag} ([9,\ 4])\), \(K_2= \text {diag} ([15, \ 5])\), and \(\mu = 0.8\) are chosen in the implementation.

  4. (4)

    Selection of \(c_i(0)\) and \(\zeta _i\) \((i=1,2,3,4)\): \(c_i(0)\) denote the initial values of \(c_i\). Proper selected of values of \(c_i(0)\) will reduce the adaptation time. The adaptive gains \(\zeta _i\) in (37)–(38) determine the convergence rate of the adaptive estimation error, whereas a large value of them may cause control input saturation and overshoots. Thus, we find \(c_1(0) = 14\), \(c_2(0) = 14\), \(c_3(0) = 8\), \(c_2(0) = 6\), \(\zeta _1 = 0.3\), \(\zeta _2 = 0.4\), \(\zeta _3 = 0.4\), \(\zeta _4 = 0.5\) are sufficient for the experiments.

4 Experimental results

To demonstrate the effectiveness of the proposed AFNTSMDC method in the presence of external disturbances and load variations, experiments are conducted on the NWMR shown in Fig. 4. In addition, experimental comparisons are made with other existing control methods, i.e., a classic kinematic control (CKC) method [19], a recently proposed robust sliding mode kinematic control (RSMKC) method [15], and a conventional sliding mode dynamic control (CSMDC) method.

4.1 Control methods for comparison

Classic kinematic control (CKC) As shown in Fig. 3, an outer loop CKC law is given in the following form [19]:

$$\begin{aligned} z_d = K_Ep_e+ K_D \end{aligned}$$
(56)

with

$$\begin{aligned}&z_d = \begin{bmatrix} v_d \\ \omega _d \end{bmatrix}, \ K_E = \begin{bmatrix} k_{e1} &{} 0 &{} 0 \\ 0 &{} v_rk_{e2} &{} 0 \end{bmatrix}, \nonumber \\&\ K_D= \begin{bmatrix} v_r\text {cos}\phi _e\\ v_rk_{e3}\text {sin}\phi _e +\omega _r \end{bmatrix} \end{aligned}$$
(57)

where \(k_{e1}\), \(k_{e2}\), and \(k_{e3} \)are all positive constants which are set to be 1.7, 1.7, and 1.5 in this experiment.

Robust Sliding Mode Kinematic Control (RSMKC): Similarly, an RSMKC method is proposed in [15]

$$\begin{aligned} \left\{ \begin{aligned}&s_r = \begin{bmatrix} k_{r1} \phi _e + v_r\text {tan}^{-1}y_e\\ x_e \end{bmatrix}\\&z_d = -B_r^{-1}\big (A_rF_r + D_r + K_r\text {sgn}(s_r)\big ) \end{aligned} \right. \end{aligned}$$
(58)

where

$$\begin{aligned}&A_r = \begin{bmatrix} 0 &{} \frac{v_r}{1+y_e^2} &{} k_{r1} \\ 1 &{} 0 &{} 0 \end{bmatrix}, \ B_r = \begin{bmatrix} 0 &{} -(k_{r1} +\frac{v_rx_e}{1+y_e^2}) \\ -1 &{} y_e \end{bmatrix} \\&F_r= \begin{bmatrix} v_r\text {cos}\phi _e\\ v_r\text {sin}\phi _e\\ \omega _r \end{bmatrix}, \ D_r = \begin{bmatrix} \dot{v_r}\text {tan}^{-1}y_e \\ 0 \end{bmatrix} , \ K_r = \begin{bmatrix} k_{r2} &{} 0\\ 0 &{} k_{r3} \end{bmatrix} \end{aligned}$$

where \(k_{r1}\), \(k_{r2}\), and \(k_{r3}\) are tuning parameters which are set to 0.40, 0.02, and 0.02, respectively.

It is worth noting that both kinematic controllers presented above are coupled with an inner velocity controller which is designed for the actual velocity to follow the desired velocity generated by the kinematic controller. A PI velocity controller is used in experiments, and it can be described as

$$\begin{aligned} u = k_P z_e(T) + k_I \int _{0}^{T} z_e(t) \,\mathrm{{d}}t \end{aligned}$$
(59)

where \(u = [u_1, \ u_2]^T\) denotes the output of the PI velocity controller; \(z_e = z_d - z\) which is the velocity tracking error; \(k_P\) and \(k_I\) are tuning parameters and they are set to 30 and 250 in our case, respectively.

Fig. 4
figure 4

Experimental platform of a nonholonomic wheeled mobile robot

Conventional Sliding Mode Dynamic Control (CSMDC): For comparison, a CSMDC method is listed below whose control scheme is the same as the one discussed in Sect. 2. However, the sliding surface and reaching law are designed based on the conventional SMC method which is given as

$$\begin{aligned} \left\{ \begin{aligned}&s_{csm} = \lambda _{c} \xi + {{\dot{\xi }}} \\&\tau _{eq2}= -(HGM_0^{-1}B)^{-1}\big (\lambda _{c} {{\dot{\xi }}} + \dot{H} \dot{p}_e+ H(\dot{F} + \dot{G} V)\big ) \\&\tau _{r2} = -(HGM_0^{-1}B)^{-1}K_c\text {sgn}(s_{csm})\\&\tau _2 = \tau _{eq2} + \tau _{r2} \end{aligned} \right. \nonumber \\ \end{aligned}$$
(60)

with

$$\begin{aligned} K_c = \begin{bmatrix} k_{c1} &{} 0\\ 0 &{} k_{c2} \end{bmatrix} , \ \lambda _C = \begin{bmatrix} \lambda _{c1} &{} 0\\ 0 &{} \lambda _{c2} \end{bmatrix} \end{aligned}$$

where \(\xi \) is with (22); \(k_{c1}\), \(k_{c2}\), \(\lambda _{c1}\), and \(\lambda _{c2}\) are positive control parameters which are chosen as 21, 16, 3 and 4, respectively.

4.2 Experimental platform

Our experimental setup for the NWMR is shown in Fig. 4 with its nominal physical parameters listed in Table 1. It consists of two dc motors (Maxon) which are integrated with encoders to measure the rotary angles. Two motor drivers (Maxon ESCON-36/2) are also used to control the motor power. Two caster wheels are located at the rear of the robot. The data acquisition and controller are implemented with the real-time microcontroller (NI myRIO). The sampling period is set to 0.01 seconds for all controllers implemented. The feedback posture signals of the NWMR are obtained by using a posture estimator with the motor encoder signals as the system input.

4.3 Circular path tracking performance with initial posture offset

A circular path is typically used for testing the track-following performance of mobile robots. In the experiments conducted, the desired circular path is configured with an angular speed of 0.70 rads/s and a radius of 0.60 m. In addition, the initial posture offset is set to be (\(-0.10, \, -0.10, \, 0\)).

Table 1 Model parameters of the NWMR
Fig. 5
figure 5

Circular tracking with initial posture offset. a Trajectory profiles. b Orientation angles. c Tracking errors of X-axis displacement. d Tracking errors of Y-axis displacement. e Tracking errors of orientation angle

Experimental results on the trajectory and tracking error profiles are shown in Fig. 5. We can see that the AFNTSMDC method achieves the fastest convergence rate and the least oscillations. Meanwhile, the tracking results in Fig. 5 are also summarized in Table 2, where the root-mean-square (RMS), the maximum value (MAX), and the settling time of tracking errors are listed. Figure 5a, b shows that all controllers guarantee to converge to the desired trajectory. In particular, Fig. 5c shows that the convergence of X-axis tracking error under AFNTSMDC is with a settling time of 0.684 s which is \(788\%\), \(603\%\), and \(249\%\) faster than that of the CKC, RSMKC, and CSMDC, respectively. In addition, the AFNTSMDC obtains the smallest RMS with a value of 1.918 cm in X-axis tracking error. There is no significant lead for the AFNTSM regarding RMS and MAX, the transition in Y-axis is the smoothest shown in Figure 5d. Figure 6 presents the control inputs of all controllers, where the AFNTSMDC exhibits persistently smooth control signals without singularity issue that matches the theoretical design. Nevertheless, due to the impact of measurement noise, there is still a small level of chattering in the control input, which is inevitable in the experiments but has not caused any implementation issue in our case.

Fig. 6
figure 6

Control input with initial posture offset. a Right motor voltage input. b Left motor voltage input

Table 2 Tracking performance summary of circular trajectory with initial offset

4.4 Circular path tracking performance with load uncertainty and disturbance

Fig. 7
figure 7

Circular tracking with the load. a Trajectory profiles. b Orientation angles. c Tracking errors of X-axis displacement. d Tracking errors of Y-axis displacement. e Tracking errors of orientation angle

To further verify the performance robustness in the presence of modeling uncertainties, we place a 3.60-kg cylindrical payload on the mass center of the mobile robot, i.e., making \(\Delta M = \text {diag}([3.60, \ 0.01])\). Meanwhile, the circular path reference is still used on the control system with an initial posture offset set on the robot. Compared with the previous experiment, various performance degradation can be observed in Fig. 7c–e. However, the AFNTSMDC maintains its advantages with the shortest settling time with a value of 1.128 s and the smallest RMS of 2.806 cm in the X-axis tracking error listed in Table 3 because the payload uncertainties have been explicitly considered during the design process as shown in (11). Meanwhile, the fast convergence feature and the smoothness of the AFNTSM are observed in Fig. 7d, whereas the kinematic controllers (i.e., CKC and RSMKC) suffer from severe performance degradation due to their weak robustness against system uncertainties. From the control input in Fig. 8, it can be observed that there is a significant increment in the amplitude and the number of spikes in control input signals except those under CSMDC and AFNTSMDC. The increased amplitudes in Fig. 8b are \(39.54\%\), \(40.83\%\), \(35.41\%\), and \(24.05\%\) for the CKC, RSMKC, CSMDC, and AFNTSMDC, respectively. Hence, this experiment validates that the proposed controller is more robust against modeling uncertainties in comparison with other control methods.

Later the disturbances \(d_1\) and \(d_2\) as shown in Figs. 2 and 3 are set as shock disturbances acting on the wheels of the NWMR. The disturbance behaves as a half-sine waveform with a duration of 0.5 s and an amplitude of 6.0 V. The disturbance can be modeled as

$$\begin{aligned} \left\{ \begin{aligned}&d_1 = d_2 = 6 \vert \text {sin}(2\pi t) \vert&12 \,\text {s} \le t \le 12.5 \,\text {s}\\&d_1 = d_2 = 0&\text {Other time}. \end{aligned} \right. \end{aligned}$$
(61)

The disturbances occur at the 12th second when all the controllers reach steady state and last for another 0.5 s. Thus, the data collected from the 11th to 18th are intercepted from a 20-second experiment and it is shown in Fig. 9 for better readability. One of the most notable features of the AFNTSMDC is the fast convergence rate and robustness in response to an external disturbance. It can be seen from Fig. 9a that the tracking error under the AFNTSMDC has a MAX peak value of 1.624 cm, which is \(74\%\), \(66\%\), and \(25\%\) smaller than the MAX peaks values under the CKC, RSMKC, and CSMDC. In addition, the settling time of the X-axis tracking error is 0.525 s under AFNTSMDC in comparison with 0.520 s, 0.870 s, and 0.670 s under the CKC, RSMKC, and CSMDC listed in Table 4. While obtaining stronger robustness, only the same level of control inputs is required under AFNTSMDC, which can be seen from Fig. 10. Thus, the results verify that the AFNTSMDC is more robust and faster in terms of disturbance rejection capability and settling-time convergence.

Table 3 Tracking performance summary of circular trajectory with load uncertainty
Fig. 8
figure 8

Control input with the load. a Right motor voltage input. b Left motor voltage input

Fig. 9
figure 9

Circular tracking under external disturbances. a Tracking errors of X-axis displacement. b Tracking errors of Y-axis displacement. c Tracking errors of orientation angle

Table 4 Tracking performance summary of circular trajectory with disturbance
Fig. 10
figure 10

Control input under external disturbances. a Right motor voltage input. b Left motor voltage input

In summary, the proposed AFNTSMDC controller performs the most robustly and fastest in the trajectory tracking control for the NWMR. It is also worth noting that the tracking errors under all controllers still contain a small amount of steady-state error in practice due to the coarse sensor resolution and the trade-off for reducing the control chattering, which will be improved in our future work.

5 Conclusion

In this paper, we developed an AFNTSMDC method for the NWMR system to accomplish trajectory tracking control in a finite time. The AFNTSMDC method resolves the singularity issue presented in previous research and possesses strong robustness against external disturbances and modeling uncertainties. Comparisons are made with existing techniques such as the CKC, RSMKC, and CSMDC methods under a series of circular trajectory tracking experiments. It has been validated that the proposed control method possesses stronger robustness and a faster convergence rate when compensating for initial posture offset, load uncertainty, and external disturbances. In addition, the proposed control scheme simplifies the control structure and unifies the design process in comparison with the classic cascaded control scheme. Thus, the design process has been simplified since there is no need to design two individual controllers for different objectives, which also potentially leads to more reliable performances, reduction in control parameters, tuning process, and computational and hardware requirements.

In our future work, we will investigate the chattering-free reaching law to inherently eliminate the chattering phenomenon without sacrificing tracking accuracy.