IAES International Journal of Robotics and Automation (IJRA)
Vol. 13, No. 1, March 2024, pp. 1~10
ISSN: 2722-2586, DOI: 10.11591/ijra.v13i1.pp1-10 1
A Lyapunov based posture controller for a differential drive
mobile robot
Boualem Kazed1, Abderrezak Guessoum2
1
Electrical and Remote-Control Systems Laboratory (LAB SET), Department of Automatics and Electrical Engineering,
Faculty of Technology, University of Blida, Blida, Algeria
2
Signal Processing and Image Laboratory (LATSI), Department of Electronics, Faculty of Technology, University of Blida,
Blida, Algeria
Article Info ABSTRACT
Article history: Driving a vehicle to a desired position and orientation is one of the most
important problems that should be solved in most navigation systems. This
Received Nov 13, 2023 paper describes a new complete design and hardware implementation of a
Revised Dec 2, 2023 two-level controller that will enable a differential drive mobile robot to reach
Accepted Dec 18, 2023 any desired posture starting from any initial position. The first or low-level
controller consists of a set of two proportional–integral–derivative (PID)
controllers, running on an embedded system on board of the robot. These
Keywords: controllers provide the required voltages to the motors to make the left and
right wheels of the robot rotate with the angular speeds computed by the
Hardware in the loop second or high-level controller, running on a stationary PC system. This
Lyapunov controller second controller is based on the Lyapunov stability theorem to derive two
Posture control control laws for the kinematic model, used to transform the linear and
Real-time control angular speeds of the unicycle model in terms of left and right rotational
Trajectory tracking speeds, required by the motors. As will be shown later, this architecture
Unicycle robots provides a very flexible way not only to tune the main controller parameters
but also to get access and record all the system states.
This is an open access article under the CC BY-SA license.
Corresponding Author:
Boualem Kazed
Department of Automatics and Electrical Engineering, Faculty of Technology, University of Blida
Route de Soumaa, Blida, Algeria
Email: [email protected]
1. INTRODUCTION
Regardless of their mechanical structures, the main common problem for any mobile robot is motion
control. Among all the existing configurations, differential drive mobile robots (DDMR) are widely used in
indoor applications. This paper aims to present and implement a nonlinear, multivariable controller that will
generate appropriate linear and angular speeds required by a mobile robot to move from a known initial
position to a new target or desired posture. Solving this problem for a couple of consecutive points can
therefore be considered as a very interesting alternative for the problem of trajectory tracking. Many of the
recent research topics have tackled this problem using different control strategies, among these [1]–[3] have
used the Lyapunov theory to derive the control laws allowing the robot to follow a predefined trajectory.
Several other researchers [4]–[10] have proposed different approaches to solve the same problem. The
reasons behind this interest are the possible real-world applications in various fields such as agriculture,
shipping, cleaning, security, and many others. The main controller adopted in this study is based on the same
state space model used in [11]–[16], from which we have defined an appropriate Lyapunov function and
most importantly a new steering control law leading to a more straightforward proof for the asymptotic
system stability, which was not clearly defined in the literature. In [17]–[19], two switching control laws are
Journal homepage: http://ijra.iaescore.com
2 ISSN: 2722-2586
proposed for the linear and angular velocities based on the relative initial and final postures. In [20], a
Lyapunov-based controller derived from a function using the cartesian coordinates error is proposed.
Widyotriatmo et al. [21] have suggested two separate Lyapunov function control schemes depending on the
robot's closeness to the target position. Two different approaches namely time-varying oscillatory stabilizer
and vector field orientation have been proposed in [22]. In [23], the feedback linearization technique has been
utilized to derive a proportional-derivative (PD) controller for the position and orientation tracking problem.
A linear controller adding an intermediate point to control the robot orientation has been used in [24]. A
linearized kinematic model for the unicycle robot has been described and used to obtain a set of three
proportional–integral–derivative (PID) controllers to solve the problem of path planning [25]. A finite time
control technique has been adopted to stabilize the position of a mobile robot on a target posture using a
bilinear structure for which two linear switching controllers are selected for each of the two subsystems [26].
The problem of posture stabilization using a passivity-based robust switching control has been described in
[27]. In [28], a controller based on the transverse functions concept is presented, allowing the robot to track
an omnidirectional moving target. Artificial intelligent-based approaches using reinforcement learning
methods have been proposed to simulate the controlled robot movements to make it reach a predefined target
position [29], [30]. An important feature of the present work is the modularity of the hardware
implementation used to control the robotic platform specifically designed for this purpose. Unlike many of
the results found in the literature, which are mainly based on simulation, the results shown in the related
section are solely obtained from the experimental setup described in section 4.
The structure of this paper is organized as follows. Section 2 provides the detailed derivation of the
DDMR kinematic model and its representation in terms of a state space model using polar coordinates. This
model will then be used to design the high-level Lyapunov based controller, whose inputs are the desired
robot posture data, and the outputs are the linear and angular velocities of the equivalent unicycle model. The
experimental hardware platform used in this project is presented in Section 3, this also includes an overview
of the low-level PID controllers used to generate the rotational reference speeds for each of the left and right
direct current (DC) motors coupled with the wheels of the DDMR. All of the above topics will be put
together in Section 4, this will include some real-life tests to evaluate the performance of the proposed
approach. An overall conclusion will be drawn in Section 5.
2. SYSTEM MODELING AND CONTROL
2.1. Kinematic model of the DDMR
Figure 1 shows an example of a robot moving between two consecutive postures P1=(x1, y1, 𝜃1 ) and
P2 = (x2, y2, 𝜃2 ). Considering that these changes took place in a very short time ∆𝑡 we can assimilate the portion
of the robot trajectory as an arc of a circle centered on the instantaneous center of rotation (ICR) with radius RC.
The distance traveled by the left and right wheels are 𝑆𝐿 = 𝑅𝐿 𝛼 and 𝑆𝑅 = 𝑅𝑅 𝛼 respectively, at the same time
the robot (center) covered the distance 𝑆𝐶 = 𝑅𝐶 𝛼. If we divide the terms of these equations by ∆𝑡 we obtain the
linear velocities; 𝑣𝐿 = 𝑅𝐿 𝛼̇ , 𝑣𝑅 = 𝑅𝑅 𝛼̇ , and 𝑣 = 𝑅𝐶 𝛼̇ . Note that 𝑅𝑅 = 𝑅𝐿 + 𝐿, L being the distance between the
robot wheels, we will then have; 𝑣𝑅 − 𝑣𝐿 = ((𝑅𝐿 + 𝐿) − 𝑅𝐿 )𝛼̇ = 𝐿𝛼̇ . Notice that 𝛼 = 𝜃2 − 𝜃1 = ∆𝜃, this will
imply that 𝛼̇ = 𝜃̇. Considering 𝜔𝐿 and 𝜔𝑅 as the left and right wheels angular speeds we have 𝑣𝐿 = 𝑟𝑤𝐿 and
𝑣𝑅 = 𝑟𝑤𝑅 , with r=D/2 being the radius of the robot wheels. Finally, we have 𝑟𝜔𝑅 − 𝑟𝑤𝐿 = 𝑟(𝜔𝑅 − 𝜔𝐿 ) =
𝐿𝜃̇, 𝜃̇ is the angular velocity of the robot around the ICR, it will be denoted by Ω, this gives us (1).
Figure 1. DDMR elementary displacements in a fixed frame (x, y)
IAES Int J Rob & Autom, Vol. 13, No. 1, March 2024: 1-10
IAES Int J Rob & Autom ISSN: 2722-2586 3
𝑟
Ω = (𝜔𝑅 − ωL ) (1)
𝐿
From Figure 1, we have 𝑅𝐶 = 𝑅𝐿 + 𝐿/2 and 𝑅𝐶 = 𝑅𝑅 − 𝐿/2, therefore 2𝑅𝐶 = 𝑅𝐿 + 𝑅𝑅 or 𝑅𝐶 = (𝑅𝐿 +
𝑅𝑅 )/2 multiplying these terms by 𝛼̇ will give 𝑅𝐶 𝛼̇ = (𝑅𝐿 𝛼̇ + 𝑅𝑅 𝛼̇ )/2 which can be rewritten as: 𝑣 = (𝑣𝐿 +
𝑣𝑅 )/2 or 𝑣 = (𝑟𝜔𝐿 + 𝑟𝜔𝑅 )/2, finally:
𝑟
𝑣 = (𝜔𝑅 + 𝜔𝐿 ) (2)
2
Equations (1) and (2) define the relationship between the DDMR driven by 𝜔𝐿 and 𝜔𝑅 and the
unicycle model whose inputs are the linear and angular velocities 𝑣 and the Ω respectively. The projections
of the linear velocity v along the x and y axis are 𝑣𝑥 = 𝑥̇ = 𝑣 cos 𝜃 and 𝑣𝑦 = 𝑦̇ = 𝑣 sin 𝜃. Gathering these
equations gives the kinematic model of the DDMR.
𝑥̇ = 𝑣 cos 𝜃
{ 𝑦̇ = 𝑣 sin 𝜃 (3)
𝜃̇ = Ω
2.2. State space model
Most of the known control approaches require a form of mathematical model for a system to be
controlled, among these, state space representation is very often the preferred option. Figure 2 illustrates the
situation where the robot is required to move between two postures P1 and P2(x, y, θ2). To achieve this goal
the robot needs to compute both the linear and angular speeds at each sample time. The translational part of
the movement is obtained from the projection of the robot linear speed v, on the direction of the line joining
the starting and final positions, this is designated by vρ. The orientation changes have to be made taking into
account the fact that the total steering angle is a combination of two different angles; α is the part that makes
the robot orient itself towards the final position and β the angle that directs it to the desired orientation θ2.
The overall robot behavior can be modeled by (4).
Figure 2. DDMR posture transition
𝜌 = √𝑥 2 + 𝑦 2
{𝛼 = tan−1 𝑦 − 𝜃1 (4)
𝑥
𝛽 = −𝛼 + ∆𝜃
When the robot is moving towards its final goal the rate of change of the distance ρ is decreasing.
This can be written as; 𝜌̇ = 𝑣𝜌 = −𝑣 cos 𝛼. Figure 2 shows that 𝛽1 is the portion of 𝛽 that makes the robot
align with the final orientation, therefore its rate of change 𝛽1̇ = 𝛽̇ which implies that 𝜌𝛽̇ = 𝑣𝛽 = −𝑣 sin 𝛼.
Using the third part of (4) we get 𝛼 = −𝛽 + (𝜃2 − 𝜃1 ), because 𝜃2 does not change and 𝜃̇1 = 𝜃̇ we have
𝛼̇ = −𝛽̇ − 𝜃̇ = −𝛽̇ − Ω. Finally, the system can be represented by the state space model (5).
A Lyapunov based posture controller for a differential drive mobile robot (Boualem Kazed)
4 ISSN: 2722-2586
𝜌̇ = −𝑣 cos 𝛼
𝑣
{ 𝛽̇ = − sin 𝛼 (5)
𝜌
𝑣
𝛼̇ = sin 𝛼 − Ω
𝜌
2.3. Control design
From Figure 2, we can easily observe that the present control problem consists in finding a proper
control law 𝑢 = 𝑓(𝑣, Ω) that will drive the state variables (𝜌, 𝛽, 𝛼) to (0, 0, 0). Let us use the quadratic form
as a Lyapunov function (6).
1
𝑉 = (𝜌2 + 𝛼 2 + 𝛽 2 ) (6)
2
Therefore
𝑣 𝑣
𝑉̇ = 𝜌𝜌̇ + 𝛼𝛼̇ + 𝛽𝛽̇ = 𝜌(−𝑣 cos 𝛼) + 𝛼 ( sin 𝛼 − Ω) + 𝛽(− sin 𝛼) or
𝜌 𝜌
𝑣 𝑣
𝑉̇ = −𝑣𝜌 cos 𝛼 − 𝛼Ω + 𝛼 sin 𝛼 − 𝛽 sin 𝛼 (7)
𝜌 𝜌
As already mentioned, 𝑣 and Ω are the system control inputs. Let us use the law in (8) for the linear speed 𝑣,
with 𝑘𝜌 a positive constant.
𝑣 = 𝑘𝜌 𝜌 cos 𝛼 (8)
This will give
𝑘 𝜌 cos 𝛼 𝑘 𝜌 cos 𝛼
𝑉̇ = −𝑘𝜌 𝜌2 cos 𝛼 2 − 𝛼Ω + 𝛼 𝜌 sin 𝛼 − 𝛽 𝜌 sin 𝛼
𝜌 𝜌
𝑉̇ = −𝑘𝜌 𝜌2 cos 𝛼 2 − 𝛼Ω + 𝑘𝜌 𝛼 cos 𝛼 sin 𝛼 − 𝑘𝜌 𝛽 cos 𝛼 sin 𝛼 (9)
If we choose another positive constant 𝑘𝛼 and the angular Ω speed as (10).
sin 𝛼
Ω = 𝑘𝛼 𝛼 + 𝑘𝜌 (𝛼 − 𝛽) cos 𝛼 (10)
𝛼
We will have
𝑉̇ = −𝑘𝜌 𝜌2 cos 𝛼 2 − 𝑘𝛼 𝛼 2 (11)
Using the above control signals, the state space model (5) becomes (12).
𝜌̇ = −𝑘𝜌 ρ cos 𝛼 2
{ 𝛽̇ = −𝑘𝜌 cos 𝛼 sin 𝛼 (12)
sin 𝛼
𝛼̇ = −𝑘𝜌 (𝛼 − 𝛽) cos 𝛼 + 𝑘𝛼 𝛼 + 𝑘𝜌 cos 𝛼 sin 𝛼
𝛼
Using the Lyapunov theory if we can prove that 𝑉̇ is negative definite then the system described in
(12) is asymptotically stable around the state (𝜌, 𝛼, 𝛽) = (0, 0, 0). From (11) we have 𝑉̇ (0, 0, 𝛽) = 0, which
sin 𝛼
would mean that 𝑉̇ is negative semi-definite, we can also observe that when 𝛼 = 0, = 1 and the third part
𝛼
of (12) becomes 𝛼̇ = 𝑘𝜌 𝛽, but 𝛼 = 0 means that the system has reached its final state which infers that 𝛼
remains constant and then 𝛼̇ = 0 consequently 𝛽 = 0. Finally, we can conclude that 𝑉̇ = 0 only if (𝜌, 𝛼, 𝛽) =
(0, 0, 0) which proves that the control laws (8) and (10) drive the system to an asymptotically stable state.
3. MOTOR SPEED CONTROL
To enable the robot, execute the required movements, the control laws previously defined must be
transformed in terms of 𝜔𝐿 and 𝜔𝑅 , the robot left and right wheels angular velocities. These can be derived
from (1) and (2) to get the following inverse unicycle model.
IAES Int J Rob & Autom, Vol. 13, No. 1, March 2024: 1-10
IAES Int J Rob & Autom ISSN: 2722-2586 5
𝑣 𝐿Ω
𝜔𝐿 = − (13)
𝑟 2𝑟
𝑣 𝐿Ω
𝜔𝑅 = + (14)
𝑟 2𝑟
In order to ensure that 𝜔𝐿 and 𝜔𝑅 have actually the values defined in (13) and (14), these must be
properly controlled using two separate closed loop subsystems as illustrated in Figure 3. Note that 𝜔𝐿𝑀 and
𝜔𝑅𝑀 are the measured speeds obtained from the derivatives of the angular positions, generated by the
embedded quadrature encoders modules of the Microchip DSPic33fj64mc802 microcontroller.
Figure 3. Embedded motor speed controller’s block diagram
From the block diagram of Figure 3, we can distinguish 3 different colored zones. The inner yellow
box shows that the two PID speed controllers have been implemented in a firmware flashed in the
microcontroller program memory, the light-red rectangle represents the microcontroller with some of its
embedded modules and the green area is the self-made electronic board, on which the microcontroller and all
the required elements have been mounted. The aforementioned program receives the reference values of 𝜔𝐿
and 𝜔𝑅 through the serial universal asynchronous receiver-transmitter (UART) unit and delivers the PID
control signals to the PWM modules, whose outputs are connected to the inputs of the L298N double H-
bridge. Prior to implementing these controllers, their 𝑘𝑃 , 𝑘𝐼 and 𝑘𝐷 parameters have been obtained using the
following procedure: A mathematical model of one of the geared DC motors coupled with its wheels has
been derived using the MATLAB system identification toolbox. Using the MATLAB/Simulink pidtuner
toolbox, this model was then used to tune the PID parameters in a separate simulation program.
4. SIMULATION AND EXPERIMENTAL RESULTS
4.1. High-level controller implementation
Before showing the results obtained during the experiments we carried out, we have summarized the
whole process of the proposed control scheme in a graphical format as shown in Figure 4. This bloc diagram
clarifies the sequential operations involved after the introduction of the desired posture by the program user.
As already mentioned, this program runs on top of the MATLAB/Simulink environment and is linked to the
mobile robot through a serial communication hardware protocol, this is known as hardware in the loop (HIL)
system. It should be noted that this is a real-time process and to make it work requires suitable sampling
frequency and proper data formatting and parsing on both sides i.e., on the embedded control board and the
computer side.
A Lyapunov based posture controller for a differential drive mobile robot (Boualem Kazed)
6 ISSN: 2722-2586
Figure 4. Bloc diagram of the high-level controller (M indices for measured signals)
4.2. Robotic platform
The constructed robotic platform used in this work is shown in Figure 5, most of the mechanical
structure is made of plastic parts joined together with M8 and M6 nuts and bolts. From a purely theoretical
point of view, such a physical system would require a dynamic model-based controller. This was not exactly
the case in this study, where the kinematic model was the starting point of the designed controller.
Nevertheless, the fact that the two PID speed controllers’ parameters were tuned based on the dynamic model
of the Maxon DC motor ref: 110147, coupled with an 84:1 reduction gearhead, including the robot wheels,
the influence of the rest of the robot's physical parameters will not significantly change the robot overall
behavior. Additionally, knowing that this robot will not be subject to very high accelerations, the kinematic
model described above can be considered as good enough for developing a working controller.
Figure 5. Picture of the self-made mobile robot
4.3. Results and discussions
The numerical values of the constants used in the experiments are listed in Table 1. The 𝑘𝜌 and 𝑘𝛼
parameters were obtained after a few iterations of trial-and-error testing using the proposed controller,
applied to the complete system represented in Figures 3 and 4. For practical reasons, these parameters were
tuned with the robot wheels rotating freely, without any contact with the ground.
Table 1. PID and Lyapunov controllers’ parameters
𝑘𝑃 𝑘𝐼 𝑘𝐷 𝑘𝜌 𝑘𝛼
0.0127 0.1573 0 0.8 1.8
IAES Int J Rob & Autom, Vol. 13, No. 1, March 2024: 1-10
IAES Int J Rob & Autom ISSN: 2722-2586 7
Tuning these parameters with the robot moving on the ground would have been very difficult and
very time-consuming. The selection of these final values was based on the observations of the system
response in terms of both the error amplitudes and the time it takes to reach the desired posture. Several test
runs have been executed as shown in Figure 6. As can be noticed these pictures were obtained by
superimposing two photos; the first one being a sequence of several snapshots selected from recorded videos,
taken during the robot movements. The second ones represent the robot trajectories and their successive
positions, simulated using a MATLAB script that uses the robot postures actual data (x, y, θ), recorded during
the program executions. Figure 7 shows a sample of these plots, for the case f in Figure 6. From the top half
of this figure, we can observe that the system states (𝜌, 𝛼, 𝛽) (dashed lines) all converge to (0, 0, 0) as the
robot tracks the desired posture. This confirms the asymptotic stability of the state space system (12). From
the bottom part of this figure, we can see that the measured left and right motors rotational speeds 𝜔𝐿𝑀 and
𝜔𝑅𝑀 are very close to 𝜔𝐿 and 𝜔𝑅 requested by the high-level Lyapunov controller. This proves that the two
embedded PID controllers are performing very well. From the sample runs in Figure 6 we can also notice that
when the robot is close to its final posture the linear speed v is always positive, this comes from its definition
in (8), where the sign of cos 𝛼 is positive because, when this happens, α is close to zero. This may suggest
that, for situations where the final goal is behind the starting position, as in the f, g, and h cases in Figure 6, a
better alternative would be to modify the control law (8) to make the robot move following a shorter trajectory.
a-Desired posture = (1.25, 0.75, 0) b-Desired posture = (1.25, 0.75, -𝜋/2)
c-Desired posture = (1.25, 0.75, 𝜋) d-Desired posture = (1.25, -0.5, 𝜋)
e-Desired posture = (1.25, -0.5, 𝜋/2) f-Desired posture = (-1.25, 0.5, 3𝜋/2)
g-Desired posture = (-1.25, -0.5, 3𝜋/4) h-Desired posture = (-1.25, 0, 0)
Figure 6. Sample tests of the robot movements to reach desired postures in the 4 quadrants
A Lyapunov based posture controller for a differential drive mobile robot (Boualem Kazed)
8 ISSN: 2722-2586
Figure 7. Time plots for the case where the desired posture is (x, y, θ) = (-1.25, 0.5, 3𝜋/2)
5. CONCLUSION
In this paper, a complete non-linear Lyapunov based controller was presented and applied to drive a
unicycle-like robot to a desired posture. This was achieved on an experimental platform including the self-built
mobile robot and a stationary personal computer (PC) system, on which this controller is implemented. The
main reason for this architecture was not only to provide more flexibility for the controller’s gains tuning, but
also the possibility to implement and test any other suitable controller on the same PC. From the sample tests
shown in Figures 6 and 7 and many others, the proposed controller has proven to give very good results in
terms of the precision attained for both the final position and orientation. Further investigation to find a way to
optimize the 𝑘𝜌 and 𝑘𝛼 gains of this controller, would probably result in a faster output response, especially for
the final orientation, which takes much more time to stabilize than the set point position.
ACKNOWLEDGEMENTS
The authors would like to thank the support of the Algerian Ministry of Higher Education and
Scientific Research through the PRFU project no. A01L08UN090120220001.
IAES Int J Rob & Autom, Vol. 13, No. 1, March 2024: 1-10
IAES Int J Rob & Autom ISSN: 2722-2586 9
REFERENCES
[1] M. Elsayed, A. Hammad, A. Hafez, and H. Mansour, “Real time trajectory tracking controller based on Lyapunov function for
mobile robot,” International Journal of Computer Applications, vol. 168, no. 11, pp. 1–6, Jun. 2017, doi:
10.5120/ijca2017914540.
[2] A. M. Ali, A. Hussein, and M. Hassan, “Path tracking for nonholonomic mobile robot by using advance Lyapunov-based control
laws,” International Journal of Engineering and Technology, vol. 9, no. 2, pp. 200–206, Mar. 2019, doi: 10.14741/ijcet/v.9.2.1.
[3] R. Kubo, Y. Fujii, and H. Nakamura, “Control Lyapunov function design for trajectory tracking problems of wheeled mobile
robot,” IFAC-PapersOnLine, vol. 53, no. 2, pp. 6177–6182, 2020, doi: 10.1016/j.ifacol.2020.12.1704.
[4] L. Xiao-Feng, Z. Ren-Fang, and C. Guo-Ping, “A New non-time based tracking control for mobile robot,” International Journal
of Robotic Engineering, vol. 5, no. 1, Dec. 2020, doi: 10.35840/2631-5106/4125.
[5] S. Cao, Y. Jin, T. Trautmann, and K. Liu, “Design and experiments of autonomous path tracking based on dead reckoning,”
Applied Sciences (Switzerland), vol. 13, no. 1, p. 317, Dec. 2023, doi: 10.3390/app13010317.
[6] J. Zhang, Q. Gong, Y. Zhang, and J. Wang, “Finite-time global trajectory tracking control for uncertain wheeled mobile robots,”
IEEE Access, vol. 8, pp. 187808–187813, 2020, doi: 10.1109/ACCESS.2020.3030633.
[7] Y. M. Choi and J. H. Park, “Game-based lateral and longitudinal coupling control for autonomous vehicle trajectory tracking,”
IEEE Access, vol. 10, pp. 31723–31731, 2022, doi: 10.1109/ACCESS.2021.3135489.
[8] N. Hassan and A. Saleem, “Neural network-based adaptive controller for trajectory tracking of wheeled mobile robots,” IEEE
Access, vol. 10, pp. 13582–13597, 2022, doi: 10.1109/ACCESS.2022.3146970.
[9] M. J. Rabbani and A. Y. Memon, “Trajectory tracking and stabilization of nonholonomic wheeled mobile robot using recursive
integral backstepping control,” Electronics (Switzerland), vol. 10, no. 16, p. 1992, Aug. 2021, doi: 10.3390/electronics10161992.
[10] L. Song, J. Huang, Q. Liang, L. Nie, X. Liang, and J. Zhu, “Trajectory tracking strategy for sliding mode control with double
closed-loop for lawn mowing robot based on ESO,” IEEE Access, vol. 11, pp. 1867–1882, 2023, doi:
10.1109/ACCESS.2022.3166816.
[11] M. Aicardi, G. Casalino, A. Bicchi, and A. Balestrino, “Closed loop steering of unicycle-like vehicles via Lyapunov techniques,”
IEEE Robotics and Automation Magazine, vol. 2, no. 1, pp. 27–35, Mar. 1995, doi: 10.1109/100.388294.
[12] S. Kumar Malu and J. Majumdar, “Kinematics, localization and control of differential drive mobile robot,” Type: Double Blind
Peer Reviewed International Research Journal Publisher: Global Journals Inc, vol. 14, 2014.
[13] T. H. Tran, M. D. Phung, T. T. Van Nguyen, and Q. V. Tran, “Stabilization control of the differential mobile robot using
Lyapunov function and extended Kalman filter,” Vietnam Journals Online, pp. 441–452, 2012.
[14] C. C. de Wit, H. Khennouf, C. Samson, and O. J. Sordalen, “Nonlinear control design for mobile robots,” in World Scientific
Series in Robotics and Intelligent Systems, WORLD SCIENTIFIC, 1994, pp. 121–156. doi: 10.1142/9789814354301_0005.
[15] K. Amar and S. Mohamed, “Stabilized feedback control of unicycle mobile robots,” International Journal of Advanced Robotic
Systems, vol. 10, no. 4, Art. no. 187, Jan. 2013, doi: 10.5772/51323.
[16] Y. Kanayama, Y. Kimura, F. Miyazaki, and T. Noguchi, “A stable tracking control method for an autonomous mobile robot,”
in Proceedings., IEEE International Conference on Robotics and Automation, 1990, pp. 384–389. doi:
10.1109/robot.1990.126006.
[17] E. Fabregas et al., “Simulation and experimental results of a new control strategy for point stabilization of nonholonomic
mobile robots,” IEEE Transactions on Industrial Electronics, vol. 67, no. 8, pp. 6679–6687, Aug. 2020, doi:
10.1109/TIE.2019.2935976.
[18] H. S. Shim and Y. G. Sung, “Stability and four-posture control for nonholonomic mobile robots,” IEEE Transactions on Robotics
and Automation, vol. 20, no. 1, pp. 148–154, Feb. 2004, doi: 10.1109/TRA.2003.819730.
[19] H. S. Shim and Y. G. Sung, “A posture control for two wheeled mobile robots,” Transaction on Control Automation, and Systems
Engineering, vol. 2, no. 3, pp. 201–206, Sep. 2000, Accessed: Jan. 24, 2024. [Online]. Available:
https://www.ijcas.org/journal/view.html?spage=201&volume=2&number=3
[20] P. Panahandeh, K. Alipour, B. Tarvirdizadeh, and A. Hadi, “A kinematic Lyapunov-based controller to posture stabilization of
wheeled mobile robots,” Mechanical Systems and Signal Processing, vol. 134, Art. no. 106319, Dec. 2019, doi:
10.1016/j.ymssp.2019.106319.
[21] A. Widyotriatmo, K. S. Hong, and L. H. Prayudhi, “Robust stabilization of a wheeled vehicle: Hybrid feedback control design and
experimental validation,” Journal of Mechanical Science and Technology, vol. 24, no. 2, pp. 513–520, Feb. 2010, doi:
10.1007/s12206-010-0105-1.
[22] K. Kozłowski, J. Majchrzak, M. Michałek, and D. Pazderski, “Posture stabilization of a unicycle mobile robot - Two control
approaches,” in Lecture Notes in Control and Information Sciences, vol. 335, London: Springer London, 2006, pp. 25–54. doi:
10.1007/978-1-84628-405-2_2.
[23] G. Oriolo, A. De Luca, and M. Vendittelli, “WMR control via dynamic feedback linearization: Design, implementation, and
experimental validation,” IEEE Transactions on Control Systems Technology, vol. 10, no. 6, pp. 835–852, Nov. 2002, doi:
10.1109/TCST.2002.804116.
[24] and A. P. A. J. F. C. Vieira, A. A. D. Medeiros, P. J. Alsina, “Position and orientation control of a two-wheeled differentially
driven nonholonomic mobile robot,” in Proceedings of the First International Conference on Informatics in Control, Automation
and Robotics, 2011, pp. 256–262. doi: 10.5220/0001138702560262.
[25] P. K. Padhy, T. Sasaki, S. Nakamura, and H. Hashimoto, “Modeling and position control of mobile robot,” in International
Workshop on Advanced Motion Control, AMC, Mar. 2010, pp. 100–105. doi: 10.1109/AMC.2010.5464018.
[26] M. Thomas, B. Bandyopadhyay, and L. Vachhani, “Posture stabilization of unicycle mobile robot using finite time control
techniques,” IFAC-PapersOnLine, vol. 49, no. 1, pp. 379–384, 2016, doi: 10.1016/j.ifacol.2016.03.083.
[27] D. Y. Jung and S. Bang, “Posture stabilization of wheeled mobile robot based on passivity -based robust switching control
with model uncertainty compensation,” Applied Sciences (Switzerland), vol. 9, no. 23, Art. no. 5233, Dec. 2019, doi:
10.3390/app9235233.
[28] G. Artus, P. Morin, and C. Samson, “Tracking of an omnidirectional target with a unicycle-like robot: control design and
experimental results,” Icar, no. 4849, pp. 1468–1473, Jun. 2003.
[29] F. Quiroga, G. Hermosilla, G. Farias, E. Fabregas, and G. Montenegro, “Position control of a mobile robot through deep
reinforcement learning,” Applied Sciences (Switzerland), vol. 12, no. 14, Art. no. 7194, Jul. 2022, doi: 10.3390/app12147194.
[30] G. Farias, G. Garcia, G. Montenegro, E. Fabregas, S. Dormido-Canto, and S. Dormido, “Position control of a mobile robot using
reinforcement learning,” IFAC-PapersOnLine, vol. 53, no. 2, pp. 17393–17398, 2020, doi: 10.1016/j.ifacol.2020.12.2093.
A Lyapunov based posture controller for a differential drive mobile robot (Boualem Kazed)
10 ISSN: 2722-2586
BIOGRAPHIES OF AUTHORS
Boualem Kazed received the Ing. d’etat degree in electronics engineering from the
National Polytechnics of Algiers in 1985 and an MPhil degree from the control engineering
department of the University of Sheffield UK, in 1988. Since 1989 he has been teaching
different graduate and postgraduate courses in electronics and control engineering, he has also
supervised more than 160 final year projects related to real time data acquisition, control systems
and robotics. He has been involved in many conferences and other activities related to
educational robotics. His research interests include real-time control systems, mobile and
industrial robotics. He can be contacted at email: [email protected].
Abderrezak Guessoum received a BS degree in electronics from the Ecole
Nationale Polytechnique d'Alger, Algeria, in 1976. He then went to Georgia Institute of
Technology in Atlanta, Ga, USA, where he obtained first, a master’s in electrical engineering in
1979, and then, a master’s in applied mathematics in 1980 and finally a PhD in electrical
engineering, in 1984. He worked as an Assistant Professor in the School of Computer Science at
Jackson State University, Mississippi, USA, from 1984 to 1985. He has been with the Université
de Blida, Algeria, as a professor in the department of Electronics, since 1988. Prof. Guessoum is
the head of the Digital Signal and Image Processing Research Laboratory. His current research
interests include digital filter design, adaptive filters, intelligent control, neural networks, genetic
algorithms, robust control, metaheuristic optimization and fuzzy logic. He is the author of more
than a hundred scientific articles. He can be contacted at:
[email protected].
IAES Int J Rob & Autom, Vol. 13, No. 1, March 2024: 1-10