Stable and Adaptive Control for Wheeled Mobile Platform *

Most differential drive platforms are equipped with two independent actuators and casters. The positions of the gravity center and the rotation center often do not coincide. This position difference, combined with the effect of unbalanced actuator dynamics on the motion, makes it difficult to properly control the platform. We propose an adaptive nonlinear controller system based on the Lyapunov stability theory that greatly improves the trajectory tracking performance of such platforms. The asymptotically stable kinematic controller takes into account the position difference and the effect of the unbalanced actuator dynamics. The dynamic controller has the desirable property that it requires minimal knowledge of the platform physical parameters. Validation was performed through simulation and several experiments conducted on a rear driven powered wheelchair. Comparative experimental studies suggested that the proposed adaptive control system performs better than a similar method presented in the literature for linear as well as curvilinear trajectory tracking. Furthermore, the control system exhibits good tracking performance on inclined plans and non smooth surfaces.


Introduction
Stable trajectory tracking is one of the most important problems of underactuated mobile platforms with nonholonomic constraints [1].Over the passed decades, wheeled mobile platforms actuated by means of two different motors have been among the most studied mobile systems [2][3][4][5].The potentially wide range of applications justifies this intense research effort.Reference trajectory tracking involves the design of stable control law that allows the platform to follow a given reference path.However, according to Brockett's theorem [6], a nonholonomic mobile platform cannot be asymptotically stabilized to an equilibrium point with the use of a smooth continuous state feedback control law.To overcome this condition, several approaches have been pro-posed in the literature.These approaches fall into three main categories, namely kinematic control laws based upon the well-known perfect velocity tracking model [7,8], kinematic-dynamic control laws [9,10] and adaptive dynamic control laws [5,[11][12][13][14][15].
The kinematic control law approach assumes that the control signals produce the exact motion commanded [16].Chang [17] proposed a kinematically stable solution for a nonholonomic platform in polar coordinates.A nonlinear state feedback stabilization control law was presented and validated through simulation study.Kanayama [8] proposed a stabilizing control law using the Lyapunov design approach with a cartesian coordinate formulation of the tracking problem.In [18], a feedback control using nonlinear oscillators is presented and the theoretical kinematic stability is established.While the perfect velocity tracking assumption simplifies the kinematic controller design, it totally ignores the important dynamic aspects of the platform [13].
[10] used the polar representation of the mobile platform and proposed a discontinuous control law that provides an exponential stabilization.Other papers report the design of stabilizing control laws with platform cartesian representations [20].While this type of approach accounts for dynamic aspects, it may be sensitive to disturbances that affect the platform motion in real applications.
The third category is related to the robust and adaptive dynamic design approaches.Their main objective is to overcome the weakness of the previous approaches by taking into account the unavoidable disturbances caused by the navigation environment [12,21].Most recent publications on the reference trajectory tracking with nonholonomic platforms use adaptive dynamic approaches.[22] studied the effect of wheel skidding on platform stability when a Lyapunov based kinematic controller is used.The system is shown to be stable under certain conditions.The sliding mode control provides fast response and good robustness in presence of platform model uncertainties [23,24].In [13], an adaptive sliding mode design approach using a self recurrent wavelet neural network is described and validated through simulation.In [5], an adaptive dynamic control scheme using the nonlinear stochastic control is proposed.This scheme is mainly based upon the dual control principle originally proposed by Fel'Dbaum [25].The advantage of this method seems to be its ability to achieve at the same time the control of the platform and parameter estimations.Although successfully extensive simulations were provided, no experimental validation was shown.Adaptive fuzzy control can be used to approximate nonlinear functions.This method has been extensively studied in control theory.Hou [11] designed an adaptive controller based on the backstepping [26] and fuzzy logic approaches.It takes into account the uncertainty in the platform kinematic and simulation results suggest good performance.In [27], the backstepping technique is also used to design a stable dynamic controller for car-like platform and the reference trajectory tracking performance is evaluated in simulation.However, the performance of backstepping control is dependent upon knowledge of the exact platform model.Hence, it applications on real mobile platforms may be limited [14].Venelinov [14] proposed another adaptive fuzzy approach using a kinematic controller.This method was able to reduce in simulation the effect of unmodeled disturbances.In [28], a dynamic Petri recurrent fuzzy neural network was proposed and its performance for the reference trajectory tracking were compared with other similar methods.The tracking error was demonstrated to convergence to an equilibrium point through different learning rates obtained by applying Lyapunov stability theory to the system.In [29], a robust control of a nonholonomic mobile robot is presented using the backstepping of the kinematics into the dynamics.The adaptive controller was based on a neural network, and the overall control system was testing in simulation.Whilst this approach is shown to be stable in presence of unmodeled bounded perturbations, the size of this neural network as well as the time convergence property of the whole system is difficult to assess.Moreover, in practice, it is not simple to get a real-time implementation of the adaptive neural network controller.
Although most these works were successfully tested in simulations, few experimental studies have been presented to help assess controller behavior.Furthermore, the studies considered simple disturbance models that may not be encountered in real mobile platform applications.Experimental validation under different operation conditions should provide a better understanding of the practical strengths and weaknesses of each proposed controller design.
Besides the lack of experimental validation, most controller design approaches assume that the two actuators dynamics are fully compensated or matched.The full compensation assumes that the actuators behave in the same way under the same operation conditions.
When the above assumptions are not verified on real navigation platforms, the reference trajectory tracking performance decreases.Indeed, it was mentioned in [10] that the difference between wheel radius is one the most common modeling error.In [12,30], it was shown that in practice, ensuring that two different actuators behave identically, even when working under similar operating conditions, is far from trivial.Some authors considered such mismodeling as model uncertainty and, therefore, rely on the adaptive control laws to reduce their impact on the platform trajectory tracking process [13,5].
The goal of this work is to propose a straightforward controller design approach for a class of nonholonomic mobile platform that improves the reference trajectory tracking performance.The controller accounts for:  the positional difference between the rotation center and the gravity center of the platform;  the effect of the unmatched actuator dynamics on the platform motion;  external disturbances during the trajectory tracking.
To achieve this goal, we propose an adaptive controller with two components: a stable kinematic controller and a stable dynamic controller.The kinematic controller provides the required velocities to track the reference path.These velocities may not be properly transformed into motion by the platform actuators due to the presence of various disturbances such as caster orientations, variable load and variable friction conditions between wheels and the navigation environment.In addition to these external disturbances, the platform model is affected by parameter estimation uncertainties related to the center of gravity position, the center of gyration position, the system mass and inertia, etc.An adaptive control approach is adopted since this approach does not require the knowledge of the complete system model.The merits of the approach presented here may be enumerated as follows:  a stabilizing kinematic control law that tolerates unbalanced actuators dynamics;  a stabilizing control law for the dynamic controller, based upon the model reference adaptive approach, that reduces significantly the effects of external disturbances and model parameter estimation uncertainties;  validation experiments of the proposed control system on a real mobile platform under different operation conditions;  an experimental comparative study between the proposed approach and similar approaches found in literature.The rest of the paper is organized into four sections.Section II presents the differential drive platform model.Based upon this model, we present in section III the design of new nonlinear kinematic and dynamic controllers.The validation of the proposed approach is presented in section IV and the conclusion is presented in section IV.

