Adaptive Fuzzy Sliding Mode Control of Omnidirectional Mobile Robots with Prescribed Performance

: Adaptive fuzzy sliding-mode control design for omnidirectional mobile robots with prescribed performance is presented in this work. First, an error transformation which transforms the constrained variable into an unconstrained one is carried out. Next, a fuzzy logic system (FLS) for approximating the unknown dynamics is constructed. Based on such a model, a nominal adaptive linearizing controller incorporating a serial-parallel model (SPM)-based composite algorithm, which improves the tracking performance of the overall closed-loop system, is synthesized. To solve the so-called “loss of controllability” problem, a smooth-switching algorithm is embedded which hands over the control authority to an auxiliary sliding-mode controller until the danger is safely bypassed. The proposed design ensures the semi-globally uniformly ultimately bounded stability of the closed-loop signals. Simulation works demonstrating the validity of the proposed design are presented in the ﬁnal.


Introduction
Omnidirectional mobile robots (OMR) are platforms that are able to move in any direction without reorientation. Owing to their great potential in a wide variety of industrial and military applications, the corresponding tracking control issues have attracted a great deal of attention over the decades [1][2][3][4]. The conventional PID controller, though still popular in industrial applications, may however exhibit discounted tracking performance when nonlinear dynamics or uncertainties are non-negligible. Regarding this, various nonlinear control schemes, such as feedback linearization [5], adaptive control [6], robust adaptive control [7][8][9][10], model-predictive control [11,12], etc., have been proposed to achieve better tracking performances in recent years. In particular, for an OMR with structured and unstructured uncertainties, the smooth robust adaptive control proposed in [10] was able to improve the tracking performances and avoid the control singularity simultaneously. However, all the aforementioned works rely heavily on the system modeling, which may be time-consuming or become difficult in complex environments.
In contrast, fuzzy logic controllers (FLCs) are able to translate the knowledge of human experts into robust control strategies without the need of a mathematical model of the system. Therefore, the numbers of fuzzy logic-based control algorithms for OMRs have been continuously increasing in the past few decades [13][14][15][16][17]. The work in [18] proposes a fuzzy controller for navigation and a behavioral method for obstacle avoidance. The works in [5,9,19] incorporated fuzzy logic with the popular PID control method for the path planning or trajectory tracking of OMRs. FLSs are used to approximate an ideal control law with an adaptive Mamdani-type fuzzy controller for an omnidirectional spherical mobile robot in [20]. Liu and Hsiao proposed an adaptive fuzzy sliding-mode tracking controller for OMRs [21]. Ren et al. presented a fuzzy-based intelligent obstacle-avoidance strategy 1. The cases with an unknown control gain function and unknown nonlinearity arising from unmodeled dynamics, exogenous disturbances such as low-velocity friction [29], etc., are considered together at once; 2. The FLC is invoked to approximate the lumped unknown nonlinearity, which renders the adaptive control easy to formulate; 3. The PPC technique is incorporated to ensure the fulfillment of a prescribed performance requirement imposed on the configuration variables; 4. The composite update algorithm is incorporated to improve the tracking performance further.
The paper is organized as follows: in Section 2, we state the problem and present some preliminaries. The adaptive sliding-mode control design that guarantees the prescribed performance is provided in Section 3. To verify the proposed design, simulation studies of an OMR are given in Section 4. Finally, we conclude in Section 5.

Fuzzy Logic Systems
An FLS is an artificial decision-making system that emulates a human's reasoning processes. It is composed of four principal components: a fuzzifier, fuzzy rule base, inference engine, and defuzzifier. For the two-input/single-output system considered later in this paper, the fuzzy rules in the rule base will have the following forms [30]: where j = 1, 2, · · · , m are the indices of the fuzzy rules, x = [x 1 , x 2 ] T and y are the input and output vectors of the FLS, respectively; and A j and B j are linguistic terms characterized by their membership functions µ A j (x i ) and µ B j (y), respectively.
By using a singleton fuzzifier, product inference, center-average defuzzifier, and Gaussian membership function, the output of the FLS can be expressed as linear combinations of fuzzy basis functions as follows: whereȳ j is the point at which µ B j has its maximum. Define θ = [ȳ 1 ,ȳ 2 , · · · ,ȳ m ] T as the adjustable parameter vector and φ(x) = [φ 1 (x), φ 2 (x), · · · , φ m (x)] T as the corresponding fuzzy basis vector, where Then, the output y in (2) can be rewritten in a compact form as Such a fuzzy logic system can be applied to approximate any continuous function f (x) over a compact subset of input space to any given accuracy [30].

System Dynamics
This section introduces the kinematics and dynamics of an omnidirectional mobile platform with three independent driving wheels equally space 120 degrees apart. A photo of a real system is given in Figure 1. To describe the planar motion of a mobile platform, as shown in Figure 2, two coordinate frames-a moving frame {o m , x m , y m } located at the geometrical center of the cart and a stationary world frame {o 0 , x w , y w }-are generally required. In the sequel, the world coordinate is selected as the default frame. Clearly, the motion of the platform can be decided if p(t) = [x p (t) y p (t)] T and θ(t) are specified.  Assuming non-slip conditions, the inverse kinematics are described by [31] where ω = [ω 1 , ω 2 , ω 3 ] T is the angular velocity of the wheels, ξ = [x p , y p , θ] T , and with S θ = sin(θ) and C θ = cos(θ).
whereȳ j is the point that µ B j has its maximum.

