Parameter-Adaptive Event-Triggered Sliding Mode Control for a Mobile Robot

Mobile robots have played a vital role in the transportation industries, service robotics, and autonomous vehicles over the past decades. The development of robust tracking controllers has made mobile robots a powerful tool that can replace humans in industrial work. However, most of the traditional controller updates are time-based and triggered at every predetermined time interval, which requires high communication bandwidth. Therefore, an event-triggered control scheme is essential to release the redundant data transmission. This paper presents a novel parameter-adaptive event-trigger sliding mode to control a two-wheeled mobile robot. The adaptive control scheme ensures that the mobile robot system can be controlled accurately without the knowledge of physical parameters. Meanwhile, the event trigger sliding approach guarantees the system robustness and reduces resource usage. A simulation in MATLAB and an experiment are carried out to validate the efficiency of the proposed controller.


Introduction
In recent years, the rapid development of autonomous systems has given rise to the application of mobile robots in many field applications. The massive surge in the implementation of mobile robots is thanks to mobility, reliability, and the fact that they can operate without any assistance from human operators. The term "mobile robots" is not exclusively limited to any particular locomotion designs; there are numerous types of mobile robots on the ground, underwater, or in the air [1][2][3][4][5]. However, one of the most extensively researched mobile robots is the two-wheeled differential drive robot, which is in demand for many tasks such as transportation in factory storage, restaurants, and hospitals; and in servicing and guiding people in museums and airports [6][7][8][9].
In order for mobile robots to operate automatically and reliably, it is necessary to derive a robust controller for trajectory tracking. There have been many works on the tracking control for two-wheeled mobile robots throughout the years, in both kinematic and dynamic aspects [10][11][12][13][14][15]. In order to address the problem of external disturbances, an adaptive-based controller for the dynamic model has been proposed in some literature [16][17][18]. Imitation learning is also a viable solution to overcome the instability caused by the disturbances [19][20][21]. To further improve the control performance, Fukao et al. [22] implemented an adaptive tracking controller for both the kinematic (1) A novel event-triggered sliding mode controller for the kinematic model of a mobile robot is designed to reduce the computational work of the microcontroller. (2) An adaptive scheme is combined with the event-triggered sliding mode controller to estimate the parameters of the mobile robot. This ensures that the control perfor- mance of the proposed control is kept robust in the presence of uncertainties and unknown parameters. (3) Simulation and experiment results in different scenarios are given to validate the proposed controller.

Parameter-Adaptive Sliding Mode Controller
Consider a well-known kinematic model for a mobile robot, as shown in Figure 1a [45]. The mobile robot is required to track the trajectory generated by a virtual robot, as shown in Figure 1b.
where ω r and ω l are the angular velocities of the right and left wheel; r is the wheel radius; W is the distance between two wheels; x c , y c , and θ c are the positions of the mobile robot. (2) An adaptive scheme is combined with the event-triggered sliding mode controller to estimate the parameters of the mobile robot. This ensures that the control performance of the proposed control is kept robust in the presence of uncertainties and unknown parameters. (3) Simulation and experiment results in different scenarios are given to validate the proposed controller.

