Passivity-based control of an omnidirectional mobile robot

This paper studies passivity-based trajectory tracking control of an omnidirectional mobile robot. The proposed control design is simple to be implemented in practice, because of an effective exploitation of the structure of robot dynamics. First, the passivity property of the prototype robot is analyzed. Then the control system is designed based on the energy shaping plus damping approach. We find that the prototype robot itself has enough damping forces. As a result, only energy shaping is needed in our proposed controller, while the damping injection is unnecessary for our robot. In other words, the disadvantages of differential feedback, such as amplifying the measurement noise, can be avoided. Globally asymptotic stability is guaranteed. Both simulations and experimental results show the effectiveness of the proposed control design.


Background
Omnidirectional mobile robots (OMRs) are becoming increasingly popular in many applications. OMRs have the ability to move simultaneously and independently in translational and rotational motion. Therefore, they are especially useful in environments congested with static and dynamic obstacles and narrow aisles, such as hospitals, warehouses, residential homes, and sheltered workshops for disabled people.
In the literature, many studies have been conducted in the dynamic model-based control design for OMRs. In [1], a feedback linearization approach, i.e., resolved acceleration control, was applied to an OMR with lateral orthogonal-wheels. In [2], a linear optimal tracking controller was designed, in which the main idea is to simplify the dynamics of the three-wheeled OMR as a linear time invariant model by using the kinematics. In [3], based on a dynamic model without considering motor dynamics, an adaptive motion controller was synthesized via the adaptive backstepping approach. In [4], feedback linearization strategy was used to compensate the static friction, and then a model-predictive control scheme was applied to trajectory tracking control of a three-wheeled OMR. In [5], generalized proportional integral (GPI) observer was employed to design the controller, in which the unmodeled dynamics and nonlinearities, etc., are considered as a perturbation input. In [6], a smooth switching adaptive robust controller was proposed to switch between a nominal adaptive linearizing controller and a deputy adaptive sliding-mode controller. However, these methods actually stem from the well-known control theory, thereby neglecting the natural structure imposed by the physical character of the robot system. One common problem of these methods is that the differential feedback is necessary.
On the other hand, passivity is one of the most fundamental properties of robotic systems [7]. It has been a very powerful concept in many control problems in robotics: stability analysis [8,9], teleoperation control [10][11][12], flexible robot control [13][14][15], to name a few. However, so far, it has been overlooked for the control problem of OMRs.
In this paper, a passivity-based trajectory tracking control system is designed for a three-wheeled OMR with MY wheel-II. The proposed control design is simple to be implemented in practice, because of an effective exploitation of the structure of robot dynamics.
The passivity property of the open-loop dynamic system is analyzed based on a dynamic model. We find that the robot is a fully damped system and the damping forces of the robot itself are large enough due to the large gear reduction ratio of motors. Then energy shaping plus damping approach is applied to our robot, wherein only energy shaping is necessary due to enough damping forces of the robot itself. In other words, the disadvantages of differential feedback, such as amplifying the measurement noise, can be avoided. Globally asymptotic stability is guaranteed. Both simulations and experimental results show the effectiveness of the proposed control design.