91
Define θ = [ȳ 1 ,ȳ 2 , · · · ,ȳ m ] T as the adjustable parameter vector and φ(x) = [φ 1 (x), φ 2 (x), · · · , φ m (x)] T the corresponding fuzzy basis vector, where Then the output y in (2) can be rewritten in a compact form of Such a fuzzy logic system can be applied to approximate any continuous function 92 f (x) over a compact subset of input space to any given accuracy [29]. It is noted that H(θ) is nonsingular for all θ ∈ R and hence is always invertible. By a direct calculation, we have The balances of linear and angular momentum result in [31] where m and J are the mass and the moment of inertia of the system, respectively,ẑ is the unit vector of the z axis, and f i are the three contact frictions of the wheels. The torques τ i and the driving voltages u i , i = 1, 2, 3 for a DC motor are related as follows: where a i , b i > 0, i = 1, 2, 3 are the proportional constants. Due to the non-slip condition, and by neglecting the wheel dynamics, we have After a straightforward calculation, the dynamical equation can be written in a compact form: where is the the unknown nonlinearity arising from un-modeled dynamics, exogenous disturbances such as low-velocity friction [29], etc., and

Control Design
Define the tracking error vector The paper aims to synthesize a control algorithm for u such that (i) The position vector ξ(t) tracks the reference trajectory ξ d (t) accurately; (ii) The following prescribed tracking performance is achieved: for all t ≥ 0, where 1 ≤ i ≤ 3 and ρ i (t) is a performance function given by with ρ 0,i , ρ ∞,i , α 0,i being positive constants at disposal.
To attain the aforementioned objectives, the following error transformation is carried out first [23]: where ε i is the transformed error and It is clear that item (ii) is equivalent to keeping ε i bounded for all time. On the other hand, the inverse transformation is well-defined provided that (14) holds. A direct differentiation of (18) yieldṡ where g i = 1 − (e i /ρ i ) 2 . We can start by defining the following error metric: where λ s > 0 is the gain constant at disposal. By a direct differentiation of s(t) in (20), and taking (19) into account, one haṡ By virtue of the exponential stability of the ε 1 dynamics on the sub-manifold s = 0, the control of the original three dimensional system (11) is reduced to the stabilization problem of the one-dimensional s-dynamics in (21). The s-dynamics in (21) can be written in a compact form: and In this work, the FLSs are introduced to approximate the unknown function η in (24). By virtue of the universal approximation property, given an a priori constant , where ϑ b ∈ R n b ×3 and Y b ∈ R n b are the optimal weight vector and the regression matrix, respectively. The major advantage of such an approach is that the tedious procedure of determining the regression matrices indispensable to a standard adaptive controller is no longer required. Substituting (25) into (22) yieldṡ To stabilize (26), the following adaptive linearizing controller is frequently applied: As can be easily seen, such a control algorithm may suffer from control singularity when det(Y aθa ) → 0. To prevent this occurrence, a smooth-switching algorithm in [10] is adopted.
for all x ∈ R 3 , x = 0. There, then exists a g o > 0 such that for all x ∈ R 3 , x = 0. The proposed control algorithm can now be specified as follows: where with k s being the gain constant and a smooth-switching function given by [10] Basically, w defines a region without a sharp boundary of the value det[Y T aθa ], within which the sliding-mode control is in charge due to the approach of singularity. The control authority will be handed over to the nominal adaptive fuzzy controller until the singularity goes away. In addition to smoothness, the function has two more desired properties: By virtue of (P1), the singularity phenomenon will be totally avoided, while (P2) ensures the boundedness of the virtual control inputs for all time.
The following property is useful in the upcoming derivation and is quoted here for ease of reference [32] Substituting (30) and (31) into (26) yieldṡ When updating the estimated parameter vectorsθ a andθ b , it is known that the composite update algorithm generally results in better tracking performance [32]. Regarding this, the following serial-parallel estimation model is adopted in this paper:ŝ whereŝ is the state of the SP estimation model, β > 0 is a gain constant, ands = s −ŝ is the prediction errors. By subtracting (26) from (35), the prediction error dynamics becomės The composite update algorithms forθ a andθ b can now be assigned aṡθ Now, we are ready to state our main achievements as follows.