Parameter-Adaptive Sliding Mode Controller
Consider a well-known kinematic model for a mobile robot, as shown in Figure 1a [45]. The mobile robot is required to track the trajectory generated by a virtual robot, as shown in Figure 1b.
where and are the angular velocities of the right and left wheel; is the wheel radius; is the distance between two wheels; , , and are the positions of the mobile robot.
The relationship between , and , is expressed in the following form: where and are the linear and angular velocities of the mobile robot, respectively. By defining the tracking errors between the current pose and the reference trajectories as ≜ − , ≜ − , ≜ − in the global coordinates where , and are the positions of the reference mobile robot, the tracking errors with respect to the robot coordinate are given as follows: where , , are the tracking errors between the robot pose and the reference trajectories in the robot coordinate.
The dynamic of the tracking errors is given as follows: The relationship between v, ω and ω r , ω l is expressed in the following form: where v and ω are the linear and angular velocities of the mobile robot, respectively. By defining the tracking errors between the current pose and the reference trajectories as e x x c − x r , e y y c − y r , e θ θ c − θ r in the global coordinates where x r , y r and θ r are the positions of the reference mobile robot, the tracking errors with respect to the robot coordinate are given as follows: where e 1 , e 2 , e 3 are the tracking errors between the robot pose and the reference trajectories in the robot coordinate. The dynamic of the tracking errors is given as follows: where v r and ω r are, respectively, the reference linear and angular velocities. Equation (4) can be rewritten in an affine form as follows: . e = f(e) + g(e)u v (5) where Equation (2) shows that the parameters of r and W are required to be known accurately for achieving the control input u = ω r ω l T of the mobile robot. However, these parameters are difficult to measure accurately in practice. In reality, continuous usage of the mobile robot can lead to the wearing of the wheel-tire; this might cause the wheel radius to change. Alternatively, the measurement may not be accurate due to the lack of a precision measurement instrument. Therefore, an adaptive-based controller is required to estimate r and W. By defining a 1 r , b W 2r and using Equation (2), the control input u can be calculated based on the estimation of a and b as follows: whereâ andb are, respectively, the estimated parameters of a, b, and the terms a From Equation (6), the control input u v for Equation (5) can be calculated as follows: Substituting Equation (6) into Equation (4) and writing it in the affine form, it can be obtained as . e = f(e) + (g(e) + g(e))u v (8) where In order to guarantee the convergence of all the tracking errors e = e 1 e 2 e 3 T , let us define the sliding surface for the system of Equation (8) as follows: Taking the first time derivative of the sliding surface, it yields: . s = f(e) + (g(e) + g * (e))u v (10) where g(e) Assume that there exists a positive constant µ so that it satisfies b ≥ µ > 0. Theorem 1. Consider the system in Equation (8). Supposing that Assumption 1 is satisfied, the following control input and parameter adaptation law will lead to the convergence of the sliding surfaces s to zero while the parameter estimation's errors a and b remain within the boundaries. .â where k, γ 1 , γ 2 are positive constants, g(e) −1 is the pseudo-inverse of the non-square matrix g(e), and the function f b is defined as follows: Proof of Theorem 1. Consider a candidate Lyapunov function as follows: Taking the first-time derivative of the Lyapunov function of Equation (14) and using Equation (10) yields . V e, a, b = s T f(e) + (g(e) + g * (e))u v + 1 γ 1 a a . a + 1 ω(s 1 (e 2 − e 1 ) + s 2 (e 2 + e 1 ) + s 3 (e 2 + e 1 − 1)) Substituting Equations (11) and (12) into Equation (15) yields:  Case 2: Ifb ≤ µ referring to Equation (13) and Assumption 1, it can be deduced that b − b ≤b − µ ≤ 0; therefore one can conclude that . V ≤ 0. The second order derivative of the Lyapunov function is shown as: ..
Consequently, it can be seen that s, a, b are bounded in both cases. Equations (17) and (18) also show that .. V is bounded. By applying Barbalat's lemma, it can be proved that e → 0 as t → ∞ .

Parameter-Adaptive Event-Triggered Sliding Mode Controller
In this section, an event-triggered controller is proposed to drive the dynamic error of Equation (8) to zero. The event-triggered control strategy only generates the control input if a certain condition is satisfied, leading to a non-constant sampling period.
Consider the control input of Equation (11) expressed in the discrete time as follows: where t i is the discrete time instants with i ∈ Z + . Let us define the event-triggered error in a certain interval t ∈ [t i , t i+1 ] as ε(t) e(t) − e(t i ). If this error passes a given threshold, the control input value will be updated. Otherwise, it will remain constant during the given interval.

Assumption 3. Assume that f(e(t))
is a Lipschitz function with respect to its argument such that ||f(e(t)) − δf(e(t i )) || ≤ L ||e(t) − e(t i ) ||, where L is a positive constant. s in Equation (10) . Consequently, the control input of Equation (19) can substitute into Equation (21) to obtain: .
To analyze the system stability, the candidate Lyapunov function is taken as in Equation (14) V e, a, b = 1 2 Taking the first-time derivative of Equation (23) and utilizing Equation (22), it yields: Let us define V s T f(e(t)) − δf(e(t i )) − s T δksign(s(t i )) for further analysis. By applying Assumption 3 and the norm property, V can be rewritten as: Combining Equations (24) and (25), and utilizing Equation (12), the following expression is obtained: Hence, by using the triggering rule in Equation (20), one can ensure that . V e, a, b ≤ 0. This completes the proof of Theorem 2.
In the design of event-trigger control, there is a possibility that the Zeno phenomenon will occur, which means an infinity of events trigger in a finite-time interval [50]. In order to avoid the Zeno phenomenon, the inter-event time T i = t − t i should be proved to have a lower bound [51,52].

