Dynamic Compensation Based Control of a Comprehensive Model of Wheeled Mobile Robots

This paper uses the general framework of dynamic feedback linearization for stabilization of mobile robots. Instead of using unicycle model for control design, this paper uses a comprehensive model which is based on the physics of differential drive robots. The model used in the paper describes nonholonomic underactuated behavior of robot in terms of the physical dimensions and velocities of the wheels. Next, the proposed control is applied to this model and it is theoretically proven that dynamic feedback linearization can successfully solve the stabilization problem. To evaluate the performance of proposed control, another controller is designed based on the Lyapunov’s method. The performance of the two controllers and the complexity of control gain tuning process are compared. Next, the robustness of the proposed control against uncertainties is studied. The results of analysis and simulations show that the proposed control has very good performance against parametric uncertainties.


Introduction
Mobile robots are used for many applications [1] which range from service robotics [2] to mapping and surveillance applications [3], rescue robotics [4] and management of disastrous situations [5,6]. Fairly simple mechanism of work of mobile robots makes them a popular class of robots for such applications. Differential drive robots (DDR) are a class of mobile robots with two active wheels on the sides of the robot. The third wheel in the structure of robot is the caster wheel which is responsible for providing counter weight balancing forces through the ground reaction. The difference in the angular velocities of the wheels determines direction of motion of robot. There are theoretically challenging issues involved in the control of differential drive robots and several interesting control problems have been studied for DDRs. Tracking control, path following and regulation of the posture of DDRs are the mostly studied control problems.
DDRs are nonholonomic systems since the rolling without slipping constraint describing the kinematics of their motion is not integrable. Also, the number of control inputs for the system is less than the number of states. Therefore, DDRs are classified within the category of underactuated nonholonomic systems. Stabilization of these robots is challenging and cannot be achieved by smooth, time invariant control strategies. Many research groups have used discontinuous controls [8][9][10] to solve this fundamental challenge. Using feedback linearization based approaches [7,11,12] has also been very successful for stabilization of DDRs. Motivated by the fact that a stabilizing controller cannot be smooth and time invariant, time varying controls [13][14][15] have also been widely used for posture regulations problem. In addition to the basic problem, posture stabilization problem have also been studied for multi-robot scenarios where the robot is towing one or several trailers [16,18]. Input constrained posture stabilization where hard limits are posed on the magnitude of the control inputs have also been studied [19,20]. In addition to the kinematic model of differential drive robots, several studies have focused on controlling the full dynamics of DDRs [21,22] as well. Similar to posture stabilization, tracking control of differential drive robots is also widely studied [23][24][25][26]. Fuzzy logic controllers have been a commonly used tool for this purpose [27,28]. Adaptive [29,30] and robust control [31,32] methods have also been successfully used to improve the performance of tracking controllers against uncertainties and disturbances.
This research work develops a more comprehensive model of the differential drive robots and designs a posture stabilizing controller based on the concept of dynamic feedback linearization. The advantage of using a model containing system's physical parameters is the ability of the designer to study the effect of such uncertainties on the control performance. Understanding the effect of these parametric uncertainties can be effectively used in the design of robust controls for stabilization of differential drive robots. This paper shows the success of dynamic feedback linearization approach in stabilizing the posture of robot via analytical proof and simulation results. Also, to verify the performance of the proposed control strategy, another control is designed for the comprehensive model. The performance and ease of tuning of the two controllers are compared. The results of simulations show that the dynamic feedback linearization based control has a smoother stabilization path and easier tuning process. Finally, the performance of the proposed controller is studied under parametric uncertainties. The results of the simulations show that the proposed control has a very good performance against uncertainties.

Modeling Mobile Robots
A vast majority of the papers in the literature use the unicycle model for designing controls for differential drive robots. In this section, we review the unicycle model of differential drive robots and then proceed to derive a new comprehensive model for this class of mobile robots which closely models the physics of their motion under the assumption of rolling without slipping. We finally study the properties of the developed model.