Theorem 1.
Consider the closed-loop system consisting of the system dynamics in (11), the control in (30), and the update algorithm in (37). If the value g o is known a priori and the gain constants are selected to satisfy β > 1/2, then the following points hold: • (T1): All the signals in the closed-loop system remain bounded for all time; • (T2): The tracking error e i (t) converges to the following set Ω i , which can be made arbitrarily small by increasing λ s and k v appropriately.
Proof of Theorem 1. Select the following Lyapunov function where( ·) = (·) −( ·). The time derivative of V(t) along the system dynamics in (11) can be calculated as follows: Note that Substituting (42) into (41) yieldṡ Next, by completing the squares, Apparently V(t) is bounded forV(t) ≤ 0 when V(t) ≥ d v /k v ; the boundedness of the signals s(t),s(t),θ a (t), andθ b (t) follows directly by definition. This in turn ensures the boundedness of the error signals e(t) andė(t) in (13) and the controllers in (30). Therefore, T1 is proven.
On the other hand, (45) also implies that It is easy to see that |s(t)| eventually converges to a small set with radius √ 2d v /k v . Based on (33), |ε(t)| eventually converges to a set with radius √ 2d v /k v /λ s , which in turn implies that e(t) converges to Ω e as t → ∞.

Remark 1.
As is well known, the sign function appearing in (31) can be replaced with the saturation function to eliminate the possible chattering behavior [32].

Simulation
Based on the pseudo code listed in Algorithm 1, simulation results are presented in this section to demonstrate the validity of the proposed design.
The desired trajectory is a circle given by ξ d = 0.5[cos(0.4t), sin(0.4t), 0] T . The unknown nonlinearity is as follows: h(ξ,ξ) = [ξ 2 ξ 3 cos(ξ 1 +ξ 1 +ξ 2ξ3 ), sin(ξ 1 + 2)ξ 2 + ξ 3 cos(ξ 2 +ξ 1 ) +ξ 2ξ3 ,ξ 1ξ2ξ3 /(2 + sin(ξ 1ξ2 + ξ 3 + 2))] T . The approximations of η i (ξ,ξ), i = 1, 2, 3 are conducted within the following fuzzy region: The membership functions for the input variables ξ p andξ p are given respectively by The corresponding fuzzy basis function φ j in (3)  The actual trajectory of the omnidirectional mobile robot follows the commanded circle faithfully, as can be seen from Figure 3. The corresponding tracking errors shown in Figure 4 converge quickly to a small set around zero while fulfilling the prescribed performance (black dashed lines) at the same time. The switching signal in Figure 5 indicates that the nominal adaptive fuzzy controller dominates during the first few seconds and then switches the control authority to the sliding-mode controller due to the quick decay of the estimated parameter vectorθ a (t) to a small value. The control inputs depicted in Figure 6 are rather mild except for the initial peaks due to the large tracking errors therein. ber Next, by completing the squares, By substituting (44) into (43), it yieldṡ Apparently V(t) is bounded for thatV(t) ≤ 0 when V(t) ≥ d v /k v , the boundedness 166 of the signals s(t),s(t),θ a (t), andθ b (t) follows directly by definition. This in turn 167 ensures the boundedness of the error signals e(t) andė(t) in (13) and the controllers in ( 168 30). Therefore, T1) is proven.

169
On the other hand, (45) also implies that It is easy to see that |s(t)| eventually converges to a small set with radius √ 2d v /k v .

171
Based on (33), |ε(t)| eventually converges to a set with radius √ 2d v /k v /λ s , which in 172 turn implies that e(t) converges to Ω e as t → ∞.   Table 1. Pseudo code for the proposed control algorithm.

176
Based on the pseudo code listed in Table 1, simulation results are presented out in 177 this section to demonstrate the validity of the proposed design.

Algorithm 1:
Pseudo code for the proposed control algorithm.

Start
Initialization: PPC parameters ρ 0 , ρ ∞ , α 0 ; FLS parameters in µ A j , µ B j , j = 1, · · · , m; control and tuning gains λ s , k s , γ 1 , γ 2 , σ 1 1 For i = 1 : n 2 % Read the sensor inputs ω i , i = 1, 2, 3 3 % Calculate the forward kinematics 4ξ = rH −1 (θ)ω, 5 ξ = ξ dt 6 % Calculate the transformed error ε i in (18)  can be expected, it is better than those in Fig. 4 with the price of a larger control effort in 201 the beginning, as shown in Fig. 8. can be expected, it is better than those in Fig. 4 with the price of a larger control effort in 201 the beginning, as shown in Fig. 8. Next, to see how different prescribed performances may affect the tracking performance and the control efforts, we change the corresponding parameters as follows: ρ ∞ = [0.02, 0.02, 0.02] T , α 0 = [1.0, 1.0, 1.0] T , The tracking performance is depicted in Figure 7. As can be expected, the perfromance is better than those in Figure 4 with the price of a larger control effort in the beginning, as shown in Figure 8.

Conclusions
We have constructed a fuzzy sliding-mode controller to achieve the objectives of the trajectory tracking of a three-wheeled uncertain omnidirectional mobile robot system under a prescribed performance constraint. The proposed design ensures asymptotical tracking stability and avoids the control singularity at the same time. Compared with conventional control methodologies, such an approach exhibits the major advantage of avoiding the tedious procedure of determining the regression matrices. Extensions to more difficult tasks such as slipping avoidance are currently under study.