Have a personal or library account? Click to login
Research on A Robust Adaptive Controller with Disturbance Observer For Wheeled Mobile Robot Cover

Research on A Robust Adaptive Controller with Disturbance Observer For Wheeled Mobile Robot

Open Access
|Mar 2026

Full Article

1.
Introduction

Wheeled Mobile Robot (WMR) refers to robots that navigate on the ground using motorized wheels to propel themselves. Among the branches of mobile robots, WMRs are simpler and more efficient than other designs, such as those that utilize grooves or legged robots. They are easy to design, produce, and program for linear and angular motion on a horizontal plane. This makes the WMRs an active field of research in order to fulfill the needs of surveys, patrols, emergency savings, identification, petrochemicals in automation, building structures, transportation, and healthcare. With numerous features, WMRs are being applied in various fields such as agriculture services and other industries [17]. Since then, the requirements for accurately controlling the movement trajectory of mobile robots with wheels have also increased.

Experiments show that between the two main types of WMR, nonholonomic robots are more difficult to control than holonomic robots [8]. Hence, this kind of system poses more problems for researchers.

The trajectory accuracy of holonomic robots is affected by various uncertain factors from the robot itself and external forces, making it more challenging to control the system [9].

To address these challenges, various solutions have been proposed to enhance the accuracy and trajectory tracking of nonholonomic wheeled mobile robots (WMRs) under uncertain interference factors. These solutions include fuzzy control [1012], back-steppingbased control [1315], and sliding mode control (SMC) [1618], among others [5, 12, 1921]. However, controllers based on the “no-slip wheel” hypothesis, such as SMC [16, 18, 22], adaptive control [2326], and backstepping control [13, 14], fail to meet the system’s requirements for stability and precise trajectory tracking.

In recent years, several methods have been proposed to solve interference problems in WMR control. One of them is robust adaptive tracking control [2628], a tracking controller that combines disturbance observer and a responsive compensation mechanism to deal with unstable systems. Therefore, the errors and responses are limited. In [29], the problem of trajectory tracking for WMR under conditions of system uncertainty and external disturbances was solved. By using a fuzzy logic system (FLS) for model estimation and an adaptive fuzzy observer for estimating unmeasured velocities, the position errors are minimized and system response is fast.

Wheel slips in WMR are also an interesting problem for many researchers. In order to overcome the challenges in a conventional backstepping controller, a dynamic surface controller (DSC) is developed [5, 30], which incorporates skidding and sliding mechanisms. In [17], a control scheme combining sliding mode control with a backstepping observer is proposed for WMRs with unknown sliding and model uncertainty. This algorithm mitigates the effects of system uncertainties, disturbances, and vibrations inherent in sliding mode control; however, the illustrative results are not satisfactory. A control technique utilizing a fuzzy PID controller, combined with IMU and feedback current, is introduced in [31] to reduce slippage caused by environmental factors. While the results indicate that this control scheme is effective, system stability is not addressed. In [17, 32], a controller based on a disturbance observer that accounts for skidding and sliding is presented, however the error in this algorithm remains significantly high.

The robust adaptive controller developed in [33] accounts for disturbances and wheel slips, with the WMR dynamics explicitly considering wheel slip in the tracking controller’s design. A disturbance observer is utilized to estimate robot uncertainties and slip. However, the controller has only been verified through simulations, and the discontinuous transition in the control law may lead to instability.

This paper aims to deal with the shortcomings of the approach presented in [33] for tracking control of Wheeled Mobile Robots (WMRs). The proposed control scheme consists of two loops: an inner loop, which uses a PID controller for precise wheel speed regulation, and an outer loop, which employs a disturbance observer to accurately track the reference trajectory in case of disturbances and uncertainties. The key contributions of this paper are as follows:

  • Improvement of [33]: The outer loop tracking controller is re-derived using Lyapunov stability theory, and a novel method for handling noninvertible matrices is introduced.

  • Simulation Validation: The proposed control structure is thoroughly tested in simulations, demonstrating significant improvements in system response compared to the method in [33].

  • Experimental Verification: The effectiveness of the proposed scheme is further validated through realworld experiments on a WMR, with the results confirming its superior performance.