Methods
In this section, we first derive a dynamic model for the omnidirectional mobile robot, and then the passivity property of the open-loop robot dynamic system is analyzed.
The prototype platform with three MY wheel-II assemblies arranged at 120 degree intervals beneath the steel disk is shown in Fig. 1. Each assembly is actuated with a DC motor. For a detailed description of the MY wheel-II mechanism and the prototype platform, the readers are referred to [16].
The two coordinate frames used in the modeling are shown in Fig. 2: the world coordinate frame {W } fixed on the ground and the moving coordinate frame {M} fixed on the robot geometric center. The nomenclature is defined in Table 1.
Note that, as shown in Figs. 1 and 2, each MY wheel-II assembly has two contact points with the ground, and therefore two contact radiuses exist for each wheel (i.e., D in and D out ) [17]. In our previous work [17], a continuous dynamic model including the DC motor dynamics has been derived for the robot by using an average contact radius (i.e., L 0 = (D in + D out )/2), while the resulting parameter errors are considered as perturbations to the nominal dynamic model. In addition, it is assumed that no slippage is between the wheel and the motion surface. The coulomb and viscous friction, dead-zone and backlash are also unmodeled.
The coordinate transformation matrix from the moving coordinate frame to the world coordinate frame is as follows: We get The dynamic model of the mobile robot including motor dynamics expressed in the directions of X M and Y M is given as: The robot dynamic model in the world coordinate frame can be obtained by combining (1), (2), (3) [17]: To facilitate the analysis of passivity property, by premultiplying (4) by W M R, we have, where τ = Bu, which is considered as the virtual control input in this paper, and and Dq is the dissipative force, due to the combined viscous friction of the motor, gear and wheel shaft, as well as the motor armature resistance. This relates to the loss or dissipation of energy. Moreover, since D is positive definite, the robot is a fully damped system [18]. It can be seen that the inertia matrix M is symmetric, positive definite, and both M and M −1 are uniformly bounded. In addition, the total energy of the open-loop dynamic system (5) is The time derivative of the energy function (6) along (5) is: Note that D is symmetric and positive definite and thus q T Dq > 0. Therefore, according to the standard passivity definition [19], (5) defines an output strictly passive mapping from the virtual control input τ to q. Note that, the passive mapping from the real control input u to q cannot be guaranteed.
There are two steps in the passivity-based control approach, i.e., energy shaping and damping injection. The first step is an energy shaping stage where the potential energy of the system is modified in such a way that the new potential energy function has a global and unique minimum in the desired equilibriums. Second, a damping injection stage where the dissipation function is modified to ensure global asymptotic stability. For Eq. (5), it is observed that the potential energy is absent. The energy shaping is thus indispensable. However, the damping injection stage can be avoided if the dissipative forces of the robot itself Dq are large enough to satisfy the control system performance requirements. In other words, by making use of the structure of the robot dynamics, the controller design can become easy and simple. Indeed, it is shown in our simulation and experiments that the controller is able to achieve good performance even though no damping is injected into the system.

Remark 1
The matrix D can be rewritten as follows: It can be seen that the dissipative force Dq is related with the gear reduction ratio and wheel radius. More specifically, the dissipative force has a positive correlation with the gear reduction ratio n and an inverse correlation with the wheel radius r.
Remark 2 It is worth pointing out that the robot is a continuous linear dynamic system when the robot moves only with translational motion, and no parameter uncertainties of the contact radius L 0 exist in the robot dynamics. However, the parameter uncertainties in the robot contact radius L 0 will appear in the robot dynamics if the robot moves with rotational motion. In fact, the robot is an autonomous switched nonlinear system in this case [17].

Control design
In this section, we derive a trajectory tracking controller only with the energy shaping. The tracking control problem is formulated as follows: Given a reference trajectory q d (t) = x d y d θ d T , which is bounded and twice continuously differentiable, find a control input u(t) such that the responses of the robot, q(t) = x y θ T , The proposed controller is inspired from the wellknown passivity-based controller, 'PD+' controller proposed in [20]. The proposed controller is similar to 'PD+' controller, but without damping injection, which is directly given as follows: where K p is the controller gain and is positive and symmetric.
With the controller (7), the closed-loop error dynamic system is: The energy of the open-loop system (5) is: Then choice of the controller (7) actually modifies the original mechanical energy function (9) into: Note that τ is the virtual controller, and the final controller u can be derived as follows: It can be seen that only energy shaping is conducted, and thus, only position feedback is used in our proposed controller. The damping injection is not needed. This is because the motor gear reduction ratio of our robot prototype is large (n = 185.7) and we find that the damping force of the robot itself Dq is enough. The calculated results of D of our robot prototype is: In other words, such a damping injection has already been introduced by the robot itself. However, if the motor gear reduction ratio is small, i.e., direct drive motor, it can be calculated that the damping force of the robot itself will be very small and in this case the damping injection will be indispensable. Whether the damping force of the robot itself is large enough depends on the requirements on the control performances.
It is known that differential feedback usually introduces the problem of noise amplification. Therefore, one advantage of the proposed controller is no differential feedback. It is also noted that only the measurement of the rotational velocity (θ) is needed in the controller, while the robot translational velocity (ẋ and ẏ) is not used [see (5)]. This is another advantage of the proposed controller. For example, in the well-known computed torque control, the measurement of the robot velocity q is indispensable.
In addition, it can be seen that the closed-loop error dynamics (8) does not result in decoupled linear systems. The damping forces of the robot itself are also reserved. These are the main differences from feedback linearization approaches, such as the well-known computed torque control.

