Improving Mobile Robot Maneuver Performance Using Fractional-Order Controller

In this paper, the low-level velocity controller of an autonomous vehicle is studied. The performance of the traditional controller used in this kind of system, a PID, is analyzed. This kind of controller cannot follow ramp references without error, so when the reference implies a change in the speed, the vehicle cannot follow the proposed reference, and there is a significant difference between the actual and desired vehicle behaviors. A fractional controller is proposed which changes the ordinary dynamics allowing faster responses for small times, at the cost of slower responses for large times. The idea is to take advantage of this fact to follow fast setpoint changes with a smaller error than that obtained with a classic non-fractional PI controller. Using this controller, the vehicle can follow variable speed references with zero stationary error, significantly reducing the difference between reference and actual vehicle behavior. The paper presents the fractional controller, studies its stability in function of the fractional parameters, designs the controller, and tests its stability. The designed controller is tested on a real prototype, and its behavior is compared to a standard PID controller. The designed fractional PID controller overcomes the results of the standard PID controller.


Introduction
Mobile robotics is a very active research area. This includes the design and implementation of autonomous robots. These robots are capable of making intelligent decisions based on localization, path planning, obstacle detection and avoidance, and environment analysis modules. One of the key parameters for the success of a mobile robot is robot control. The robot must obey the decisions made by higher control layers in the most precise way. Any variation between the maneuver received and the actual maneuver executed can result in final application failure and more complicated high-level control.
Our research group has been working for some time with a low-cost electric golf cart [1]. The objective is to turn a standard golf cart into an autonomous vehicle so that some mechanical and electric modifications were made on it. The drive that generates traction is a direct current motor and a drive by wire steering system that coexists with manual steering is included. The prototype includes an on board computer, sensors and software that turn it into an autonomous robot capable of transporting two passengers in non-structured environments. The vehicle localize itself [2,3], makes navigation decisions [4,5], detects obstacles [6], avoids them [7,8], and plans the best route in real time [9]. The robot applies this plan using a steering and velocity control, and the quality of the control limits the final performance of the vehicle. This turns this vehicle into a good framework to test different self-driven vehicle strategies.
The sensor set includes two encoders attached to each rear wheel to obtain odometric information, an IMU, a centimeter GPS, three Lidars, and a stereo vision system. The software is developed on Robotic Operative System (ROS). The software is structured in layers, from the low level where there are sensors and actuators to the high level where there are planning layers able to make intelligent decisions based on the environment. Figure 1 shows the prototype, a fully electric two-seat golf cart. The measured speed for the control is obtained from the odometric system of the prototype. The odometric system is based on encoders coupled to rear wheels, as shown in Figure 2. Each encoder provides 1024 pulses per revolution and each revolution of the wheel generates a revolution of the encoder (1:1 coupling). Wheel rotation is transferred to the encoders through a flexible mechanical transmission system that goes from the center of each wheel to the encoder placed on the side of the vehicle (see Figure 2). Encoder output is connected to an ad hoc electronics that samples the encoders signal every 0.5 ms. The electronics is designed to measure and integrate the encoder signals and the output is transmitted to the on-board computer at every integration period of 20 ms. The integration is made in the microcontroller installed in the ad hoc electronics, based on Euler integration, and collecting encoder increments for the integration time. This paper focuses on the lower software level of the vehicle, the motor traction control when a trajectory is being tracked. The traditional way of approaching the control of a system is using a PID controller [10]. It is a convenient and easy way to apply a solution for controlling any system, but usually the performance of the controller system is not the best. To improve the control quality of the final system, some alternatives are available in the literature. Specifically, the classic PI controller used in the first designs was replaced by a new fractional control in order to achieve better maneuverability under certain conditions.
In particular, the control engineering benefited from the advantages of adding fractional operators to controllers. Incorporating integral and derivative fractional parts into a controller makes it possible to have two additional parameters to tune compared to the integer versions. These two parameters are the corresponding fractional orders. The objective is precisely to take advantage of the fractional controllers to obtain a better performance in the maneuverability of the prototype.
In this paper, a new fractional controller is used as the speed control for the autonomous vehicle. This controller allows it to follow the applied commands in a more precise way. Specifically, if the command sent by the high-level control is a speed increase or reduction, a traditional PID is not able to follow the trajectory without a stationary error, so the actual speed is different from the desired speed, as shown in Section 5. The fractional controller proposed is able to follow these variable speed commands with zero stationary error, and the error between reference and command is reduced as Section 7 results shows. This advantage allows a more precise and accurate movement of the autonomous cart. Figure 3 shows the implementation of the low-level controller that is made in the autonomous vehicle, where a standard PI controller is substituted by a fractional PI.