Differential-Drive Mobile Platform Model
We propose a dynamic and kinematic model for a mobile platform actuated by two independent electrical motors as illustrated in Figure 1.The related nomenclature description used throughout this paper is as follow:  C: the midpoint of the axis that joined the two driving wheels.It is the origin of the platform reference frame;  X and Y are respectively the abscissa axis and the ordinate axis of the global reference;  G: the gravity center position in the platform reference frame   , , C x y ;  a: the positional difference between C and G;  m: platform and the load total mass;  i: the platform and the load inertia about C; The following assumptions are made: Assumption 2.1 Each wheel mass is negligible compared to the total mass of the platform and the load (m).
Assumption 2.1 The wheels roll without slippage and, therefore, no velocity component perpendicular to the wheel planes is present.
Assumption 2.1 The actuators are fully compensated, i.e. all their electromechanical parameters are perfectly matched.This assumption is only used to formulate the ideal dynamic state equations.
Based on the well-known Newton-Euler equations [31] and by taking into account assumptions 2.1, 2.1 and 2.1, the state equations are represented by the following equations [5,32]: where and v  are the measures at of the linear and angular velocities respectively.
In real applications, assumption 2.1 is not always true and bias velocities are added to and v and where Most existing controllers neglected parameters b and b v  in their kinematic model, therefore negatively affecting the tracking ability.

Preliminaries
At each instant t , a virtual platform kinematically identical to the real platform is moving along the reference trajectory illustrated in Figure 1.The tracking problem consists of designing a controller that minimizes the tracking error represented by the following expression [8]: where the reference configuration (the configuration of the virtual platform) and the real configuration at a given time are designated by and Unlike most approaches in the literature, the error is expressed relative to C X , the configuration error represented by expression (0.10) is related to G .With the proposed configuration error formulation, the distance between and G can be taken into account in the controller design.