Remark 3
Although there are parameter uncertainties in L 0 since the real contact radius of each wheel is D in or D out , the parameter uncertainties are not considered in the controller design, in order to facilitate the theoretical analysis. It is shown in our experiments that the control system performs well even though the parameter uncertainties appear when the robot moves with rotation.
Remark 4 For the stabilization control, it can be seen that the proposed controller (7) can be reduced to a very simple proportional feedback controller. That is, Therefore, the matrix M, C and D are not used in the controller, and thus, the robot dynamic parameters involved in these matrixes are not necessarily to be known.

Stability analysis
We choose the energy function as the Lyapunov function: Since K p is positive and symmetric, and C is skew-symmetric, then the time derivative of (12) becomes which is negative semi-definite. However, the LaSalle's theorem cannot be applied to this case, since LaSalle's theorem is applicable for autonomous systems. Here, the closed-loop error dynamics (8) is a non-autonomous system since the matrix C is related with θ (t). Instead of using LaSalle's theorem, the Matrosov theorem can be applied to show that the control system is globally asymptotically stable. The readers are referred to [20] for the detailed proof.  performs translational motion without rotation, i.e., θ d = 0 rad. After 10 s, the desired robot orientation angle is set as θ d = 0.32(t − 10) rad. The controller gain is set as:

Simulations
Simulation results are shown in Figs. 3, 4, 5 and 6. Figures 3, 4 and 5 show the tracking performance of the proposed controller. It can be seen that the controller achieves good performance only with position feedback while without velocity feedback. It is also observed that the tracking errors in the first 10 s are near zero, while the tracking errors increase when the robot moves with rotation. As already mentioned before, the robot is a linear system when the robot moves only with translational motion. However, if the robot moves with rotational motion, then the parameter uncertainties in the contact radius L 0 take effects on the robot dynamics. In other words, modeling errors resulting from the parameter uncertainties in L 0 are introduced into the closed-loop error dynamics and thus the controller performances are reduced. It is also shown in Fig. 6 that the fluctuations in the robot velocity are introduced when the robot moves with rotational motion. This is caused by the parameter uncertainties in L 0 and the fact that the parameter uncertainties are not effectively compensated in the controller. In addition, the real control input is shown in Fig. 7.

Experiments
In this section, we first give a brief introduction of the experimental setup and then present the experimental results. The parameter uncertainties, the robot velocity-related viscous and coulomb friction and nonlinearities (e.g., deadzone and backlash) are not involved in the derived dynamic model (5). Thus, the effectiveness of the proposed controller should be verified through experiments.

Experimental setup
The robot prototype developed in our laboratory is shown in Fig. 1. The complete schematic of the experimental setup is shown in Fig. 8 [21][22][23], to name a few. Experimental data are transmitted to a laptop from the central controller.
Finally, the control law was implemented in C on the central controller. The sampling time of the control system was set as 10 ms. The Euler's method was used as the discretization method. The same circle trajectory used in the simulation is selected as the reference trajectory in  respectively, which are larger than simulation results, respectively. This is because the modeling errors in practice, such as the unmodeled friction forces and estimated parameter values. Figure 12 shows the control input for the three motors. It is shown in both Figs. 11 and 12 that, in the first 10 s, the tracking errors and the control inputs are smooth. However, from 10 to 30 s, fluctuations appear in both the tracking errors and control inputs. This is because, as already mentioned, the parameter uncertainties in the contact radius L 0 take effects on the robot dynamics only when the robot moves with rotational motion.

Conclusions
In this paper, a passivity-based trajectory tracking control has been proposed for an omnidirectional mobile robot. The passivity properties of the prototype robot have been analyzed. It is shown in our analysis that the prototype robot itself is an output strictly passive system and is a fully damped system. The robot itself has enough damping forces due to the large gear reduction ratio of the motors. As a result, only energy shaping (i.e., position feedback) is needed in our proposed controller. In fact, only the rotational velocity of the robot is needed. Stability analysis shows that globally asymptotic stability can be guaranteed. Both simulations and experimental results have shown the effectiveness of the proposed control design.
In the future work, we will improve the performance of the proposed control design by compensating the modeling errors and external disturbances.