2.1. WMR’s Kinematic Model
The mathematical relationship between the WMR’s overall motion and the individual wheel velocities is described by its kinematic model [
46]. Specifically, this involves mapping the WMR’s angular and linear velocities to the velocities of left and right wheels [
47]. Assuming that the WMR operates on a plane and the wheels do not slip, its motion can be described via the following set of velocity components.
where
is the WMR’s linear velocity along the
-axis dictating the forward (or backward) motion,
is its linear velocity along the
-axis dictating the sideways motion, and
is its angular velocity around the vertical axis dictating the rotation. The configuration of a differentially driven WMR in a global coordinate frame is summarized in terms of the following state variables.
where
is the robot’s position along the
-axis,
is the robot’s position along the
-axis, and
is the robot’s heading angle (or orientation). The forward kinematics of the WMR are described through the formulations in (3) and (4) of the WMR’s linear velocity
and angular velocity
.
where
is the velocity of right wheel,
is the velocity of left wheel,
is the wheel’s radius, and
is the gap between the two wheel’s centers (wheel base). The posture of the WMR about a given set of coordinates
is shown in
Figure 1.
The linear velocity components of the WMR along the
-axis and
-axis are represented, as shown in (5) and (6).
The WMR’s forward kinematics are expressed in terms of
,
, and
as shown below.
The equations above are rearranged, as shown in (10) and (11), to express
and
in terms of
,
, and
, [
48].
The above relationships can be represented in matrix form, as shown in (12), facilitating the transformation from robot velocities into wheel velocities.
where
is the transformation matrix. It is defined as shown in (13), [
48].
The WMR platform used for experimentation in this study has a wheel base of
and wheel radius of
(See
Figure 1).
2.2. Measurement of Robot’s Orientation and Position
The proposed robotic platform uses two different sensors to measure the WMR’s orientation and position. The wheel encoders measure wheel rotation directly to estimate the robot’s orientation and position. However, wheel slippage, wheel wear, and interaction with uneven terrains tend to distort its measurements by accumulating errors over time. The IMUs, on the other hand, provide the measurements of angular velocity and acceleration to estimate sudden changes in orientation and position. Since they have no contact with the wheel, their measurements remain unaffected by the terrain or wheel slippage. However, the measurements drift over time due to sensor noise and bias.
This study uses a complementary filter to compensate for the limitations of each sensor type (encoder drift and IMU noise) by fusing high-frequency data from the IMU with low-frequency data from wheel encoders [
49]. It leverages the IMU’s responsiveness and the encoder’s long-term precision to provide a more accurate and reliable estimate of the system’s position and orientation. Apart from reducing cumulative drift, it is computationally efficient and relatively simple to implement [
49].
The detailed implementation of the complementary filter is discussed as follows. The IMU provides the robot’s angular velocity (
as well as its linear velocities in the
and
directions (as
and
). The encoder provides the robot’s angular position (
) as well as its position in the
and
directions (as
and
). The complementary filters used to acquire the value of each state variable are formulated as shown below [
49].
where
and
are the filter’s weighting coefficients that balance the contribution of the encoder and IMU data. Typically,
and
are restricted between [0 and 1]. Since the robot is moving on an uneven terrain, the values of
and
therefore, are kept low to impose more weight on the IMU data. This avoids measurement distortion caused by wheel slippage. The weighting coefficients are manually tuned by trial and error. Their values are selected as
and
. The acquired state variables
,
, and
are fed to the velocity control architecture to compute the desired corrective actions. Smoothing out the sensor noise and drift indirectly minimizes the control chattering.
2.3. Velocity Control Architecture
This section presents a detailed discussion regarding the high-level velocity control design for the differentially driven WMR. To track the reference trajectory, the WMR requires accurate wheel velocity commands to help move it from its current position to the reference position [
46]. For this purpose, the velocity control architecture, shown in
Figure 2, is proposed in this research. The proposed control design acquires the instantaneous error in the positions
and
as well as the angular position
of the robot using the onboard wheel encoders and inertial measurement unit, respectively. The tracking errors
,
, and
between the desired position and the current position are defined as shown in (17).
where
is the reference position along the
-axis,
is the reference position along the
-axis, and
is the reference orientation of the robot, as shown in
Figure 3. These tracking error signals are modulated through a customized odd-powered cubic polynomial, enhancing the influence of large errors while reducing the impact of smaller errors [
50].
The nonlinear modulation is carried out as shown below.
where
is the modified error signal associated with each state variable,
is the attenuation coefficient, and
is the transition coefficient. This arrangement distinctly improves the flexibility of the control procedure by creating an error amplification and an error attenuation region across the entire error regime of the system [
51], as shown in
Figure 4. The customized cubic polynomials help generate an aggressive control input under disturbance conditions due to the nonlinear magnification of the classical error signal
, as well as a gentle control input under equilibrium (steady-state) conditions due to the nonlinear attenuation of
. The aggressive control effort yields a faster response speed while strongly attenuating the disturbances, whereas the gentle control effort allows for a smoother oscillation-free response at or around the reference positions. The setting of the transition coefficient
decides the transition pattern of the error signals from the attenuation region to the amplification region. Its value is limited between 0 and 5 [
51]. The coefficient
modifies the size of the attenuation region, which regulates the gentle control effort. The impact of error attenuation continues to get weaker if the value of
is set larger than unity because this setting relocates the transition point closer to the origin. This arrangement continually degrades the influence of the gentle control effort. Thus, the value of
is limited between 0 and 1 [
51]. The nonlinear modulation of the error signals is realized via the following cubic polynomials.
The values of the transition and attenuation coefficients are manually calibrated offline via the trial-and-error method by minimizing the integral-squared-error (ISE) cost function expressed in (22).
The tuning procedure is concluded when the global minimum cost of is acquired. The following set of parameter values are thus acquired: , , , , , and .
The modified error signals are then fed to their respective pre-calibrated SN-APID controllers to compute the robot’s velocity control commands, which direct the robot’s linear and angular positions. The ubiquitous PID controller is typically constituted by linearly combining the system’s state error, error integral, and error derivative. The proportional control term attenuates the present state error, the error integral term dampens the overshoots and oscillations while improving the system’s trajectory tracking behavior, and the derivative control term accelerates the transient reaction and forecasts future state changes for the system. The formulations of the PID controllers synthesized to regulate the linear position and orientation of the WMR are presented in (23)–(25).
where
,
, and
represent the proportional gain, integrator gain, and differentiator gain associated with the x-axis position PID controller, respectively. Similarly,
,
, and
represent the proportional gain, integrator gain, and differentiator gain associated with the y-axis position PID controller, respectively. Finally,
,
, and
represent the proportional gain, integrator gain, and differentiator gain associated with the angular position PID controller, respectively.
Attaining a non-trivial optimum set of PID gains that yield the best control performance under every operating condition is indeed a challenging task. Hence, in this research, the PID gains of each controller are dynamically adjusted online by using the single neuron-based adaptation mechanism discussed in
Section 2.4. The robot velocity control commands,
,
, and
, yielded by the respective SN-APID controllers are subjected to the transformation matrix
to generate the corresponding wheel velocity control commands,
and
.
The utilization of three individual SN-APID controllers is beneficial as compared to using a single multiple-input and multiple-output (MIMO) neural network structure with three inputs (, , and ) and two outputs ( and ). The proposed control architecture with three single-neuron models offers three key benefits for real-time control systems: modularity, computational efficiency, and the capacity to effectively control each axis independently. The responsiveness and adaptability of the control systems in a real-time situation tend to become degraded using a MIMO network, as it necessitates extensive training which typically leads to slower convergence.
Compared to MIMO networks, the implementation of three single-neuron models is intrinsically simpler, requiring fewer parameters and less complicated training. These attributes increase the algorithm’s computational efficiency, which is crucial for real-time applications. In contrast, multiple outputs and hidden layers in a MIMO network usually require more processing power and time to train, which inadvertently introduces control lag. Each single-neuron model in the proposed architecture focuses on independently regulating the dynamics of the state variable (, , and ) assigned to it. Because of this independence, the weights of each neuron can be dynamically adjusted via the EKF to better suit the distinct properties of each control axis, resulting in precise control modifications and enhanced responsiveness. EKF parameter estimation becomes more complex in a MIMO system with multiple neurons, making it more difficult to effectively modify the weights. The additional computational load affects the system’s adaptability and convergence. Finally, with three separate neurons, there is a minimal risk of unintended cross-coupling between control actions, as each neuron operates solely on one state variable.