Simulation Scenario
In this section, simulations are carried out in two different trajectories in MATLAB to evaluate the effectiveness of the proposed controller. The simulation parameters are shown  Table 1. In addition, a block diagram describing the proposed controller implemented on the mobile robot is shown in Figure 2.   The simulations are carried out in two different scenarios to evaluate the performance of the proposed controller. Each scenario follows the same control structure from Figure 2; the only differences are the reference trajectory and the initial values. The bound value for is chosen as 6 < < 14.

Experimental Scenario
The experiment is performed on a commercialized mobile robot named Pioneer 3-DX (P3-DX) (Figure 3). Encoders are installed on DC motors to perceive the rotational speed of the wheels. The reference trajectories are generated by a virtual robot implemented on a personal computer (PC). The PC also implements the proposed controller by The simulations are carried out in two different scenarios to evaluate the performance of the proposed controller. Each scenario follows the same control structure from Figure 2; the only differences are the reference trajectory and the initial values. The bound value for a is chosen as 6 < a < 14.

Scenario 1
The reference trajectory in this scenario is a circle with a radius of 1m. The simulation time is 300 s. The initial positions and values for the estimated parameters of the mobile robot are x = 0.6 m and y = 0 m;â = 8 andb = 1. The controller gains are selected as k = 0.8, γ 1 = 5, γ 2 = 5.

Scenario 2
In this scenario, the reference trajectory is an ellipse with the value of the major axis a ellipse = 1 m and minor axis b ellipse = 0.9 m. The simulation time is 300 s, which means that the mobile robot moves ten laps of the ellipse, taking 30 s for each lap. The initial positions and values for the estimated parameters of the mobile robot are x = 0.4 m and y = 0 m;â = 8 andb = 3. The controller gains are chosen as k = 0.8, γ 1 = 15, γ 2 = 15.

Experimental Scenario
The experiment is performed on a commercialized mobile robot named Pioneer 3-DX (P3-DX) ( Figure 3). Encoders are installed on DC motors to perceive the rotational speed of the wheels. The reference trajectories are generated by a virtual robot implemented on a personal computer (PC). The PC also implements the proposed controller by retrieving the perception of the encoders from a microcontroller board to establish the control input, which is sent to the microcontroller board. The proposed controller's control input becomes the reference input of a low-level speed controller for DC motors, implemented on the microcontroller board and known as inner loop control, which ensures the velocities of two wheels tracking to the control input of the proposed controller. Currently, the connection between the PC and the microcontroller board is serial communication with RS232 protocol, meaning that the baud rate is limited to 115,200 kbps. Further, wireless communication using either Long Range Radio (LoRa) technology or a well-known Wi-Fi ESP8266 also limits the bandwidth. Thus, the traveling interval and the data packet size of the communication should be reduced to save bandwidth. The specifications of P3-DX are shown in Table 2, below. A brief structure diagram of the mobile robot is also shown in Figure 4. known Wi-Fi ESP8266 also limits the bandwidth. Thus, the traveling interval and the data packet size of the communication should be reduced to save bandwidth. The specifications of P3-DX are shown in Table 2, below. A brief structure diagram of the mobile robot is also shown in Figure 4.
(a) (b)     known Wi-Fi ESP8266 also limits the bandwidth. Thus, the traveling interval and the data packet size of the communication should be reduced to save bandwidth. The specifications of P3-DX are shown in Table 2, below. A brief structure diagram of the mobile robot is also shown in Figure 4.

Event-Triggered Scenario
The parameters for the experiment are the same as those shown in Table 1. The mobile robot is required to move in a circular trajectory in 600 s, which means twenty laps of the circle with a radius of 0.5 m. The initial positions and estimated parameters of the mobile robot are x = 0.4 m and y = 0 m;â = 13 andb = 1. The controller gains are selected as k = 0.8, γ 1 = 2, γ 2 = 1.5.

Time-Triggered Scenario
For an intuitive comparison, an experiment utilizing a time-triggered scheme instead of the event-triggered scheme is performed. Regarding the experiment conditions, the same test conditions of the event-triggered scenario are applied, except for the initial value of the estimated parameterâ which isâ = 1 in this case.