Q C
We adopt the control architecture illustrated in Figure 2. Given the reference configuration R Q v and the reference velocities , the role of the kinematic controller is to propose target velocities based on assumptions 2.1 and the perfect velocity tracking assumption.The dynamic controller is designed in order to compensate for unmodeled dynamic behavior and help the overall controller to better track the reference trajectory.Since most DC motors are torque driven, the dynamic controller will generate the required accelerations

Kinematic Controller Design
The following assumptions are made:   the velocities at are: Proposition 3.1 It can be shown (see appendix A) that the derivative of the configuration error is given by: where R v and R  represent the reference linear and angular velocities, respectively.
To build the kinematic controller, let us consider the following nonlinear control laws: where continuous and bounded and their derivative are small.It can be shown (see appendix C) that the system using control laws ( 13) is locally asymptotically stable.
For practical application, the assumption 3.1 may not be true.In the following section, we propose an adaptive dynamic controller that is an extension of the kinematic controller.

Dynamic Controller Design
The exact values of the system mass , the system inertia , the distance between the center of gravity and the center of rotation and the bias velocities are not trivial to obtain.Moreover, the friction conditions between the wheels and the navigation surface as well as the caster orientations are some of the usual sources of perturbations that can seriously degrade the trajectory tracking performance.Differents approaches have been studied in order to reduce the negative effects of some of these perturbations on the platform motion [10,22,13,25,11,27,14].In practice, it is desirable to have a dynamic controller that does not require the knowledge of the complete system model.The adaptive control approach based upon the model reference principle is a good candidate for designing the dynamic controller [33].Moreover, this approach is straightforward.
The role of the dynamic controller illustrated in The goal of the dynamic controller is to provide In order to guarantee the stability of the overall control system, we adopt the adaptive controller design approach based on the Lyapunov method [33].Therefore, a dynamic controller is designed for the linear velocity and another one is designed for the angular velocity T v T  .

Linear Velocity Dynamic Controller
The design requires two steps, namely the selection of the reference model that should be tracked by the system and the design of a stabilization control law.

Linear Velocity Reference Model
In the absence of disturbances and when the perfect velocity tracking assumption is used, the accelerations where M v  is the linear acceleration.
is a parameter that is linked to the desired dynamic performance.

Linear Velocity Reference Model Tracking
To allow to track v M v asymptotically, we propose the following expression: where 0 v   is a constant.
If the control law ( 15) is used with the adaptive laws ( 17) and (18), it can be shown (see appendix D) that the tracking error v converges asymptotically to 0. Furthermore, the global tracking error e e x , e and e y  are bounded and we showed that it is possible to let these errors to be as small as possible (see appendix D).

Angular Velocity Dynamic Controller
The angular velocity dynamic controller design follows the approach presented in section %d.0.3.3.The reference model is represented by: where M   is the angular acceleration and parameter that is linked to the desired dynamic performance.
The control law is given by: where 1   and 2


 are parameters to be adapted.The angular velocity error is: By using the Lyapunov function represented by the expression (22), we obtained the adaptive laws ( 23) and (24).
  where 2) The platform motion smoothness is an important factor for real applications [8].A smooth motion can be obtained if the following conditions are satisfied [8]:  the reference trajectory is continuous;  the reference trajectory curvature is also continuous;  the control coefficients   , x y K K should be set in order to satisfy predefined maximum acceleration and deceleration.Indeed, large values tend to make the system to converge faster, but they may cause motion oscillations.
3) The proposed dynamic controllers do not require knowledge of platform parameters.It can therefore be used with little effort on actual platforms.Furthermore, it can handle bounded perturbations, regardless of their sources.

Simulation and Experimental Validations
The performance of the proposed approach has been analysed by simulation and experimentally through comparative studies with a similar method presented originally by Kanayama [8] and recently used by Bugeja [5].The Kanayama kinematic controller was designed without taking into account the difference in positions between the gravity and the rotation centers and by assuming perfect velocity tracking.In order to use this controller in our comparisons, we used the dynamic controller of Section 3.3 as its natural extension [30].In the remainder of this paper, we call it the Kanayama Tracking Controller (KTC) while the kinematic and dynamic controllers are designated as Improved Tracking Controller (ITC).The main result presented by Kanayama is the two following stabilizing kinematic control laws: where K v and K  are the Kanayama linear and angular velocities respectively;

Validation through Simulation
The simulation aims at assessing the proposed controller before conducting experimenting on a real mobile platform.Specifically, this study will show that ITC performs comparatively better than KTC on linear and curvilinear trajectories, even when the bias velocities b and b v  are not exactly known.Matlab software and a specific robotic middleware software called Acropolis [34] were used for the simulation.