Previous Work
Fractional calculus studies the generalization of integer-order derivatives and integrals to a fractional-order derivatives and integrals. This means that traditional calculus use integer indices in its derivatives and integrals, however, the fractional calculus allows to use fractional derivatives and integrals describing a more complex function. The fractional calculus may be considered an old and yet novel topic. It is an old topic because, starting from some speculations of G.W. Leibniz in 1695 and L. Euler in 1730 , it has been progressively developed up to now. However, it may also be considered a novel topic because its applications began in recent decades. A complete description of the fractional mathematics can be found in [11]. In [12], a survey with the advances in fractional calculus since the 1970s is shown, which includes numerical applications to implement the actual fractional systems that can work in real time. In [13], a survey of many applications of fractional calculus, examples, and possible implementations are presented. It also contains a separate chapter of fractional order control systems, which opens new perspectives in control theory.
Fractional models have been applied to different problems to characterize the dynamics of processes with complex behaviors, as in [14], where fractional kinetic equations of the diffusion are presented as a useful approach for the description of transport dynamics in complex systems which are governed by anomalous diffusion and non-exponential relaxation patterns. Methods to find the solution are introduced, and for some special cases, exact solutions are calculated. This report demonstrates that fractional equations have come of age as a complementary tool in the description of anomalous transport processes.
In [15], fractional calculus is applied to the control of a revolute planar robotic manipulator. The fractional derivatives required by the control can be obtained by adopting numerical real-time signal processing. Numerical experiments illustrated the feasibility and effectiveness of the approach. Ref. [16] presents the possibilities of fractional calculus applied to system identification and control engineering, but also into sensing and filtering domains. The fractional-order electronic component has led to the possibility of analog filtering techniques from a practical perspective, enlarging the horizon to a wider frequency range, with increased robustness to component variation, stability, and noise reduction. Fractional-order digital filters have developed to provide an alternative solution to higher-order integer-order filters, with increased design flexibility and better performance.
The control of autonomous vehicles includes multiple steps, including route planning, behavioral decision-making, motion planning, and vehicle control [17]. The last step, vehicle control is usually made with a standard PID controller. A survey of the different strategies applied in the low-level control of the vehicles can be found in chapter 2 of reference [18], where the authors distinguish between model-based and model-free controllers. Model-based controllers are more complicated to implement, and when the system changes, as for example for battery discharge, its performance is reduced. However, model-free controllers are more difficult to adjust, but more robust to changes in the model. The fractional controller presented in this paper can be classified as model-free, but with better performance than standard PID controllers. In [19], the longitudinal control task is addressed by implementing adaptive PID control using two different approaches: genetic algorithms (GA-PID) and then neural networks (NN-PID), respectively, adapting the controller to the non-linearities and the change in system characteristics. In [? ], a control schema to manage low-level vehicle actuators (steering throttle and brake) based on fuzzy logic, an artificial intelligence technique that is able to mimic human procedural behavior is presented, in this case, when performing the driving task.
In this paper, a new approach to controlling the speed of an autonomous robot is presented, where the fractional-order controller is used to improve the performance in reference tracking. The advantages of this kind of controller include the fact that it allows to obtain a better performance in robot tracking the following sections will show.