Unicycle Model of Differential Drive Robots
Unicycle model is the model of a disc rolling on a 2D surface under the assumption of rolling without slipping. This model is usually shown as a driftless nonlinear system with the following form: where x and y represent the coordinates of the robot and β denotes the heading of the robot. In this model the control inputs, v and denote the forward velocity of the robot and its rotation rate. However, this is a very abstract model focused on describing the rolling without slip phenomena.

The Proposed Comprehensive Model for Differential Drive Robots
In this paper, we will develop a more comprehensive model for differential drive robots which incorporates the physical dimensions of the system into the model. Consider the schematics of a general differential drive robot in Fig. 1 where β is the heading of the robot. Velocities of the centres of left and right wheels can be found as below by taking derivative of the corresponding position vectors: where X and Y denote the position of the point between the wheels of the robot and e 1 , e 2 is a moving coordinate frame on the robot where e 1 is in the direction of main axle of the robot and e 2 is on the wheel axis. The kinematic model of the system can be found by imposing zero relative velocity between the ground and the contact points of the wheels with the ground. Finding the velocity of the contact points using equations (2) and setting the velocity components in e 1 and e 2 directions to zero yields: where ̇, denote the angular velocities of the left wheel of the robot and the radius of the wheel respectively. Substituting equation (4) into (5) and after algebraic manipulations, the following equation can be found: Following the same procedure for the velocity of the right wheel in (4), the following equation is achieved: where ̇ denote the angular velocities of the left wheel. Finally, the last equation can be found by applying the relative velocity formula between the two contact points of the wheels with the ground: The kinematics of the differential drive robot under the assumption of rolling without slipping can be represented by equation (6)(7)(8) which can be shown in matrix form as:

Model Properties
Similar to the unicycle model, this model describes a set of nonholonomic constraints as expected. To verify this, equation (9) is rephrased and expressed as a driftless system: where: Therefore, the kinematic model of system is fully non-holonomic since the distribution Δ = { 1 , 2 } is not involutive: where [. , . ] denotes the Lie bracket operator.

Controller Design via Dynamic Feedback Linearization
Similar to standard static feedback linearization, the final goal of dynamic feedback linearization is achieving a linear system from the perspective of system input-output. Unlike conventional feedback linearization that state feedback in used, linearization is achieved by using the so called dynamic state in dynamic feedback linearization approach. The conditions of achieving full state linearization via dynamic feedback linearization are less strict and are satisfied for a larger class of non-holonomic systems including wheeled mobile robots that are transformable into chained form.

General Formulation
The dynamic feedback linearization problem is formulated as below [7,8]. Given a general nonlinear system: where ∈ ℝ and ∈ ℝ , find a dynamic compensator: such that the closed-loop system (12), (13) is equivalent to a linear system under the transformation = ( , ).
Existence of such a dynamic compensator and the linearizability of the system are directly related to existence of a linearizing output and flatness of the system. Necessary conditions, sufficient condition (but not necessary and sufficient) have been developed for existence of such a dynamic compensator. Fortunately, it has been shown that mobile robot models which can be transformed into chained form are linearizable in the dynamic feedback linearization sense.