2.
Wheeled Mobile Robot Model

In this research, the WMR model is referred from [33], the kinematics and dynamics model of WMR, which takes account of wheel slips, and is summarized as follows: 1{ x˙M=ϑcos(θ)η˙sin(θ)y˙M=ϑsin(θ)+η˙cos(θ)θ˙=ω \left\{ {\matrix{ {{{\dot x}_M} = \vartheta \cos (\theta ) - \dot \eta \sin (\theta )} \hfill \cr {{{\dot y}_M} = \vartheta \sin (\theta ) + \dot \eta \cos (\theta )} \hfill \cr {\dot \theta = \omega } \hfill \cr } } \right. 2Iv˙+Bv+Qγ¨+Cη˙+Gη¨+τd=τI\dot v + Bv + Q\ddot \gamma + C\dot \eta + G\ddot \eta + {\tau _d} = \tau where 𝜗, 𝜔 are the WMR forward velocity and angular velocity at midpoint of driving wheels M, respectively, which is determined as: 3ϑ=r(ϕ˙R+ϕ˙L)2+γ˙R+γ˙L2,ω=r(ϕ˙Rϕ˙L)2b+γ˙Rγ˙L2b\vartheta = {{r\left( {{{\dot \phi }_R} + {{\dot \phi }_L}} \right)} \over 2} + {{{{\dot \gamma }_R} + {{\dot \gamma }_L}} \over 2},\omega = {{r\left( {{{\dot \phi }_R} - {{\dot \phi }_L}} \right)} \over {2b}} + {{{{\dot \gamma }_R} - {{\dot \gamma }_L}} \over {2b}}

The robot parameters are defined and shown in Fig. 1. In which, G (xG, yG) is the center of mass of the WMR platform, M (xM, yM) is the midpoint of the driving wheels, D (xD, yD) is the desired position; θ is the orientation of WMR; 2b is the width of WMR; r is the wheel radius; ep1, ep2 are the position errors between M and D in the MXY coordinate; a is the distance between M and G; γRL are longitudinal slip factors of the right and left driving wheels, respectively; η is the lateral slip factor along the wheel shaft; I, B, Q, C and G are weighting matrices and vectors in WMR dynamic, which are defined in details in [33]:

Figure 1.

WMR in coordinates and its dynamic factors

3.
Development of Controller

Similar to the approach in [33], the control scheme for the WMR consists of two loops arranged as a cascade control system, as shown in Fig. 2. The outer loop is responsible for controlling the robot’s position. This controller incorporates a disturbance observer to compensate for disturbances, system uncertainties, and model errors. Meanwhile, the inner loop manages wheel speed control, ensuring that the wheels follow the speed commands generated by the outer loop.

Figure 2.

Overall structure of proposed control scheme

The PID controller, known for its wide application due to its stability, robustness, and reliable control performance, is used in the inner loop. As a result, the overall control system heavily depends on the effectiveness of the outer loop controller. Therefore, this section focuses on the outer loop controller and the integration of the disturbance observer to enhance system performance.

3.1.
Robot position tracking control

In the MXY coordinate, the errors between the robot position M (xM, yM) and its desired point D (xD, yD) are determined as: 4ep=[ ep1ep2 ]=T[ xDxMyDyM ]{e_p} = \left[ {\matrix{ {{e_{p1}}} \hfill \cr {{e_{p2}}} \hfill \cr } } \right] = T\left[ {\matrix{ {{x_D} - {x_M}} \hfill \cr {{y_D} - {y_M}} \hfill \cr } } \right] where T=[ cos(θ)sin(θ)sin(θ)cos(θ) ]T = \left[ {\matrix{ {\cos (\theta )} & {\sin (\theta )} \cr { - \sin (\theta )} & {\cos (\theta )} \cr } } \right]

Taking derivative of (4) with respect to time, it can be obtained as [33]: 5e˙p=[ e˙p1e˙p2 ]=T[ x˙Dy˙D ]+h(.)v+d(.){\dot e_p} = \left[ {\matrix{ {{{\dot e}_{p1}}} \cr {{{\dot e}_{p2}}} \cr } } \right] = T\left[ {\matrix{ {{{\dot x}_D}} \cr {{{\dot y}_D}} \cr } } \right] + h(.)v + d(.) or 6e˙p=Tr˙D+h(.)v+d(.){\dot e_p} = T{\dot r_D} + h(.)v + d(.) where v=[ ϕ˙Rϕ˙L ]Tv = {\left[ {{{\dot \phi }_R}{{\dot \phi }_L}} \right]^T} is the vector rotational speeds of right and left driving wheels; r˙D=[ x˙Dy˙D ]T{\dot r_D} = {\left[ {{{\dot x}_D}{{\dot y}_D}} \right]^T};h(.){\rm{ }}and d{\rm{(}}{\rm{.)}} ; h(.) and d(.) are two matrices, that are determined as follows: 7h(.)=[ (ep2b1)r2(ep2b+1)r2ep1r2ep1r2 ]h(.) = \left[ {\matrix{ {\left( {{{{e_{p2}}} \over b} - 1} \right){r \over 2}} & { - \left( {{{{e_{p2}}} \over b} + 1} \right){r \over 2}} \cr { - {{{e_{p1}}r} \over 2}} & {{{{e_{p1}}r} \over 2}} \cr } } \right] 8d(.)=[ (γ˙Rγ˙L2b)ep2(γ˙R+γ˙L2)(γ˙Rγ˙L2b)ep1η˙ ]d(.) = \left[ {\matrix{ {\left( {{{{{\dot \gamma }_R} - {{\dot \gamma }_L}} \over {2b}}} \right){e_{p2}} - \left( {{{{{\dot \gamma }_R} + {{\dot \gamma }_L}} \over 2}} \right)} \cr { - \left( {{{{{\dot \gamma }_R} - {{\dot \gamma }_L}} \over {2b}}} \right){e_{p1}} - \dot \eta } \cr } } \right]

Then, the objective of the WMR control is to find the control rule for v so that ep converges to zero.

3.2.
Tracking control signal

When the WMR follows the reference, the position errors along x and y directions converge to zero. Hence, to find the control rule for position controller, the Lyapunov candidate function is chosen as: 9V=epTepV = e_p^T{e_p} 10V˙=epTe˙p\dot V = e_p^T{{\dot e}_p}

From (6), it can be obtained: 11V˙=epT[ Tr˙D+h(.)v+d(.) ]\dot V = e_p^T\left[ {T{{\dot r}_D} + h(.)v + d(.)} \right]

From (11), the control law v is selected as: 12v=h1(.)[ λep+Tr˙D+d(.) ]v = - {h^{ - 1}}(.)\left[ {\lambda {e_p} + T{{\dot r}_D} + d(.)} \right] where λ=[ λ100λ2 ],λ1,λ2>0\lambda = \left[ {\matrix{ {{\lambda _1}} & 0 \cr 0 & {{\lambda _2}} \cr } } \right],{\lambda _1},{\lambda _2} > 0..

Then (11) becomes: 13V˙=epTλep<0\dot V = - e_p^T\lambda {e_p} < 0

Thus, the system is asymptotic stable with the control law in (12) and ep converges to zero in term of Lyapunov stable criteria.

From (11), the term d(.) is an unknown factor, thus the control signal cannot be calculated directly. In this research the disturbance observer in [34] is employed to estimate this term.

3.3.
Disturbance observer

Consider the system (6), the disturbance observer [34] is designed as: 14{ z˙=L(z+Lep)L[ Tr˙D+h(.)v ]d^=z+Lep \left\{ {\matrix{ {\dot z = - L\left( {z + L{e_p}} \right) - L\left[ {T{{\dot r}_D} + h(.)v} \right]} \hfill \cr {\hat d = z + L{e_p}} \hfill \cr } } \right.

The disturbance estimation error is defined as: 15ed=dd^{e_d} = d - \hat d

Then the derivative of this error can be determined as: 16e˙d=d˙d^˙=z˙+Le˙p{{\dot e}_d} = \dot d - \dot \hat d = \dot z + L{{\dot e}_p}

From (14) and (16), it is easy to obtain: 17e˙d=d˙Led{{\dot e}_d} = \dot d - L{e_d}

It is assumed that the disturbance is low variation, then d˙0\dot d \approx 0 and ėd becomes: 18e˙dLed{\dot e_d} \approx - L{e_d}

3.4.
System stability with disturbance observer

With the disturbance observer in (14), the control signal in (12) will become: 19v=h1(.)[ λep+Tr˙D+d^ ]v = - {h^{ - 1}}(.)\left[ {\lambda {e_p} + T{{\dot r}_D} + \hat d} \right] or 20v=h1(.)λeph1(.)[ Tr˙D+d^ ]=v1+v2\matrix{ {v = - {h^{ - 1}}(.)\lambda {e_p} - {h^{ - 1}}(.)\left[ {T{{\dot r}_D} + \hat d} \right]} \hfill \cr {\,\,\,\, = {v_1} + {v_2}} \hfill \cr } where v1=h1(.)λep;v2=h1().[ Tr˙D+d^ ]{v_1} = - {h^{ - 1}}(.)\lambda {e_p};{v_2} = - {h^{ - 1}}().\left[ {T{{\dot r}_D} + \hat d} \right].

Then the equation (6) will become: 21e˙p=Tr˙D+h(.)[ h1(.)[ λep+Tr˙D+d^ ] ]+d(.){\dot e_p} = T{\dot r_D} + h(.)\left[ { - {h^{ - 1}}(.)\left[ {\lambda {e_p} + T{{\dot r}_D} + \hat d} \right]} \right] + d(.) 22e˙p=λep+ed{\dot e_p} = - \lambda {e_p} + {e_d} where ed=dd^{e_d} = d - \hat d is disturbance estimation error The Lyapunov candidate function is chosen as: V=12epTep+12edTedV = {1 \over 2}e_p^T{e_p} + {1 \over 2}e_d^T{e_d}

Then the derivative of this function will be: V˙=epTe˙p+edTe˙d=epT(λep+ed)+edT(Led)=(epTλep+epTed)+edT(Led)=(12epTepeTed+12edTed)(λ12)epTep(L12)edTed=12(eped)T(eped)(λ12)epTep(L12)edTed\matrix{ {\dot V = e_p^T{{\dot e}_p} + e_d^T{{\dot e}_d} = e_p^T\left( { - \lambda {e_p} + {e_d}} \right) + e_d^T\left( { - L{e_d}} \right)} \hfill \cr {\,\,\,\,\, = \left( { - e_p^T\lambda {e_p} + e_p^T{e_d}} \right) + e_d^T\left( { - L{e_d}} \right)} \hfill \cr {\,\,\,\,\, = - \left( {{1 \over 2}{e_p}^T{e_p} - {e^T}{e_d} + {1 \over 2}e_d^T{e_d}} \right) - \left( {\lambda - {1 \over 2}} \right){e_p}^T{e_p} - \left( {L - {1 \over 2}} \right)e_d^T{e_d}} \hfill \cr {\,\,\,\,\, = - {1 \over 2}{{\left( {{e_p} - {e_d}} \right)}^T}\left( {{e_p} - {e_d}} \right) - \left( {\lambda - {1 \over 2}} \right)e_p^T{e_p} - \left( {L - {1 \over 2}} \right)e_d^T{e_d}} \hfill \cr }

If λ and L are chosen as λ > 1/2 and L > 1/2, then V˙<0\dot V < 0. This means that the system is asymptotic stable according to Lyapunov theorem. e and ed will converge to zero with the control law in (19) and the disturbance observer (14).

In (7), when ep=[ ep1ep2 ]T0{e_p} = {\left[ {\matrix{ {{e_{p1}}} \hfill & {{e_{p2}}} \hfill \cr } } \right]^T} \to 0, then limep0h(.)=[ r2r200 ]\mathop {\lim }\limits_{{e_p} \to 0} h(.) = \left[ {\matrix{ { - {r \over 2}} & { - {r \over 2}} \cr 0 & 0 \cr } } \right]

Hence h(.) is not invertible, the calculation of the control signal v cannot be implemented. To resolve that problem, instead of using law as [33] in this research, the value of ep1 in (7) is introduced to be replaced by ep1=δsign(ep1){e_{p1}} = \delta {\mathop{\rm sign}\nolimits} \left( {{e_{p1}}} \right) as ep1δ. This solution is consistent because the sign of ep1 directly affects the control signal v; the value of δ is select so that the wheel rotational speeds reach the minimum speed in case ep1δ.

The detail diagram of the tracking controller with disturbance observer is depicted in Fig. 3.

Figure 3.

Diagram of outer-loop tracking controller

4.
Description of the Hardware and the Experimental Procedure

The block diagram for a WMR experimental control setup is shown in Fig. 4. In this setup, the outer loop controller is executed on the embedded computer. In which, the WMR position and orientation is determined by an ArUco marker and vision method. Based on these measurements, the adaptive controller with disturbance observer described in (19) is implemented to find the reference signals for the inner loop controller. The inner loop controller is executed on the microcontroller to control the rotational speed of the right and left driving wheel of robot.

Figure 4.

Block diagram of WMR experimental control implementation

The apparatus of WMR hardware, components and experimental control setup are shown in Fig. 5 to Fig. 7. In this setup, the IP camera is mounted on the top position so that it can cover the robot and its experimental trajectory. The robot position and orientation is detected by the ArUco marker that is placed at midpoint of driving wheels M.

Figure 5.

Apparatus of WMR with an ArUco marker and embedded computer

Figure 6.

Setup of electric components in WMR

Figure 7.

Overall image of experimental control setup

The experimental procedure involves the following steps:

  • (1)

    Deploy the PID controller for the robot’s inner loop on the microcontroller.

  • (2)

    Set up the mounting frame for the IP camera and perform calibration using a checkerboard pattern.

  • (3)

    Deploy the pose estimation program on the embedded computer to gather position data (x, y, 0) from the camera.

  • (4)

    Deploy the adaptive controller with a disturbance observer on the embedded computer.

  • (5)

    Position the robot at its initial point for trajectory tracking.

  • (6)

    Execute the programs through ROS.

  • (7)

    Collect the data and print the results.

  • (8)

    Stop the observation process by terminating the program.

5.
Simulation and Experiment

To evaluate the proposed controller, it was tested in both simulation and experimental settings.

In the simulation, the WMR model and the proposed controller were implemented in MATLAB Simulink. Two trajectory cases were used to verify the simulation results: an eight-shaped trajectory and a circular trajectory. The mathematical expression for the eightshaped trajectory is presented in Equation (23), while the circular trajectory is described in

Equation (24): 23{ xd=sin(0.1t)yd=sin(0.2t) \left\{ {\matrix{ {{x_d} = \sin (0.1t)} \hfill \cr {{y_d} = \sin (0.2t)} \hfill \cr } } \right. 24{ xd=cos(0.1t)yd=sin(0.1t) \left\{ {\matrix{ {{x_d} = \cos (0.1t)} \hfill \cr {{y_d} = \sin (0.1t)} \hfill \cr } } \right.

The simulation parameters for the WMR are set in the condition of our experiment robot as Table 1; and 20 the controller parameters are set as λ=[ 2002 ]\lambda = \left[ {\matrix{ 2 \hfill & 0 \hfill \cr 0 \hfill & 2 \hfill \cr } } \right], L=[ 10000100 ]L = \left[ {\matrix{ {100} & 0 \cr 0 & {100} \cr } } \right]. The load disturbances and uncertainty factors are set as: τd=[ 1+sin(0.2t)1+cos(0.2t) ]{\tau _d} = \left[ {\matrix{ {1 + \sin (0.2t)} \hfill \cr {1 + \cos (0.2t)} \hfill \cr } } \right] ; γ˙=[ 0.2rϕRsin(t)0.2rϕRcos(t) ]\dot \gamma = \left[ {\matrix{ {0.2r{\phi _R}\sin (t)} \cr {0.2r{\phi _R}\cos (t)} \cr } } \right]; and η˙=0.2sin(t)\dot \eta = 0.2\sin (t)

Table 1.

Robot simulation parameters

ParameterDescriptionValue
rWheel radius (m)0.06
2bDriving wheel distances (m)0.31
mGWeight of robot flatform (kg)10
mWWeight of robot wheel (kg)0.7
Distance of MG (m)0.1
IGinertial moment of the platform about the vertical axis through point G (kg.m2)0.2
Iwinertial moment of each wheel about its rotational axis (kg.m2)0.0013
IDinertial moment of each wheel about its diameter axis (kg.m2)0.0038

Simulation results are presented in Fig. 8 through Fig. 23, demonstrating the performance of the proposed controller on circular and eight-like trajectories. Additionally, the algorithm from [33] is evaluated for comparison with the proposed controller. The simulation results indicate that both controllers can effectively track the reference trajectories. Tracking errors for both controllers are shown in Fig. 9, Fig. 13, Fig. 17 and Fig. 21.

Figure 8.

Circular trajectory tracking result by using proposed controller

Figure 9.

Circular trajectory tracking errors by using proposed controller

It is evident that the tracking errors in Fig. 9 and Fig. 17 converge smoothly to small values, while the controller from [33] exhibits significant sudden changes when the error is small, as shown in Fig. 13 and Fig. 21. This behavior is due to the discontinuous translation in the matrix h(.) when ep → 0 in equation (19) changes.

The proposed controller’s significant advantages over the one in [33] are evident in the wheel speed control signals (Fig. 10, Fig. 14, Fig. 18, and Fig. 22) and disturbance estimation results (Fig. 11, Fig. 15, Fig. 19 and Fig. 23).

Figure 10.

Reference speeds of driving wheels with respect to circular trajectory generated by proposed controller

Figure 11.

Disturbances estimation with respect to circular trajectory from proposed controller

It can be observed that the wheel velocities and estimated disturbances are stable and smooth with the proposed controller, whereas the controller in [33] exhibits large variations, particularly from the 47th second onward, as seen in Fig. 15, and Fig. 23. These variations may lead to system instability.

The simulation results confirm that the proposed controller performs effectively, exhibiting accurate-tracking, smooth responses, precise estimations, and overall system stability.

Figure 12.

Circular trajectory tracking result by controller from [33]

Figure 13.

Circular trajectory tracking error by controller from reference [33]

Following the successful simulations, the proposed controller was implemented and tested under real-world conditions using a physical robot. In this experimental setup, the robot was tasked with tracking circular and square trajectories, both under noload and 5 kg load conditions.

Figure 14.

Reference speeds of driving wheels with respect to circular trajectory generated by controller from [33]

Figure 15.

Disturbances estimation by controller from [33]

Figure 16.

Eight-like trajectory tracking result by using proposed controller

Figure 17.

Eight-like trajectory tracking error with respect to eight-like by proposed controller

Figure 18.

Reference speeds of driving wheels with respect to eight-like trajectory generated by proposed controller

Figure 19.

Disturbances estimation with respect to eight-like trajectory from proposed controller

Fig. 24 through Fig. 27 present the control results obtained from the real-world experiments. The results demonstrate that the controller successfully guides the robot along the circular trajectory (Fig. 24) with a small steady-state error of less than 3 cm (Fig. 25). The controller’s output signals, represented by the wheel velocities, are shown in Fig. 26. For the circular trajectory, the right wheel appears to maintain a constant speed of 0.06 m/s, while the left wheel speed adjusts to follow the trajectory with smaller speed.

Figure 20.

Eight-like trajectory tracking result by controller from [33]

Figure 21.

Eight-like trajectory tracking error by controller from reference [33]

Figure 22.

Reference speeds of driving wheels with respect to Eight-like trajectory generated by controller from [33]

Figure 23.

Disturbances estimation with respect to eight-like by controller from [33]

Figure 24.

Experimental tracking result with respect to circular trajectory

Figure 25.

Experimental tracking errors with respect to circular trajectory

Figure 26.

Experimental wheels velocity with respect to circular trajectory

Figure 27.

Experimental disturbances estimation with respect to circular trajectory

The disturbance estimation results are illustrated in Fig. 27.

Similarly, the control results for the square trajectory are shown in Fig. 28 through Fig. 31. Fig. 28 illustrates the tracking performance for the square trajectory. It can be observed that there is an overshoot when the reference changes its orientation, which occurs due to the robot’s inertia and reference speed, causing it to continue moving forward until it adapts to the new orientation. Fig. 30 depicts the wheel speeds, showing that the left wheel speed decreases rapidly to accommodate the sudden change in the reference trajectory. The disturbance estimation results are presented in Fig. 31.

Figure 28.

Experimental tracking result with respect to square trajectory

Figure 29.

Experimental tracking error with respect to square trajectory

Figure 30.

Experimental wheels velocity with respect to square trajectory

Figure 31.

Experimental disturbances estimation with respect to square trajectory

Finally, the controller is verified in long-time and load conditions. In this test, the robot carries a 5 kg load and track to circular and square trajectories in 4-loops. The tracking results are shown in Fig. 32 and Fig. 35. It can be seen that the controller successfully adapts to varying load conditions. Furthermore, the control performances are kept stable in all loops, this demonstrates that the controller is stable and robust over time. The control signals with respect to trajectories, are displayed in Fig. 34 and Fig. 37. They show that the wheels’ speeds are similar after each cycle. This proves the robustness and stability of the controller.

Figure 32.

Experimental tracking result with respect to 4loops circular trajectory under 5 kg load

Figure 33.

Experimental tracking errors with respect to 4loops circular trajectory under 5 kg load

Figure 34.

Experimental wheels velocity with respect to 4loops circular trajectory under 5 kg load

Figure 35.

Experimental tracking result with respect to 4loops square trajectory under 5 kg load

Figure 36.

Experimental tracking errors with respect to 4loops square trajectory under 5 kg load

Figure 37.

Experimental wheels velocity with respect to 4loops circular trajectory under 5 kg load

Finally, the proposed controller is tested under longduration and load conditions. In this experiment, the robot carried a 5 kg load while tracking circular and square trajectories over four loops. The tracking results are shown in Fig. 32 and Fig. 35. The results indicate that the controller adapts well under load conditions, maintaining stable control performance throughout all loops. This demonstrates the controller’s stability and robustness over time. Furthermore, the control signals corresponding to the trajectories are displayed in Fig. 33 and Fig. 35, showing that the wheel speeds remain consistent after each cycle. This consistency further proves the robustness and stability of the controller.

6.
Conclusion

In this research, a robust adaptive controller with a disturbance observer was investigated for nonholonomic robots, based on the kinematic and dynamic models of Wheeled Mobile Robots (WMRs). The disturbance observer was employed to handle system uncertainties and external disturbances. The stability of the proposed controller was proven using both Hurwitz and Lyapunov stability criteria.

The study primarily focuses on the outer loop tracking control scheme, which improves the performance of a previously proposed method by incorporating a disturbance handler and addressing remaining issues, such as providing a clear mathematical interpretation for non-invertible matrices and implementing this directly.

Moreover, extensive simulations and experimental results were conducted, demonstrating the proposed controller’s efficiency, robustness, and stability.

DOI: https://doi.org/10.14313/jamris-2026-001 | Journal eISSN: 2080-2145 | Journal ISSN: 1897-8649
Language: English
Page range: 1 - 13
Submitted on: Sep 16, 2024
|
Accepted on: Nov 4, 2025
|
Published on: Mar 31, 2026
In partnership with: Paradigm Publishing Services
Publication frequency: 4 issues per year

© 2026 Trong Tai Nguyen, Doan Phuc An Nguyen, Dai Nghia Tran, Phuc Bao Nguyen Nguyen, Thanh Dat Mai, published by Łukasiewicz Research Network – Industrial Research Institute for Automation and Measurements PIAP
This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 License.