1. Introduction
The importance of having high-performance controllers to operate mobile robots is essential. Precision, velocity and robustness are extremely important goals that determine the chances that a mobile robot could perform a determined task.
We are developing a prototype of a Mobile Robotic Haptic System (hereafter denoted as ), which consists of a Mecanum-Wheeled Mobile Robot () equipped with a two-degrees-of-freedom () Haptic Sensing Antenna (). One of the pursued applications of this system is object recognition, in which the touches several points of the surface of an object estimating their 3D coordinates while the changes its position and point of view, with the objective of obtaining a cloud of points on the surface of the object. This cloud of points is then compared with information from a database containing different objects, thereby performing recognition. Here comes the importance of the above three metrics: the faster and more accurate the moves, the greater the number of points that can be collected in a given period of time, enhancing both the precision and speed in the recognition task.
Intensive research has been conducted on mobile robot control and navigation methodologies over the past few decades [
1]. Numerous strategies have been suggested to enhance the position control of mobile robots coping with the complete robot dynamics [
2,
3]. The vast majority of these schemes are expected to control the system in an upper-level way, allowing for the implicit handling of certain robot internal and external effects or disturbances, some of which exhibit severe nonlinear behaviour.
The sources of disturbances affecting mobile robots can be classified into two categories: endogenous, which are dependent on internal variables (states, outputs, control inputs, unmodelled delays, parasitic dynamics and nonlinearities), and exogenous, generated by the environment or the interaction with other systems [
4]. Endogenous disturbances (internal phenomena) typically manifest during the control of the actuators that govern the robot. For instance, friction, a common nonlinearity in
motors, can cause tracking errors at low speeds and stick-slip phenomena during start and stop stages. Other effects include motor saturation, which limits the velocity of the system, and hardware-induced delay (
), depending on the internal processor capacity. On the other hand, exogenous disturbances (external phenomena) often result from contact issues between the wheels and the ground. These disturbances can lead to wheel skidding and slipping, which eventually causes tracking errors and deviation in robot positioning. In this case, errors do not manifest in the actuator’s controllers and cannot be measured by internal sensors. Other exogenous effects include road and drag resistance, a change in payload and changes in the terrain slope. These effects, too, result from external factors, but they can be compensated in the low-level control because they act like changes in motors’ load torques.
Some examples of different control strategies applied to mobile robots during the last decades are input–output linearisation [
5], linear optimal control [
6], model predictive control [
7,
8], sliding-mode control [
9] or neural network control [
10]. In [
11], an active disturbance rejection controller is developed considering all effects affecting the robot as a single disturbance. These upper-level control schemes for mobile robot position control tend to be effective when using expensive, high-end brand prototypes and components, where endogenous disturbances barely appear. But when low (middle)-cost manufacturers are employed, these effects become more pronounced, degrading the controllers’ performance for most applications.
In this paper, we follow the approach firstly established in [
12], where the position control problem is tackled by developing a sophisticated low-level control of the robot. That involves improving the position and trajectory tracking accuracy through the design of an advanced motor control scheme. The robotic prototype that we have used in [
12] is the same low-cost
used for the present paper. In the previous work, a combination of several Advanced Process Control (
) techniques, along with a step-based thorough identification [
13], were used to cope with motor friction, saturation and
. The control system proposed in [
12] was composed of a
controller plus a prefilter combined with a Smith predictor, an antiwindup scheme and a friction compensator. The experimental results demonstrated the effectiveness of this approach in position control. Also, a set of simulations was carried out to demonstrate the robust stability of the system considering
model parameters variation. This variation encompasses some of the disturbance effects mentioned before, including changes in the robot mass (payload) and internal friction coefficients. Nevertheless, this scheme has not been tested under the influence of other external disturbances that are highly likely to occur in mobile robots, such as changes in the terrain slope.
In this paper, we mainly study the trajectory tracking control of a wheeled mobile robot under the condition that the longitudinal slope parameters are unknown. We address the control of the motors of the previous mobile robot, which have friction, saturation, and torque disturbance caused but non-horizontal terrains. The terrain slope produces a step-like torque disturbance. It is well known that Smith predictors—which are needed to compensate for the —have limited capability to eliminate the effect of disturbances applied at the process input. This problem increases when the process to be controlled includes an integrator. Note that this is the case of our motors. Then, the contribution of this paper is a new modified Smith predictor control scheme that more efficiently rejects these disturbances in mobile robots actuated by motors.
The organisation of this paper is as follows.
Section 2 presents a state of the art.
Section 3 describes our robot prototype.
Section 4 proposes its dynamic model.
Section 5 develops our new control scheme.
Section 6 and
Section 7 show simulated and experimental results respectively. Finally,
Section 8 gives some conclusions.
2. State of the Art
First, a brief state of the art on the motion control of mobile robots when facing slopes is presented. Second, a more detailed state of the art on the control of processes with a delay and an integrator is described.
2.1. Mobile Robot Control under Slopes
Many studies related to mobile robots and slopes often associate slopes with wheel slippage, primarily due to the type of robotic prototypes under investigation or the specific environmental conditions in which they are expected to operate. In [
14], a nonlinear model predictive control was designed for a non-holonomic car-like wheeled mobile robot to improve path tracking on slopes. The robot was equipped with inflatable tires and an Ackermann steering mechanism. The researchers developed both kinematic and dynamic models of the system considering how the slope affects the normal load on each wheel and, consequently, its influence on tire sliding and side slip. Subsequently, an active steering controller was designed to minimise tracking errors. Another example is found in [
15], where a method was proposed for stable locomotion on steep slopes with a wheeled mobile robot, using propellers for propulsion and adhesion. The robot generated friction by pressing against the slope with a thrust force, optimising the thrust direction and magnitude via control to prevent slipping, falls and side slipping on steep terrain.
Compared to the existing research, our prototype has a more limited working range. It is not intended, nor designed, for navigating steep slope terrains. While wheel sliding is possible, it is restricted to low-magnitude variations. In practical terms, this means the robot is not suitable for traversing grass or soil terrains. The is designed for indoor environments with smooth floors that may have inclinations and installed ramps for mobility. We assume that the grip is sufficient to prevent significant wheel sliding, and gravitational effects due to slopes are expected to affect the forces applied to the robot but are unlikely to cause sliding issues.
2.2. Control of Processes with an Integration Term and Time Delay
The control of integrating plus time delay () processes is challenging and ongoing research. A high number of industrial processes (e.g., distillation, evaporation, combustion, drying, etc.) are integrating as well as delay-dominant in nature. Many electrical drives also have an integrating term. Though they do not have a natural delay, their control systems introduce . This makes many actuators based on electrical drives fall within this kind of system.
The step-command tracking and load rejection control of processes is difficult. Moreover, improper choices of tuning parameters often provide non-self-regulating behaviours. Conventional control methodologies often fail to provide the desired performance for these processes. Then, some innovative control schemes have been proposed that are listed next.
The Smith predictor (
) is a popular method to control time delay processes [
16], but the original
is only applicable to stable processes. It does not perform adequately for
processes [
17], yielding possible instability and poor performance under modelling errors, and has a poor response to disturbances [
18]. In particular, it cannot reject the constant load disturbance for integrating processes [
18]. To overcome these obstacles, many variations of
have been proposed over the last few decades [
17,
18,
19,
20,
21]. However, the disturbance rejections provided by these schemes are not fast and leave room for further improvement as we will show in
Section 6.
An alternative to the
to control time delay processes is the use of model predictive control (
). In [
22], a stable model predictive controller for stable and integrating processes was designed to provide nominal stability for a set of process conditions, which was larger than in previous methods. The main effort is to eliminate the conflict between the constraints in the process inputs, which are usually included in the
, and the constraints created by zeroing the integrating modes of the process at the end of the control horizon. This problem has hindered the practical application of a nominally stable infinite-horizon
in industry. The improved controller was obtained through a modified control objective that includes additional decision variables to increase the set of feasible solutions to the control problem. The hard constraints associated with the integrating modes were softened and the resulting control problem is feasible in a much larger class of unknown disturbances and set-point changes. In [
23], an approach was proposed that extends the method presented in [
24] that can only be applied to open-loop stable systems. The robust controller was developed assuming that there is model uncertainty in both the stable and integrating parts of the process. The method considered a modified cost function that turns the infinite output horizon
globally convergent for any finite input horizon. The controller was based on a modified version of the state-space model proposed by [
22] to develop nominally stable
for systems with stable and integrating modes. The approach considered the inclusion of feasible cost-contracting constraints in the control optimisation problem, taking into account the annulment of the integrating modes to assure a bounded infinite-horizon cost. In [
25],
for use in processes with an integrating response exhibiting a long dead time and time constants was developed. This controller was successfully applied to the temperature control of a batch reactor. In [
26], the
of time delay processes with both integrating and stable modes and model uncertainty was designed. The controller was developed for the practical case of zone control and input target tracking and was based on a state-space model that is equivalent to the analytical form of the step response model corresponding to the process transfer function.
The internal model control (
) concept has also been applied to
processes. In [
27], a simple model predictive controller (
) was proposed for the unstable and integrating delayed processes. The proposed
algorithm was designed incorporating
and showed significant performance improvement over the existing
. Moreover, the
-based
also improved the process performance with time delay. The tuning of the controller parameters was optimised using a Genetic Algorithm.
Recently, a hybrid robust controller was developed in [
28] for
with a long dead time, which blended a sliding-mode controller, a modified
and a
compensator.
2.3. Motivation of This Work
In [
29], a modified
scheme was developed—hereafter denoted as the
-
H control scheme—to effectively reject step disturbances at the input of a second order with a dominant time delay process. In that paper, a comparison of the disturbance rejection performance of several
techniques was also carried out. This comparison included the standard
; an
combined with a feedforward term (it required sensing the disturbance); a relatively recent modification of the
to account for disturbances, which counts on a broad acceptance; an internal model control system; and the
-
H control scheme. The comparison yielded that the
-
H outperformed the other schemes in rejecting step disturbances at the input of the process and had the best robustness feature (though it is only slightly better than the feature achieved by the internal model controller).
Furthermore, the control system developed in [
12] for our mobile robot uses a standard
, which, as previously stated, has a low capability to reject step disturbances at the input of an
process. Because the dynamics of our robot belong to this kind of process, we have to reduce the effects of the terrain slope (which would be a step input disturbance if the slope were constant), and given that the
-
H control scheme yields better results than other schemes for a non-integrating stable time delay process, we consider in this paper modifying the above
-
H in such a way that it would be able to effectively reject step input disturbances in our robot.
The analysis carried out on applying the -H to our mobile robot has shown that it is unable to cancel the positioning error caused by terrain slopes. Then, the main contribution of this paper is modifying the original -H in order to cancel the steady-state position error caused by slopes while reducing the overshoot and settling time.
3. Robot Setup
The
is shown in
Figure 1. The
, which is mounted at the front of the
, consists of a robotic subsystem that works as an active haptic system. Its design has been developed by our group in previous works [
30,
31], where it has been used as a tactile sensor to detect objects that are in its surroundings. It is mainly composed of a lightweight, slender carbon-fibre rod (the antenna) attached to one of its ends to a six-axis force–torque (
) sensor ATI FTD-MINI40. In turn, the
sensor is fixed to a structure moved by two Harmonic Drive direct current (
) mini-servo actuator PMA-5A motor sets that include zero backlash 1:50 reduction gears and incremental encoders.
Furthermore, carrying the , there is the . It is composed of various subsystems. Firstly, the platform consists of an aluminium chassis equipped with four motors with incremental encoders and 1:75 reduction gears driving four 38 mm radius Mecanum wheels (also known as Swedish wheels, with rollers at ). The motors operate within ±9 V. Each encoder has a resolution of 4 pulses per turn of the motor axle, corresponding to 300 pulses per turn of the omni wheel. This setup achieves an accuracy of in measuring the wheel angular position.
The also equips a National Instruments Field-Programmable Gate Array () CompactRIO control board (sbRIO-9631). This board communicates with a host computer via a Router, reads sensor measurements (motor encoders and the force–torque sensor from the ) and controls all the motors of the robot, including the and , using Maxon ESCON Module servo controller boards. These controller boards manage the inner current loops of the motors. The entire system is powered by two 3500 mAh, 3-cell (11.1 V) batteries connected in series, delivering a nominal 22.2 V.
In this work, we will focus on the modelling and control of the
. More details about this setup can be found in [
12].
5. Proposed Control System
We propose to use the control scheme developed originally in [
29] for a stable second-order plus time delay process. This control scheme is a modification of the
, which is denoted
-
H. It is based on adding a feedback of the difference between the process output and the nominal model output to the standard
, as it is shown in
Figure 4. Then, we will first provide a brief description of the standard
and, after, we will develop our new controller. In this section, we will neglect the nonlinear behaviour of the motors, i.e., Coulomb friction and saturation, because we assume that their effects are approximately removed by a friction compensator and an antiwindup system, as it was mentioned in the Introduction and in [
12]. Then, this section focuses on developing and comparing controllers for linear systems.
5.1. Standard Scheme
The standard
control scheme is represented by the black lines and boxes shown in
Figure 4. In this figure,
is the process to be controlled, which is composed of a rational part,
, and a term
corresponding to the time delay
L.
represents the nominal model of
, which is composed of a nominal rational part,
, and a term
corresponding to the nominal time delay
.
is the input (reference) signal,
is the main controller,
is the control signal,
is the plant output signal and
is the load disturbance signal. It is not difficult to obtain the transfer functions between the output
and the reference
, and between the output
and the disturbance
, which are, respectively,
In this scheme, two predictors with their respective closed loops are implemented. The first one implements the nominal dynamics of the process and its predicted output is subtracted to the real output yielding the signal that is fed back into this loop. This loop is inactive if the real process coincides with the model and there is not a disturbance. Otherwise, this loop is active, being in charge of rejecting the output errors caused by these two issues. The second predictor implements the model without its delay and predicts the value of the process output s in advance. This prediction is used to close a loop in which the delay of the process is removed, which facilitates the design of the controller . This loop is essentially in charge of making the process track the reference.
In the case of the nominal process, i.e.,
, the previous transfer functions become
Note that the delay has disappeared from the denominator of both transfer functions, as it was advanced in the previous paragraph. Then, the characteristic equation of this closed-loop system becomes rational and it is possible to apply standard linear control design techniques to achieve the desired closed-loop specifications.
The analysis of the steady-state performance of the
in the case of the nominal process is carried out using (
16) and (
17), and the final value theorem, e.g., [
32]:
- 1.
Step reference.
- (a)
In the case that is not integrating, i.e., it does not have a pole located at the origin of the complex plane, the steady-state error of its step response is non-zero if is not integrating (e.g., a controller) and is zero if is integrating (e.g., a controller).
- (b)
In the case that is integrating, i.e., it has a pole located at the origin of the complex plane, the steady-state error of its step response is zero in both cases: integrating and not integrating .
- 2.
Step disturbance rejection.
- (a)
In the case that is not integrating, a step disturbance produces a non-zero steady-state error in the output if is not integrating and a zero steady-state error if is integrating.
- (b)
In the case that is integrating, a step disturbance produces a non-zero steady-state error in both cases: integrating and not integrating .
The transfer functions of our motors have the form (
13). Then, they are
processes. Because the terrain slope effect is modelled as a step disturbance of unknown amplitude
d given by (
8)—the angle
of the slope is unknown—the previous analysis yields (see Case 2b) that the standard
controller is unable to obtain a zero steady-state error in robot positioning. A modification of the basic
scheme is therefore required to overcome this drawback.
5.2. Modified Scheme: The -H Scheme
This modification utilises the existing prediction of the time delay compensator and decouples the set-point response from the disturbance response. The set-point response and the disturbance response of the closed-loop system are adjusted by two controllers.
Figure 4 shows this new
scheme that is composed of the standard
scheme with its controller
plus a new feedback loop that includes the second controller
, highlighted in blue in the figure.
Simplifying the complete block diagram of
Figure 4, we obtain now that
where
Note that transfer functions (
14) and (
15) are, respectively, obtained from (
19) and (
20) by just making
.
In the case of the nominal process, i.e.,
, the transfer functions of (
18) are
In the case of the nominal process, transfer function (
21) shows that the set-point tracking performance depends on
and it does not depend on
. However, the transfer function (
22) shows that the disturbance rejection performance depends on both
and
.
From now on, we will consider that
is the motor angle
, and the process input
is the motor voltage
that moves the undisturbed linear part of the system, and
is given by (
13). Moreover, because the disturbance is a step,
.
5.3. Stability Issues
In the case of the nominal process, the closed-loop stability is defined by the denominator of (
21) and (
22). Because it is a polynomial in
s, the stability is defined by a proper design of
, which can be performed by any method to design controllers for linear time-invariant systems.
In the case of a mismatch between the model and the real process, the stability robustness can be studied using the following condition in the frequency domain, which was derived in [
29]:
where
is the relative mismatch:
and
5.4. Design of
Because the integrating term of our
process guarantees the zero steady-state error to a step command, we will design a
controller
in order to obtain the desired dynamics of the closed-loop system. Because
is a second-order system, according to the common denominator of (
21) and (
22),
(
26) will allow us to freely allocate the two poles of the closed-loop system.
The characteristic equation of the closed-loop system (
21), (
22) is
Because the right side of (
27) is a second-order equation, the closed-loop system has two poles
,
that can be arbitrarily placed by tuning
and
. Equating coefficients of the same powers of
s between (
27) and
yields the tuning rules
We will show that, in our mobile robot, we obtain satisfactory results designing a critically damped system with the double pole placed in . In this case, becomes 0 and we use a P controller of the form .
5.5. Design the Compensator
As previously mentioned, several modified with different structures have been proposed in the literature for processes to remove the steady-state error produced by a constant load disturbance. Some of them reduce the steady-state disturbance error and others completely eliminate that error. We seek in this subsection to design a modified that completely eliminates the steady-state disturbance error and, moreover, reduces the transient disturbance error more effectively than other methods. This is based on a proper design of .
Substituting
by (
13) and
by (
26) in (
22) gives that
The steady-state error of
in response to a step load distance
is given by the final value theorem, e.g., [
32]:
Then, in order to make , the following are necessary:
- 1.
The numerator of
must be 0 at
in order to have a finite
. Then,
- 2.
The derivative of the numerator of
with respect to
s must be 0 at
in order to make
equal to zero. Then,
The first condition implies that
must have a zero (of any multiplicity) at the origin. Then,
must have the form
where
and
. The second condition imposes that
which can only be satisfied if
. Then, we propose the simplest
that verifies the previous conditions:
Note that the closed-loop steady-state error and do not depend on the derivative gain of , only on the proportional gain .
Then, a compensator
of the form (
36) improves the disturbance rejection capabilities of the system without affecting the nominal set-point response.
6. Comparison with Other SP Modifications
In this section, the performance of the proposed scheme is evaluated during the set-point tracking and load disturbance by comparing it with well-known modified
schemes. The simulations of four reputed modified
schemes are carried out, reported by Smith [
16] (the original
); Stojic, Matijevic [
33]; Normey-Rico, Julio and Camacho, Eduardo [
34]; and Espín, Jorge et al. [
28], in addition to our proposed scheme. The first three schemes are linear controllers, while the fourth one is a nonlinear scheme based on sliding-mode control. We apply these different control structures to the nominal process (
13) facing a step input reference of
radians and a disturbance applied at 2 s. Two types of disturbances are simulated: a step disturbance of amplitude 2 and a unitary slope ramp disturbance. The linear schemes use the same
; meanwhile, the nonlinear controller is set up so that the system performs equivalent to the linear control schemes facing the step input reference.
As in the previous section, we will neglect the nonlinear behaviours of the motors because we will assume that they are compensated. Then, the linear system (
13) will be used in the comparison. The parameters of
and
are set leading to the following expressions:
The process outputs using the before controllers and facing a step disturbance are illustrated in
Figure 5. All of them provide the same response to a set-point change—then they may be considered as equivalent—but they show differences in the external disturbance rejection, both in the transient and in the steady-state error. The original
does not have a block responsible for rejecting the disturbance. For this reason, it is unable to cancel a step disturbance in the process input. The other schemes have their own blocks responsible for eliminating the disturbance.
In [
33], the proposed
(denoted as
-
) has an observer estimator that enables absorbing any class of disturbance. The control part of the modified
contains five parameters,
,
L,
,
and
n. Two of them are the plant parameters
(gain) and
L (time delay). The other three parameters,
,
and
n, are to be adjusted with respect to the prescribed set-point change transient speed and the disturbance transient response and to the desired robustness to mismatches in
and
L.
On the other hand, the filtered
(denoted as
-
F) introduced by [
34] contains a block disturbance rejection represented by the filter
, which is placed in the feedback of the control scheme. This filter is used to improve the robustness and the disturbance rejection capabilities of the system without affecting the nominal set-point response.
Also, the nonlinear control scheme presented by [
28] (denoted as
-
), which is a combination of a modified
and a sliding-mode controller, is able to reject the disturbance by means of a
compensator placed in its inner loop. It considerably reduces the steady-state error compared to the previous schemes, but still is not zero, as detailed in
Figure 5.
Our proposed modified Smith predictor
-
H involves only two controllers: the controller
used to follow the set-point changes (or trajectory tracking) and the compensator
used to improve the disturbance rejection. The simulations shown in
Figure 5 illustrate that the
-
H provides the best disturbance rejection features, performing the best disturbance transient response of all and a zero steady-state error.
The process outputs using the before controllers and facing a unitary slope ramp disturbance are illustrated in
Figure 6. In this case, all the schemes show a higher steady-state error due to the nature of the disturbance, but once again, the best result comes from our
-
H scheme, with the smallest steady-state error.
Finally, the robustness of our
-
H is compared to the robustness of the standard
by plotting in
Figure 7 the respective
functions given by (
25) (
is made zero in the case of the
). Three controllers are compared: an
combined with a
P controller, an
combined with the
controller designed in [
12] and an
-
H with a
P controller. All these controllers are tuned to have a closed-loop double pole in
in order to make a fair comparison. This figure shows that the
-
H is the less robust control system, though it has a robustness similar to the
with a
in the range from 0 to 4 rad/s.
Because the payload
M carried by the robot varies, the parameter that is most likely to change is
J. Then, it is important to assess the robustness of the control systems in
Figure 7 to this uncertainty. In this figure,
is plotted for
, which is the maximum expected inertia. It shows that, for this payload, the three control systems verify the robustness condition (
23). Then, though the
-
H has the lowest robustness feature, it is sufficient for the working conditions foreseen for our robot.
7. Experimental Results
The comparison analysis of the previous section was carried out assuming a motor with linear dynamics. However, as it was previously stated, our motor has some nonlinearities such as Coulomb friction, actuator saturation and a low resolution of the encoders that degrade the controlled system performance. In the previous paper [
12], these nonlinear effects were compensated by including in the control system a friction compensator and an antiwindup system. Moreover, the effect of a step input disturbance was reduced (though not removed) by using an integrating controller (a
). Such a
produced (a) an undesired overshoot, which was removed, including a prefilter; (b) actuator saturation, for which the effect was reduced by the mentioned antiwindup system; and (c) a reduction in the relative stability of the closed-loop system (compare the
plots in
Figure 7), which makes it prone to instability if the time delay or the carried payload change. Instead, our proposal keeps the friction compensator but, because it is able to completely eliminate the steady-state error at the output without needing to use an integrating controller, a simple
P controller is used. This controller does not add additional zeros that may produce undesired overshoots, as the
does, and, unlike the
, it does not have the integrating term that is responsible for the saturation phenomena in our motor. Then, because the prefilter and the antiwindup system were not needed, they were removed, and the control system is highly simplified.
Then, the experimental results are presented in this section that compare our new control system with the prior control scheme developed in [
12]. The purpose of this comparison is to assess the previous assertions that our control system eliminates the steady-state error positioning while the prior control system does not, yields an approximately linear behaviour (as [
12] does) and avoids overshoot and saturation (as [
12] does), but it is a much simpler controller than [
12]. The control schemes are implemented in the National Instruments control board of the robot through the
LabView software and a few experiments are carried out.
7.1. Design of the Trajectory and Disturbance
The typical input signal references used to design the controllers are step signals. Nevertheless, it is a non-desirable reference in trajectory tracking because it introduces very high accelerations to the robot, causing unexpected robot behaviours, such as wheel slipping and trajectory deviation. Thus, a suitable fast input signal is designed with limited velocity and acceleration.
A Cartesian trajectory is designed for the robot to move along its longitudinal axis. It is set to displace 1 m with limited acceleration and speed. The input reference, which is expressed in time, is divided into three stages: a first stage with constant acceleration in which the robot accelerates until a determined speed; a second stage in which the robot displaces, maintaining speed; and a third stage in which the robot decelerates until it stops at the desired position. Finally, a steady-state stage is added at the end of the trajectory, where the robot remains in its final position. The maximum acceleration and speed values are carefully chosen to ensure that the robot maintains good ground adherence and avoids overloading the motors. Thus, the acceleration is set to 200 mm/s2 and the maximum speed to 100 mm/s.
The input reference to the control scheme is the angular position of the motors. Hence, the designed trajectory (in X) needs to be transformed into the motor angular position through , where the radius of the wheel is mm. Also, the motor angles, which are the encoder measurements, can be transformed into the robot position in X through the same expression assuming the perfect grip of the wheels.
To prove the goodness of the new control scheme, a disturbance
d is generated. According to (
8), the disturbance
d depends on the terrain slope (
), the robot mass (
M) and the wheel’s radius (
R). Thus, a large input disturbance is generated adding an extra payload to the robot and testing it on an
ramp. A trailer is designed to carry the extra payload. The connecting rod between the trailer and the robot is designed to apply the force of the payload just at the same height as the motor axle plane. This design prevents the application of an undesirable rolling torque to the robot that might change the robot dynamics. The original mass of the robot is
kg and the total extra payload added is
kg, which adds up to
kg, which is around an
increase.
Figure 8 shows the robot over the ramp holding the payload over the designed trailer.
7.2. Compensators to Overcome Nonlinearities
As previously mentioned in
Section 4.2, the system exhibits several nonlinearities, including the nonlinear motor friction, saturation and encoder resolution. Among them, nonlinear friction can be compensated by means of a friction compensator block (
) of the form
where
is the output voltage of the compensator;
is the control signal;
is the error signal measured between the input reference
and the output encoder measure
;
is a defined error band;
is the minimum voltage supplied to the motor, which has been set to 0.9 V, just slightly greater than the stiction break-away voltage
, to ensure a value outside the motor dead-zone; and
is the sample time of the system (25 ms). The error band
is established to avoid motor oscillations when reaching the reference due to the motor dead-zone and its compensation, determined by the minimum angular displacement that the motor can turn. This value is determined by applying the minimum voltage to move the motor,
, in
ms, obtaining a conservative value of ±2 encoder pulses, which corresponds to
= ±2.4° in each wheel. Note that, in this threshold, the quantisation error introduced by the encoder is also included.
This
is the same as the one designed in [
12], except for the first equation of the piecewise function. Originally, the output value of the compensator was set to zero when
. Now, the output value is the voltage that was delivered in the previous instant,
, to keep the motor pushing in the case that a disturbance affects the system.
7.3. Results and Comparison with the Previous Control Scheme
The previous control scheme developed in [
12] is composed of a
controller plus a prefilter combined with a Smith predictor, an antiwindup scheme and a friction compensator. The prefilter is designed to cancel the zeros introduced by the regulator in the closed-loop system and also two poles, reducing the order of the closed-loop system to a second order. Thus, the combination of the
and the prefilter results in a second-order critically damped system where a double pole of the closed-loop system is placed in
. As the regulator is designed with an integral part (
), an antiwindup scheme is needed to overcome motor saturation. Finally, the Smith predictor and the friction compensator cope with the time delay and nonlinear friction, respectively.
On the other hand, the new control scheme is composed of a
controller combined with a disturbance compensator, along with a Smith predictor and a friction compensator. As it was explained in
Section 5.4, we have designed the regulator by placing a double pole in
so as to finally obtain a critically damped second-order system. This regulator does not introduce any zeros in the closed-loop system, so no prefilter is needed. In this way, the new controller is equivalent to the previous one but is much simpler. The regulator has no integral part, so no antiwindup scheme is needed either. The Smith predictor is integrated into the system in addition to the compensator to reject the disturbances designed in
Section 5.5, which was a missing feature in the previous control scheme. Finally, the new control scheme includes a friction compensator, which is essentially the same as the one designed in [
12] but with a slight modification, as explained in the previous section.
Figure 9 shows the results obtained from the experimentation, both the robot position (in meters) and control signal (in volts). Two experiments are represented. On the one hand, the blue line labelled as
Previous control scheme shows the performance of the proposed controller in [
12]. On the other hand, the red line labelled as
New control scheme shows the response of the new control scheme proposed in this work.
The previous controller follows the designed trajectory but is not able to reach the desired ending position, as can be seen in the detailed view of the robot position. This is a consequence of the disturbance introduced by the slope and the payload, which affects the implemented Smith predictor. On the contrary, the new controller is able to reject the disturbance and the robot moves to the desired position, following the desired trajectory even better than the previous controller.
In order to measure quantitatively the improvement in the new controller compared with the previous one, two performance index are calculated. First, the steady-state error () at the end of the trajectory is measured. The experiments show that the of the previous controller is 7.18 mm, whereas the new controller performs nicely and gives an of 0 mm. The error band defined limits the to ±2 encoder pulses, which is equivalent to 1.6 mm in robot displacement. This means that the new controller performs perfectly, whereas the performance of the previous one is not acceptable, as it is not able to overcome the input disturbance. Finally, the root mean square error () between the input reference and the robot position is calculated. This parameter gives a measure of how close to the reference signal the robot moves. Thus, the of the previous control scheme is 27.54 mm, whereas the of the new one is 23.09 mm. These results demonstrate that the new controller more closely follows the desired trajectory, as the is 16.2% lower compared with the previous controller.
8. Conclusions
This paper has addressed the positioning of low-cost mobile robots under the effect of an unknown terrain slope. These robots have a hardware-induced delay and their actuators are integrating processes. Then, the standard Smith predictor could not remove the steady-state error caused by this slope. Moreover, the subsequent Smith predictor modifications designed to remove this steady-state error show inefficient transients. Thus, the contribution of this paper has been developing a new Smith predictor scheme that achieves a zero steady-state positioning error when the robot has to face an unknown slope while cancelling the transient error in a more efficient manner, i.e., a faster cancellation with a lower maximum error, than other Smith predictor control schemes.
A relevant conclusion of this paper is that
must have a zero at the origin of the complex plane in order to remove the steady-state error caused by a step disturbance. We mention that some recent works, e.g., [
28,
35], close an inner loop in the Smith predictor similar to ours by implementing a
controller in the
block. Choosing such
controllers for
is not the most efficient solution to remove the error caused by step disturbances because they do not have a zero at the origin and, then, they cannot achieve a zero steady-state error. It sometimes forces the addition of other control elements in order to cancel the permanent error.
Moreover, the controller embedded in our Smith predictor does not need to be integrating to compensate for a terrain slope disturbance. According to this, this paper has carried out a theoretical analysis, simulations and experiments that show that a simple P controller (1) does not introduce zeros that could produce overshoot in the response (as a could do), (2) does not need the help of an antiwindup system to avoid overshoots caused by actuator saturation, as it would be the case if an integrating controller were used, and (3) the robustness to changes in the plant parameters is significantly lower than that of the standard scheme.
Regarding the robustness issue of the
-
H, it is close to the robustness of the
with the
of [
12] in an acceptable range of frequencies, and this robustness is enough to guarantee stability in the range of working conditions of our robot. However, this robustness could be improved by increasing the parameter
of
.
Finally, we mention that, though we have used a P controller to prove the main features of our control scheme, other non-integrating controllers could be used, like controllers, that would allow us to freely allocate the two poles of the closed-loop system while the use of an antiwindup system is still avoided. We highlight the simplicity of our control system compared to others, like nonlinear controllers (e.g., sliding control).