Posture Stabilization Control Design
To design a posture stabilizing control for our model of differential drive robots (9), a two stage design procedure has been used. First a dynamic feedback linearization control is designed and then a stabilizing control is designed for the linearized system. The final control is discontinuous at the origin as predicted by Brockett's conditions. Theorem I defines the dynamic feedback based linearizing control and proves its linearizing property.
Theorem I: Consider the rolling without slipping kinematic of the differential drive robots in (9). Defining the state transformation as: the dynamic compensator defined by: linearizes the kinematic model (1). Proof: Substituting (15) into the kinematic model (9), we have: Taking the inverse of the upper triangular matrix on the left hand side and defining the linearizing output as = ( , ) ′ , algebraic simplifications yield: Taking derivative of both sides of (17) and considering the fact that 1 = , 2 = :  (8): Substituting (15) and (19) into (18): which completes the proof. It is worth mentioning that the choice of the output is based on the expected desired behavior of the system. Having chosen the linearizing output candidate, the dynamic extension algorithm is used to build up the dynamic compensator. If the obtained system is invertible from the chosen output, the algorithm terminates and the full input-state-output linearization is achieved.
The next step is designing the linear control on the linearized system to achieve the stabilization. In fact, the overall control is the combination of a linear control and the dynamic feedback based linearizing control. Theorem II introduces this stabilizing control for the linearized system.
Theorem II [8]: Consider the rolling without slipping kinematic of the differential drive robots in (9) under the action of dynamic compensator (15). The following PD control: guarantees exponential convergence to the origin from any initial configuration if:  Therefore, the overall control structure is comprised of two control loops, the inner loop linearizes the system with the aid of a dynamic compensator and the outer loop stabilizes the linearized system. Figure 2 demonstrates this control idea via a graphic schematics:

Control Design via Lyapunov's Technique
To verify the performance of the stabilizing controller proposed in this paper, another stabilizing control is designed for the comprehensive model in (9). This controller is based on Lyapunov's technique. Using Lyapunov analysis for the design of controllers is a common and effective approach for nonlinear systems. The idea is using a positive definite function and devising the control signals such that the time derivative of the function along the system trajectories is negative definite. To apply this idea to the problem of posture stabilization, we need to express the model of the system in Polar coordinates. Let's consider the following change of variables: where θ is defined using the four quadrant tangent invers as: Based on (23), the set of state equations can be rewritten in terms of the new state variables. To achieve this, the time derivative of R and δ should be found using the original state equations: The time derivative terms in (24) can be found from the original state equations of the system (9) through algebraic manipulations: Thus (24) can be rewritten as: There are certain geometric relationships between the parameters of the system. These relations can be easily deduced from Fig. 1: Thus, (25) can be simplified to: Similarly, the time derivative of δ can be calculated as The state equations of the transformed system can be written as: Defining = − , the equations of motion in (29) can be written as: Using the transformed system in (30), Lyapunov-based control design is used for synthesizing a posture stabilizing control. This procedure is outlined in Theorem III.
Theorem III: Consider the kinematic model of the differential drive robots in (30). Under the control laws: where k, λ, and h are positive scalars, the differential drive robot is asymptotically stabilized. Proof: The proof is by applying the direct Lyapunov method. Consider the following positive definite Lyapunov candidate function: As defined in (23), R is the norm of the distance from origin. Similarly, the second term in (32) is the norm of the alignment error. The time derivative of this positive definite function can be easily found to be: Substituting for the derivative of the state variables from (30), the time derivative of V along system trajectories is found as: Next, the proposed control signals in (31) are substituted in (34). Using algebraic calculations and several simplifications via trigonometric identities, it can be shown that: Equation (35) is negative semidefinite and thus the Lyapunov analysis is inconclusive. Since the Lyapunov function V is positive definite, it is lower bounded by zero.
On the other hand, as (35) shows the derivative of V is negative or zero and therefore V is a non-increasing function. Based on the two previous statements it can be inferred that the value of V converges asymptotically toward a finite non-negative value. Since V is a radially unbounded function, the state trajectories for any initially bounded condition will remain bounded which equivalently means ̇ is uniformly continuous in time. Based on Barbalat's Lemma, ̇ converges to zero which means that the state of system will converge to [0, 0, � ] for some � . The next step is showing that � = 0 is the only possible solution. To show this, the closed-loop equations of the system is studied by substituting (31) into (30). The closed-loop system is: It has been shown that the first and third equations converge to zero. The second differential equation in (36) implies that ̇ is converging to a finite limit value. Since it has been shown that state trajectories are bounded, thus ̇ is a uniformly continuous function in time. Therefore according to Barbalat's lemma, ̇ converges to zero which implies that θ converges to zero. Therefore � = 0 and the system is asymptotically stabilized to origin.