Simulation Scenario
We consider a platform with a center positional difference 0.25 m a  . The bias velocities and .All variables are discretized.The tracking mean squared error (MSE) is used as a comparison measure, as expressed by the three measures: where M is the number of discrete values of the configuration during one run of the simulation.
The following parameter values are used:  KTC approach: 1 . The initial values of the dynamic controller are: The initial values of the dynamic controller are:

Simulation Results
Figure 4 shows the trajectories obtained from simulation.Both the ITC approach and the KTC approach generate stable trajectories.Despite the presence of noise on the bias velocities, the trajectory produced by ITC (solid black curve) is very close to the reference trajectory (solid gray curve).The ITC performs better than the KTC as shown in the Table 1.This performance is mainly due to the kinematic controller proposed in this paper.Recall that the common part between the ITC and KTC is the dynamic controller.The four parameters  had similar values regardless of the kinematic controller involved.Thus, the only way to explain the difference in performance lies in the kinematic controller behaviors.In Figure 5, the tracking errors e x , e and e y  obtained with ITC are lower in the average than the tracking errors obtained with KTC.

Experiment Setup
Electric power wheelchairs actuated by two independent motors have been widely used to study tracking controllers and various navigation tasks [35,36,12].Since the proposed tracking approach takes into account the positional difference between the rotation and the gravity centers, we selected a rear driven powered wheelchair (as illustrated in the Figure 6.To demonstrate the practical aspects of the proposed reference configuration tracking system, we conducted several experiments of rectilinear and curvilinear trajectory tracking.The platform model parameters as well as the controller parameters are summarized in Table 2.During all experiments, a load of 77 kg (corresponding to the user) was on the wheelchair and the front casters were always positioned perpendicularly to the motion direction at the beginning.This pose of casters adds a maximum disturbance to the motion.To determine the bias velocities, the wheelchair was lifted off the ground to avoid any contact between the wheels and the ground.No close loop controller was used.In order to find b  , the angular velocity was set to 0 and different values of linear velocities were used.An   Parameter Value a 0.25 angular bias velocity 0.11 rad s b   was then observed.Similarly, by setting the linear velocity to 0 and using several values of angular velocities, a bias velocity 0.01 m s b v  was obtained.

Linear Trajectory Tracking
The objective of the first experiment is to demonstrate the convergence of the proposed controllers and to compare the performance of the ITC and the KTC approaches in rectilinear trajectory tracking.To test the convergence, the platform was given different initial configurations: , .Figure 7 shows the time evolution of the three tracking errors: e x , e and e y  .These errors approach zero, even if the reference angular velocity is set to 0. In order to compare the ITC and KTC approaches in rectilinear trajectory tracking, the platform must track a linear trajectory of with the reference velocities .Ten trials were conducted.Figure 8 illustrates typical trajectories obtained without the controllers, using the KTC and the ITC controllers.These trajectories suggest that the ITC is able to maintain a deviation on the Y-axis less than while the KTC deviation if four times larger after .Tracking mean-square errors for the ITC and KTC are presented in Table 3.

Curvilinear Trajectory Tracking
The purpose of the second experiment is to compare the ITC and KTC controller tracking performances in the case of curvilinear trajectories.From its rest configu-ration at  , the platform must track a trajectory generated by using the reference velocities . Figure 9 illustrates typical trajectories obtained without controller, with the KTC and the ITC controllers.
These trajectories show that the ITC is able to maintain a deviation on the X-axis and Y-axis less than 0.4 m.Deviations produced by the KTC are substantially larger most of the time as shown in Figure 10.Tracking mean-square errors are presented in Table 4.

Linear Trajectory Tracking on Inclined
Surfaces Natural navigation environments include incline plans.We investigated the behavior of the ITC controller in the case of trajectory tracking on inclined plans as shown in      rolling horizontally for 3.75 m (see Figure 11).Disturbances come from the front caster orientations, the 2.5 cm denivellation, the two inclines and the uneven navi-gation surfaces.We were unable to perform this test with the KTC approach.Indeed, due to the bias velocities and due to insufficient compensation of perturbations, the wheelchair was unable to remain on the first incline.Figure 12 presents the result obtained with the ITC approach only.The platform successfully completed the test with a maximum deviation of on the Y-axis despite disturbances, with the following tracking mean-square errors:

Conclusion
The design of adaptive nonlinear kinematic and dynamic controllers have been presented.The kinematic controller takes into account the positional difference between the platform rotation center and its gravity center.Furthermore, it accounts for bias velocities induced by uncompensated actuator dynamics.For smooth and bounded elocities, the global stability and the convergence of the v   T 0, 0 .Consider the Lyapunov function candidate represented by expression (0.27):  is given by: From expression (13), we got: Since  and e x  becomes: Following the same approach as that used for e x  , we obtained:   15) is used wit e adaptive laws (17) and (18), then the tracking error ges as ptotically to 0 under the fo on: vativ error cally to   T 0, 0, 0 .