Fractional Integral and Derivative
Given a real function dependent on time f(t), its fractional integral I α 0 + f (t) of order α is defined as Equation (1).
where α is the real positive integration order and Γ(α) is the Gamma function. The Laplace transform of this integral equation can be defined as Equation 2 .
with I α 0 + ≡I α and zero initial conditions. The definition of the fractional integral is unique. However, for the definition of the fractional derivative, there are various proposals.
The Lagrange's rule for differential operators is used to define the Riemann-Liouville fractional derivative RL D β 0 + f(t) of order β for a function f (t) . Given n ∈ N such that n − 1 < β ≤ n, the Riemann-Liouville derivative is obtained, computing the n-th order derivative over the integral of order (n − β) which is defined in Equation (3).
where D≡ d dt and RL D β 0 + ≡D β is used. In a very similar way to the previous definition, changing the order of the derivative and the integral, it is possible to define the Caputo fractional derivative c D The advantage of the Caputo derivative over the Riemann Liouville derivative, Equation (4), is that it is not necessary to define the fractional-order initial conditions when solving differential equations.
It can be shown that the above definitions of the fractional derivative are equivalent for a wide class of functions [13].
The Laplace transform of the fractional derivative D β is given in Equation (7).
when n − 1 < β ≤ n and f (0)= f (0)= · · · = f (n−1) (0)= 0. It is important to note that the classical derivative of a function at an instant t is a local operator. However, the fractional derivative of a function at time t depends on past values, and it is therefore an operator with memory.