Simulation Results
To verify the performance of the stabilizing controller proposed in this paper, simulation results are provided in this section. The physical parameters of the differential drive robot used for simulation are r = 0.1 m and d = 2L = 0.3 m . The first posture stabilization scenario considered here is as follows: where q 0 and q f denote the initial and final configurations of the robot. The initial condition of the parameter of the dynamic compensator is chosen as 0 = −0.4 to realize the backward steering. The gains of the PD control are also chosen as: The results of the simulation are given next. Figure 3 shows the path of the robot during the posture stabilization where black arrows show the robot axle. Fig. 4 shows the time evolution of the state variables and as shown in this figure, all the states are stabilized.
Finally figure 5 shows the control signals used by the designed controller. As the simulation results show, the devised control is successful in stabilizing the posture of the differential drive robot.     We aimed to compare the performance of the devised control with other methods. To this end, we have simulated the same stabilization scenario with the Lyapunov based control in (31). Figures 6 through 8 show the robot stabilization path, state trajectories and the corresponding control signals respectively under the Lyapunov based control.
As the figures show, the path of the dynamic feedback linearization based control is smoother. Also, the magnitude of the control signals in the case of dynamic feedback linearization is much smaller than the Lyapunov based control. Therefore, dynamic feedback linearization based control excels the Lyapunov based control performance wise in this simulation scenario.
Another aspect for evaluation of the performance of a controller is to study the robustness of the controller. Robustness of the controller can be measured against external disturbances and un-modeled dynamics which can be represented as the parametric and non-parametric uncertainties. In this paper, we focus on studying the effect of parametric uncertainty on the performance of the proposed controller. To study the effect of the parameter uncertainty on the performance of the stabilizing controller, the same posture stabilization scenario is simulated where a 20% parametric uncertainty has been added on the dimensions of the robot. In other words, the estimates of the parameters of the system used by the controller are: ̂= 0.12 ,̂= 0.24 . In the case of dynamic feedback linearization based control, the parametric uncertainty will appear as an additive term after the feedback linearization. The results of the simulations show that the performance of the controller is robust to this level of uncertainty. However, the transient performance of the system is adversely affected and the oscillations of the state trajectories have increased.
To get an idea of how much uncertainty can be compensated, we keep increasing the magnitude of uncertainty to get to a point at which the controller fails. The interesting observation is that the controller is not sensitive to uncertainty in the d parameter and it can handle even large uncertainties. On the other hand for the simulation scenario considered above, the controller is robust to uncertainties up to 45% in r parameter which is still very impressive. However, beyond this value stabilization errors appear in the final robot heading. For example figure 9 shows the stabilization trajectories for a 48% uncertainty, i.e. ̂= 0.148 : It is interesting to note that the two of the states are stabilized but the third state which is the unactuated degree of freedom in the underactuated does not converge to zero. This is due to the large magnitude of the nonlinear terms that has not been cancelled by the feedback linearization process. For future work, it is interesting to study the robustness issue in more depth and understanding why the sensitivity of the control is different for different system parameters. There should be an underlying reason which makes a certain parameter to be robust to uncertainties. Moreover, it is interesting to study the bounds for parameter estimation errors that would result in losing stability analytically.

Conclusions
Differential drive robot are a class of mobile robots that are widely studied by many researchers. Within this paper a new model of the kinematics of the differential drive robots under the assumption of rolling without slipping has been developed. It has also been shown that the developed model is an underactuated non holonomic system just as the unicycle model. Moreover, the developed model is capable of providing insight into the motion of robot since physical parameters of the system appear in it and the velocities of the wheels are the control inputs of the system. The paper develops a posture stabilization control for the developed model of the differential drive robots via the standard framework of dynamic feedback linearization. Simulation results demonstrate the performance and success of the proposed control in stabilizing the posture of the comprehensive model of differential drive robots developed Universal Journal of Control and Automation 4(4): 43-52, 2016 51 in this paper. Simulation results are also provided that compare the performance of the proposed control with other controllers.