Asymptotical Convergence of the Dyna
. According to Shankar [33], a Lyapunov candida function is represented by the following expression: te   where the constant 0 The der  and 2 v  by their expressions (refer to (17) and ( 18elds: V e e as small as possible.A similar analysis shows that T  is also bounded. From equation (18), we can state that   , , V e e e v v v

Figure 1 .
Figure 1.Representation of the Navigation Environment: C is the midpoint of the axis that joined the two driving wheels.G is the gravity center position in the platform reference frame.
C are the position of in the global reference frame.According to assumption 2.1 the following constraint is formulated: T and T v  are nominal linear and angular velocities respectively when the actuator dynamics are perfectly balanced.b and b v  represents the linear and angular bias velocities induced by the propulsion force mismatch, respectively.Kinematic expressions (1), (2) and (3) become:

Assumption 3 . 1
The kinematic control law is based upon the assumption of perfect velocity tracking which assumes that the control signals  exactly produces the desired motion.
more, a is a strictly positive constant.e kno Given and v  relatively to C , the expression of
When kinematic control laws (13) are used, it can be shown (see appendix B) that the errors  T , e e  x y converge asymptotically toward . T 0, 0 In the following proposition, we demonstrate that under certain conditions, the configuration error , , e e ex y  converge locally to .

Fig- ure 3
is to generate the required accelerations   T , will move at velocities   suggested by the nonlinear kinematic controller, regardless of the presence of the aforementioned disturbances.More formally, two reference models for linear and angular velocities are given (refer to Figure3) with inputs and outputs as are and   , respectively.The platform, whose parameters are unknown, has 

Figure 3 .
Figure 3. Model Reference Adaptive Control.T and v  M v should be identical.Any presence of disturbance will lead to a deviation between the platform velocity and the model velocity  v

) where 1 v  and 2 vv  and 2 vProposition 3 . 1
are control parameters that must be adapted.The proposed control law has an anticipative component to the reference model (refer to expression (14)).Perfect linear trajectory tracking is obtained when T v v  and v 1  1  .To find the adaptive law for the two control parameters 1 , we propose the following definition of the tracking error: Assume that T and are bounded.Consider the following adaptive laws: expression(30) (refer to Appendix B), it is clear that the stability condition is not dependent upon velocity biases  , the positional difference between the center of gravity and the center of rotation is part of the Lyapunov derivative function, it contributes to the kinematic stability.

4 )
In order to accelerate the convergence of 1 v

2 
represents a gaussian process with mean  and variance .The value of velocities used in the kinematic controller are represented by the random variable means: 0 m s and 0.1 rad s .The dynamic controller parameters v  ,   , v  and   are set to 1.From its rest configuration , the platform must follow a straight-line trajectory with a velocity of m s .It must then follow a curvilinear trajectory of of radius with 1

Figure 4 .
Figure 4. Tracking Ability Comparison Between Open-loop, KTC and ITC Controllers.

Figure 5 .
Figure 5. Comparative Tracking Error Between KTC and ITC Controllers.

Figure 6 .
Figure 6.Rear Driven Powered Wheelchair Model Quickie 646 by Sunrise Medical.
5 rad 0.25 0.5 m, 0.5 m,  1 m, 1 m,0.75 rad   , and .From one of these initial configurations, the proposed controllers must drive the   T m, 0.25 m, 0.25 rad 

Figure 9 .
Figure 9. Curvilinear Trajectory Tracking with the Rear Driven Wheelchair.

Figure 10 .
Figure 10.Curvilinear Trajectory Tracking Error with the Rear Driven Wheelchair.

Figure 12 .
Figure 12.Trajectory Tracking on Inclined Surfaces.kinematic controller have been d ability theory and the conditions for the local stability

Proof 3 
Substituting v and  with (29) in(12) an linearizing the result, we obtain the following approx tion ofThe eigenvalues of the matrix are the roots of the function If the control law ( small as possible.Since v and ω are bounded and since b small as possible, the global tracking err e or x , e y and e are also bounded according to equation(13).Moreover these errors can be as small as possi le.e that e converge asympto b To demonstrat v let consider the second derivative of 