Fractional Systems
A non-integer linear time-invariant system with input u(t) and output y(t) can be represented in Equation (8).
where α k , β k ∈R and n ≥ m.
If the orders of derivation α k and β k can be represented as a term kα, with k = 0, 1, 2,. . . the system is said to be of commensurate order Equation ( and its transfer function is defined in Equation (10) It should be noted that a complex variable function such as Equation (11) is multivalued. Its domain is a Riemann surface, with a finite number of sheets when ∀k, α k ∈Q + . The q sheets of the Riemann surface, with α = 1/q, are determined by where k = −1, 0, . . ., q − 2. Note that only the roots of the principal sheet are meaningful [21].
The stability study of this type of control system is the key of its applicability. The stability analysis is performed, finding an integer index m such as mα k which is an integer for k = 0, 1, . . . , n. Then, it is possible to define a transformation between the complex plane s and a new complex plane v, where s = v m . Figure 4 shows that the first Riemann sheet is a slice of the complex plane v, which is limited for a θ range of − π m , π m . The line with θ = π 2m splits the first Riemann sheet into two zones. This line is the stability boundary and the zone above the stability boundary is the stability region [21][22][23].

PI α D β Fractional Controller
In the control theory, the classical PID has been modified by replacing the ordinary integral term for a fractional integral of order α, and by replacing the ordinary derivative term for a fractional derivative of order β. Indeed, Podlubny [24] proposed a generalization of the classical PID controller known as PI α D β , with 0 < α, β < 1. The fractional PID has two new tuning parameters (the fractional order of the integral and derivative actions) and it has shown a better performance in both time and frequency domains than its classical counterpart on some applications [25,26].
The PI α D β controller expression in the time domain is shown in Equation (12) where e(t) is the error and u(t) the control input.
The transfer function of the PI α D β controller is described in Equation (13).

Prototype Description
In order to carry out the controller design, a model of the traction response of the vehicle must be obtained first. For this, a constant voltage has been used as an open-loop input and the readings from the optical encoder coupled to the rear wheels are measured. This relates motor inputs with velocity output in open loop.
With the measured response, model adjustment has been made. Figure 5 shows the measured and model output for the same input. The right part of the figure corresponds to the part in which traction is not exerted and the vehicle stops due to the friction of the wheels with the ground. Step response for the electric vehicle.
The adjusted model cart is represented by the state variables described in Equation (14).
The prototype can also be described by the transfer function of Equation (15).

Fractional Control Application
It should be highlighted that the introduction of fractional terms means that the dynamics of the closed-loop system does not depend on exponentials but on Mittag-Leffler functions described in Equation (16).
, α > 0 and z C (16) where Γ is the Gamma function. When α = 1, the exponential is obtained as a particular case E 1 (z) = e z . An important fact is that, unlike what happens with the product of two exponentials (Mittag-Leffler functions with α = 1) which is another exponential function, the product of two Mittag-Leffler functions with α = 1 is not a Mittag-Leffler function but is obtained by Equation (17).
It should be noted that, if α = 1, this expression reduces to a binomial and the classical expression for the product of exponential is obtained. This effect has multiple consequences, but in this paper, the change in the time scale produced by the Mittag-Leffler functions is particularly interested. Thus, for rapid change signals, the dynamics are much faster than for an exponential, while for slow change signals, the opposite occurs, that is, the dynamics given by the Mittag-Leffler function is much slower than that of an exponential. To show this behavior in a simple way, the Mittag-Leffler functions for the simplest situation, represented in the fractional differential Equation (18), has been chosen.
Note that the differential Equation (18) corresponds to a system with no input, and to observe the dynamics, an initial condition other than zero must be chosen. Thus, it was considered y(0) = 2. Figure 6a shows the behavior when the values c 1 = 1; c 2 = 0 were chosen. Only the dynamics generated by the fractional derivative term is present. Figure 6b shows the dynamic when c 1 = 0; c 2 = 1 have been chosen as parameters, so only the dynamics generated by the fractional integral term is present. The bandwidth of the controller can be adapted in function of the coefficients β in Figure 6a and α in Figure 6b, although the fractional controller gives more degrees of freedom to adjust the system behavior, changing the time response for the derivative and integral part.  The standard closed-loop transfer function of error versus reference is shown in Equation (19).
A controller C(s) a PI α shown in Equation (20) is proposed.
so the controller system transfer function is shown in Equation (21).
The objective is to control a golf cart, so the possible commands that the path planning layer can send to the controller are a constant speed reference, and a speed change reference.
Step (l = 1) for constant speed and ramp (l = 2) for change in the speed are considered as the possible inputs for the controller systems. The possible input references for the controller are shown in Equation (22).
As is well known, to calculate the stationary error, the final value theorem is applied in Equation (23).
If the reference is for the step type (l = 1), the limit of Equation (23) is shown in Equation (24).
so, the final stationary error depends on α as shown in Equation (25) For this kind of reference, the classic PI can be used where α = 1 and with zero error in the stationary. However, if the reference is ramp type (l = 2), where the speed change from an initial value to a final one, the tracking stationary error can be calculated as Equation (26). e stat = lim s→0 r(τ 1 s + 1)(τ 2 s + 1) s (τ 1 s + 1)(τ 2 s + 1) + KK p + KK i s 1−α (26) the final stationary error depends on α as shown in Equation (27).
In this case, the classical integer solution with α = 2 obtains a zero stationary error, but it can make the closed-loop system unstable. For this reason, a fractional controller is used to achieve a zero stationary error, and it is necessary to carry out a stability analysis to assure stability. For this, it is considered as a final control transfer function Equation (28).
To also guarantee stability and robustness, the hypotheses described in [21,27] will be used. Phase margin ϕ m has typically been used as a measure of stability and robustness. Thus, the phase margin ϕ m will be considered to define the desired nominal damping of the system. On the other hand, the crossover frequency ω cg that fixes the desired nominal speed of the response of the system will also be used.
In order to calculate the gain crossover frequency ω cg , the equality defined in Equation (30) must be verified.

|C(jω)G(jω)|
This value will depend on the parameters that characterize the controller, that is K p , K i , α. At the frequency ω cg , the phase margin ϕ m is calculated according to Equation (31).
The two previous conditions by imposing values for ω cg and ϕ m are established. Thus, the three parameters of the controller K p , K i , α are set as unknowns, a third condition that sets the phase of the open-loop system to be flat at ω cg and consequently to be approximately constant in an interval around ω cg according to Equation (32) is defined. The value obtained for α is fixed greater than 1, a condition which has been previously seen as necessary to achieve zero steady-state error when faced with ramp-type references.
The third condition establishes robustness against gain variations which guarantees robustness locally. The gain range depends on the frequency range at approximately ω cg for which the phase keeps flat. This frequency range will be longer or shorter depending on the controller and the process.

Methods Discussion
The path-planning algorithm for the autonomous vehicle is based on a search in a space of the possible movements for the robot [28,29]. The path is divided in primitives; small actions can combine to make complex robot movements. The primitives of the cart include, different steering wheel angles and different displacement speeds. The combination of these primitives can compose any desired movement, and the path-planning algorithm joins the primitives looking for the best path.
The position of the steering wheel can be set accurately using a standard PID controller; however, a standard controller cannot accurately track the desired translation speed generated by the primitive. Focusing on cart movement primitives, 3 different primitives can be can highlighted.

•
The cart keeps the actual speed, which is equivalent to a step reference (l = 1); • The cart increases its speed, which is equivalent to a ramp reference (l = 2); • The cart reduces its speed, which is equivalent to a ramp with negative slope (l = 2).
Constant speed can be kept by a standard controller with zero stationary error, so it can be assumed that this primitive is correctly followed. However, the primitives of increasing or decreasing speeds are different; this kind of command involves a ramp command, so the speed increases or decreases from one starting speed to a final one. These primitives are very difficult to follow by a standard controller, and the tracking error for this kind of command can be high. If the primitive is not followed correctly, the final cart control will be poor, and the cart performance can be limited.
The fractional control proposed in this paper is a practical solution for the cart speed control. This implementation improves the performance of the whole system, so the primitives are correctly followed, and the movement of the robot is similar to that planned by the path-planning algorithm.

Results
As mentioned, the design process consists of setting the values of the crossover frequency ω cg and the phase margin ϕ m . Figure 7 shows the results for two values of the crossover frequency ω cg , and the effect it produces on the Bode diagram. In both cases, it can be observed how for the value of the crossover frequency that ω cg the phase reaches a maximum, and therefore, the derivative is zero. This fact corresponds to the robustness condition imposed. However, the overall width of the maximum in the phase diagram decreases as the crossover frequency ω cg increases, and therefore, the overall robustness decreases.   Figure 8 presents temporal simulations that show how the error is reduced when the values of the K p and K i parameters are increased. Note that the vertical scale on which the error is represented changes. On the other hand, as the α value increases, the response becomes faster, but also more oscillating. Furthermore, for all values of K p and K i , the closed-loop system becomes unstable when α = 2, as shown in Figure 8d.   Table 1 shows a stability analysis for some representative cases presented in Figure 8. Table 1. Poles in the first sheet of the Riemann surface for some representative cases presented in the temporal simulations. The case of the last row corresponds to a situation where α = 2.2, which is included to illustrate the presence of poles in the instability region. In order to evaluate the proposed fractional PI controller, a series of experiments were conducted involving an electrical vehicle following different movement primitives. The goal of the vehicle was to maintain the desired speed with the smallest error. To facilitate this, the vehicle had to control its own power according to the path. The command can change a lot for the same speed, depending on the slope of the road, the pavement roughness, the battery level etc. The experiments were conducted using Simulink with the Real-Time Workshop toolbox, and the vehicle was is obtained from the odometer sensor. The set point for the Simulink model, which included the fractional controller, was the movement primitive generated by the path planning module, and the control action was transmitted to the vehicle's control hardware via a serial protocol. The tests were carried out under different slope, pavement, and battery conditions. The objective of this paper was to improve the longitudinal controller for an autonomous vehicle. To measure the performance of the reference tracking, the difference between the reference velocity and the actual velocity of the prototype is used as a metric. If the reference tracking is good, the vehicle will be able to better follow the high-level primitives. This means that the maneuverability will increase, reducing the tracking error. High level layers will correct the control error introduced by system control, but if we reduce this error, the performance of the whole prototype will increase. Figure 9 shows the cart speed error during two experiments following different primitives. From 0 to 10 s, the cart receives a movement primitive of acceleration, and should follow a speed ramp. The standard PID controller cannot follow the reference and it maintains a constant error, however, the fractional controller reduces the error over time. From 10 to 25 s, a constant speed primitive is set. The traditional integer controller significantly reduces the error, but the fractional controller reduces the error almost to 0. For the two real tests presented, the values K p and K i are maintained as fixed, while the value of alpha has been changed. The results obtained correspond to what was predicted by the simulations, where in Figure 9b, the error is reduced when α is increased and the system remains stable.  Figure 10 shows the ratio between the control command effort of a fractional strategy versus an integer strategy. The command is bigger for the fractional controller, and when α is increased, the ratio also grows. This is the expected behavior, so the error using a fractional controllers is also smaller.

Implementation of Fractional Module s α
The values that have been used for α as a fractional order coefficient in the real tests have been α = 1.2 and α = 1.4. In the actual implementation, two fractional modules have been used with α = 0.5 and α = 0.7. To obtain the value α = 1.2, a 0.5 module and a 0.7 module were connected in series, while two 0.7 modules were connected in series to obtain the value α = 1.4.
The Matsuda approximation has been used to obtain the two modules. First, a frequency range is chosen between a lower frequency ω l and a higher frequency ω h where the approximation is valid. It is also necessary to give the degree n of the approximation, which will determine N = 2n. Then, N + 1 logarithmically distributed frequencies are calculated in the range of [ω l , ω h ], Equation (33).
and N + 1 coefficients are defined for each frequency ω k which we will call d i (ω k ) Equation (34).
Note that these coefficients must be calculated recursively. From the d i (ω k ), we will define c k as Equation (35) shows.
With the c k values, it is possible to write the following truncated continued fraction expansion that approximates s α , as in Equation (36).
It is usual to write Equation (36) in a compact way by using the following notation, Equation (37).
Note that since N is even, the degree of the numerator and denominator coincide. If N is odd, the degree of the numerator is one greater than the degree of the denominator. For this reason, N = 2n was chosen. Table 2 shows the values of c k for the ninth-order approximation used for the modules with α = 0.5 and with α = 0.7.
Performing operations on the above equation can be easily reduced to a quotient of polynomials in s as Equation shown in (38).
In this case, a ninth-order approximation, i.e., n = 9 is chosen. Table 3 shows the values of a k and b k for the ninth-order approximation used for the modules with α = 0.5 and with α = 0.7. In Figure 11, the frequency representations of Matsuda approximations of different orders are shown, proving that the ninth order is a good approximation. Table 2. Coefficients of the continued fraction expansion for the ninth-order Matsuda approximation.  To obtain the discrete version, we used Tustin's discretization, as in Equation (39).
where z −1 is the delay operator. The approximation between the actual module in function of the N coefficient is shown in Figure 11, where both modules with α = 0.5 and α = 0.7 and its adjustment in function of the approximation degree N are shown. The ninth-order approximation follows in the frequency range the behavior of the fractional order controller with a negligible error. The computation cost of the implementation of these modules is also very small.

Discussion
As the results section shows, the use of fractional-order controllers represents a clear improvement in system control. When tracking control primitives for an autonomous vehicle, it is able to track them with less error than traditional controllers. Specifically, when the received command is a ramp, which is equivalent to a speed change in a certain slope, the fractional controller is capable of following it with an error in the stationary state of 0.
To achieve an equivalent performance using traditional non-fractional systems, it is necessary to use a double PID, however, this compromises the stability of the system. The use, as has been demonstrated in previous sections, of a PID with integral index α > 1 allows obtaining a stationary error 0, but guarantees stability.
The tests carried out in simulation demonstrate that bandwidth and gain adjustment can be carried out with this type of controller. We also check how the index of the integral part of the PID affects the stability of the system, ensuring a stable value with correct tracking and a low stationary error with a coefficient of α = 1.4. This demonstrates the better performance of this type of controller compared to the traditional ones.
The tests carried out on the real prototype confirm these results, with a much lower primitive tracking error than the previously used PID controller. The difference in computation time and complexity are clearly compensated thanks to the better performance of the overall system.
Using this type of controller, a more reliable autonomous vehicle system is obtained, capable of better following trajectories and performing more precise maneuvers, thus facilitates the control of high-level systems.

Conclusions
The low-level controller of an autonomous vehicle can make the difference in the performance of its activity. In this case, the analysis and implementation of the traction motor control for an autonomous cart is presented. A traditional PID control generates stationary output errors in the controller variable, but it is not valid for tracking speed changes, so a solution looking for a better tracking performance is presented.
In this article, a fractional PI α controller, with a parameter α > 1 has been proposed for the speed ramp tracking problem of an electric car. It must be taken into account that the approach normally used in the literature considers fractional orders within the interval (0, 1].
Several simulations have been carried out that allowed demonstrating the better performance of the PI α controller, as well as an implementation in the electric vehicle that showed a remarkable reduction in the error.
The controller was applied to an autonomous electric cart, improving the low-level control performance and obtaining a better path tracking. The ability to follow more closely follow the trajectory facilitates the high-level tasks. This controller facilitates navigation in narrow areas and with multiple obstacles.