Results and Discussion
In general, the simulation and experimental results show that the response of the mobile robot under the control of the proposed controller has tracked the reference trajectory well for all scenarios, as shown in Figure 5. However, the spending time of the mobile robot to track the reference trajectories depends on the initial positions of the mobile robot. It is noted that the trajectory tracking of the mobile robot was more difficult at the vertices of the ellipse, shown in Figure 5b, than those of the circle, as shown in Figure 5a. The explanation for this phenomenon is that the ellipse trajectory possesses abrupt changes in velocities; however, the proposed controller is derived from a kinematic model, and such a controller can only perform well for a trajectory with almost linear velocities. Regarding the experimental results, it can be seen that the event-triggered scenario (Figure 5c) has a larger error boundary and a slower convergence rate than the time-triggered scenario (Figure 5d). This deviation is attributed to the continuous update of the control signal of the time-based update as opposed to the event-based update.
From Figure 6, it can be seen that the errors of X and Y in all scenarios are bounded despite existing fluctuations. The convergence rate can also be accelerated by choosing a higher gain k. However, the chattering phenomenon will worsen over time and ultimately degrade the control performance. In Figure 6a, the error of X reaches a peak at around 28 s. The same situation can also be seen in Figure 6b,c, albeit to a lesser extent. This can be attributed to the fact that during the first lap (0-30 s), the trajectory tracking of the mobile robot is still considered to be in the transient phase where the controller is adapting to the trajectory, and overshoot may occur as a result. Additionally, the use of pseudo-inverse in the matrix calculation of Equation (11) may cause some abnormalities depending on the simulation platform in some cases. As for the event-triggered and timetriggered experiments, the chattering effect is less prominent in the latter. Furthermore, the overshoots in transient time are lower in both the X and Y errors for the time-triggered scenario than those of the event-triggered scenario.
The angular error evolutions are depicted in Figure 7. Overall, all errors converge to zero after the first 30 s. It can be seen that the overshoot in the transient time of the case shown in Figure 7a is lower than those of the cases shown in Figure 7c,d. This can be explained by the fact that the simulation did not account for the weights of the PC and battery installed on the mobile robot. This leads to an increase in the inertia of moment in the actual robot, causing large overshoot. Moreover, the choice of the initial positions of the mobile robot affects the overshoot as well as the convergence time of the response. For instance, a larger initial value ofb for the case of the ellipse trajectory, shown in Figure 7b, can cause a more considerable overshoot than that of the circular trajectory, shown in Figure 7a; however, the convergence time of the former is faster. explanation for this phenomenon is that the ellipse trajectory possesses abrupt changes in velocities; however, the proposed controller is derived from a kinematic model, and such a controller can only perform well for a trajectory with almost linear velocities. Regarding the experimental results, it can be seen that the event-triggered scenario (Figure 5c) has a larger error boundary and a slower convergence rate than the time-triggered scenario (Figure 5d). This deviation is attributed to the continuous update of the control signal of the time-based update as opposed to the event-based update. From Figure 6, it can be seen that the errors of and in all scenarios are bounded despite existing fluctuations. The convergence rate can also be accelerated by choosing a higher gain . However, the chattering phenomenon will worsen over time and ultimately degrade the control performance. In Figure 6a, the error of reaches a peak at around 28 s. The same situation can also be seen in Figure 6b,c, albeit to a lesser extent. This can be attributed to the fact that during the first lap (0-30 s), the trajectory tracking of the mobile robot is still considered to be in the transient phase where the controller is adapting to the trajectory, and overshoot may occur as a result. Additionally, the use of pseudo-inverse in the matrix calculation of Equation (11) may cause some abnormalities depending on the simulation platform in some cases. As for the event-triggered and timetriggered experiments, the chattering effect is less prominent in the latter. Furthermore, the overshoots in transient time are lower in both the and errors for the time-triggered scenario than those of the event-triggered scenario.  In general, the chattering phenomenon is much more prominent for the cases shown in Figure 8a,b than for the cases shown in Figure 8c, d, due to the amplitude of the reference velocities. In order to reduce the chattering effect, a saturation function can be implemented in place of the sign function or by implementing an advanced sliding mode controller such as high-order sliding mode and super-twisting sliding mode. Again, the velocities of the mobile robot under the control of the event-triggered scheme (Figure 8c) chatter more heavily than those controlled by the time-triggered scheme (Figure 8d). One reason is that the time interval between each update of the control input in the event-triggered case is higher, which causes a more significant error between each update and amplifies the chattering effect.
of the mobile robot is still considered to be in the transient phase where the controller is adapting to the trajectory, and overshoot may occur as a result. Additionally, the use of pseudo-inverse in the matrix calculation of Equation (11) may cause some abnormalities depending on the simulation platform in some cases. As for the event-triggered and timetriggered experiments, the chattering effect is less prominent in the latter. Furthermore, the overshoots in transient time are lower in both the and errors for the time-triggered scenario than those of the event-triggered scenario. The angular error evolutions are depicted in Figure 7. Overall, all errors converge to zero after the first 30 s. It can be seen that the overshoot in the transient time of the case shown in Figure 7a is lower than those of the cases shown in Figure 7c,d. This can be explained by the fact that the simulation did not account for the weights of the PC and battery installed on the mobile robot. This leads to an increase in the inertia of moment in the actual robot, causing large overshoot. Moreover, the choice of the initial positions of the mobile robot affects the overshoot as well as the convergence time of the response. For instance, a larger initial value of for the case of the ellipse trajectory, shown in Figure  7b, can cause a more considerable overshoot than that of the circular trajectory, shown in Figure 7a; however, the convergence time of the former is faster. On the subject of estimating the parameters, the goal of the adaptive parameter scheme is to ensure that the estimated parameters are bounded and stable. In both the simulation and experimental results, the estimated parameters remained bounded, as shown in Figure 9. The responses of the parameters in the transient time are affected by the choice of the gains γ 1 and γ 2 ; instability for the estimated parameters will occur if the gains are chosen too high. explained by the fact that the simulation did not account for the weights of the PC and battery installed on the mobile robot. This leads to an increase in the inertia of moment in the actual robot, causing large overshoot. Moreover, the choice of the initial positions of the mobile robot affects the overshoot as well as the convergence time of the response. For instance, a larger initial value of for the case of the ellipse trajectory, shown in Figure  7b, can cause a more considerable overshoot than that of the circular trajectory, shown in Figure 7a; however, the convergence time of the former is faster. As for the triggering time, Figure 10 shows the time interval when the event is triggered, which is represented by pulse signals. Overall, the performances of the simulations and the experiment are nearly identical because the choice of the triggering threshold is the same. In the simulation, with the sampling time of 0.01 s, it can be calculated that the control input has to be updated 30,000 times, as shown in Figures 10a and 10b, respectively. However, the implementation of the event-triggered strategy has reduced the times needed for updating to 12,050 and 17,070 times, which is significantly lower (accounting for 40% and 56.9% of the original). For the event-triggered experimental result, the control input for the event-triggered strategy is generated and updated 41,280 times in comparison with 60,000 times of the traditional controller, accounting for 68.8% of the total update intervals. This can be considered the advantage of the event-triggered strategy because it helped save computing resources.
The inter-event time denoted in plus signs for scenario 1, scenario 2, and the experiment is also shown in Figure 11. The efficiency of saving computing resources can be investigated through the inter-event time, with a high value signifying the system is not required to update for a long time, thus reducing frequent control computation. In general, the lowest inter-event time is 0.01 s for all cases. The inter-event time can reach up to 0.06 s and 0.1 s, as shown in Figures 11a and 11b, respectively. In the event-triggered experiment shown in Figure 11c, 0.12 s is the highest inter-event time but it only occurs once, whereas the averages are 0.03 s, 0.02 s, and 0.01 s. In contrast, the inter-event time for the time-triggered experiment is always 0.01 s, as shown in Figure 11d, as the control input is updated at a fixed time interval. mented in place of the sign function or by implementing an advanced sliding mode controller such as high-order sliding mode and super-twisting sliding mode. Again, the velocities of the mobile robot under the control of the event-triggered scheme (Figure 8c) chatter more heavily than those controlled by the time-triggered scheme (Figure 8d). One reason is that the time interval between each update of the control input in the eventtriggered case is higher, which causes a more significant error between each update and amplifies the chattering effect. To improve the inter-event time and reduce the number of triggered events, we can increase the threshold value for the triggering rule at the cost of precision. If the threshold value is sufficiently large, the control signals may not be updated for a long time, leading to the system's instability as the controller cannot react quickly enough to drive the states' errors to zero. On the contrary, a lower threshold means the computations of the control signals are more frequent, thus the states' errors may not have any difficulty in converging to zero.
On the subject of estimating the parameters, the goal of the adaptive parameter scheme is to ensure that the estimated parameters are bounded and stable. In both the simulation and experimental results, the estimated parameters remained bounded, as shown in Figure 9. The responses of the parameters in the transient time are affected by the choice of the gains and ; instability for the estimated parameters will occur if the gains are chosen too high. As for the triggering time, Figure 10 shows the time interval when the event is triggered, which is represented by pulse signals. Overall, the performances of the simulations and the experiment are nearly identical because the choice of the triggering threshold is the same. In the simulation, with the sampling time of 0.01 s, it can be calculated that the control input has to be updated 30,000 times, as shown in Figure 10a and Figure 10b, respectively. However, the implementation of the event-triggered strategy has reduced the times needed for updating to 12,050 and 17,070 times, which is significantly lower (accounting for 40% and 56.9% of the original). For the event-triggered experimental result, the control input for the event-triggered strategy is generated and updated 41,280 times in comparison with 60,000 times of the traditional controller, accounting for 68.8% of the total update intervals. This can be considered the advantage of the event-triggered strategy because it helped save computing resources. The inter-event time denoted in plus signs for scenario 1, scenario 2, and the experiment is also shown in Figure 11. The efficiency of saving computing resources can be investigated through the inter-event time, with a high value signifying the system is not required to update for a long time, thus reducing frequent control computation. In general, the lowest inter-event time is 0.01 s for all cases. The inter-event time can reach up to 0.06 s and 0.1 s, as shown in Figure 11a and Figure 11b, respectively. In the event-triggered experiment shown in Figure 11c, 0.12 s is the highest inter-event time but it only occurs once, whereas the averages are 0.03 s, 0.02 s, and 0.01 s. In contrast, the inter-event time for the time-triggered experiment is always 0.01 s, as shown in Figure 11d, as the control input is updated at a fixed time interval. required to update for a long time, thus reducing frequent control computation. In general, the lowest inter-event time is 0.01 s for all cases. The inter-event time can reach up to 0.06 s and 0.1 s, as shown in Figure 11a and Figure 11b, respectively. In the event-triggered experiment shown in Figure 11c, 0.12 s is the highest inter-event time but it only occurs once, whereas the averages are 0.03 s, 0.02 s, and 0.01 s. In contrast, the inter-event time for the time-triggered experiment is always 0.01 s, as shown in Figure 11d, as the control input is updated at a fixed time interval. To improve the inter-event time and reduce the number of triggered events, we can increase the threshold value for the triggering rule at the cost of precision. If the threshold value is sufficiently large, the control signals may not be updated for a long time, leading to the system's instability as the controller cannot react quickly enough to drive the states' errors to zero. On the contrary, a lower threshold means the computations of the control signals are more frequent, thus the states' errors may not have any difficulty in converging to zero.

Conclusions
This paper presented a parameter-adaptive event-triggered sliding mode controller for a mobile robot. While the sliding mode controller drives the state variables to zero, the event-triggered scheme reduces the time needed for the microcontroller to calculate control input, thus saving resources. To further improve the accuracy of the controller, the adaptive method is also utilized to estimate the unknown physical parameters of the mobile robot. Simulations and experiments are performed to verify the effectiveness of the proposed controller in terms of errors and stability. Despite the tracking error convergence to zero, the control system is affected by the chattering phenomenon, and the convergence rate is still not optimized. In future work, these issues will be considered by utilizing an improved version of the sliding mode algorithm, such as a super-twisting algorithm. Additionally, the implementation of the proposed controller for a network control scheme using a standard messaging protocol in the application layer of the TCP/IP model, such as Message Queuing Telemetry Transport (MQTT), will be an interesting topic.

Conclusions
This paper presented a parameter-adaptive event-triggered sliding mode controller for a mobile robot. While the sliding mode controller drives the state variables to zero, the event-triggered scheme reduces the time needed for the microcontroller to calculate control input, thus saving resources. To further improve the accuracy of the controller, the adaptive method is also utilized to estimate the unknown physical parameters of the mobile robot. Simulations and experiments are performed to verify the effectiveness of the proposed controller in terms of errors and stability. Despite the tracking error convergence to zero, the control system is affected by the chattering phenomenon, and the convergence rate is still not optimized. In future work, these issues will be considered by utilizing an improved version of the sliding mode algorithm, such as a super-twisting algorithm. Additionally, the implementation of the proposed controller for a network control scheme using a standard messaging protocol in the application layer of the TCP/IP model, such as Message Queuing Telemetry Transport (MQTT), will be an interesting topic.