Fuzzy boundary layer tuning for sliding mode systems as applied to the control of a direct drive robot
Authors
- First Online:
DOI: 10.1007/s00500-008-0383-z
- Cite this article as:
- Erbatur, K. & Çallı, B. Soft Comput (2009) 13: 1099. doi:10.1007/s00500-008-0383-z
- 151 Views
Abstract
Chattering in the control signal is a significant problem in sliding mode control (SMC). The boundary layer approach is one of the many modifications proposed in the literature to avoid the chattering. In this approach, instead of the discontinuous SMC, a continuous feedback control law is employed in a boundary layer around the sliding surface. The thickness of the boundary layer is an important design parameter. This paper proposes a fuzzy online tuning method to adjust the boundary layer thickness for the best system performance without chattering. The method features the measurement of the chattering in the control signal. The paper validates the performance of the algorithm by experiments on a direct drive robot with a range of different payloads.
Keywords
Sliding mode controlChatteringBoundary layerFuzzy logic1 Introduction
In the robotic manipulator control coupled, nonlinear system dynamics and system parameters variations arise as difficulties. Sliding Mode Control (SMC) (Utkin 1977; Young et al. 1999; Utkin 1992; Slotine and Shastry 1983) is robust control strategy which can cope with such difficulties. The primary characteristic of SMC is that the control signal is discontinuous. A sliding motion on a predefined subspace of the state-space is established and the system state repeatedly crosses the switching surface. A number of works are reported on the discrete time implementation and stability analysis of sliding mode controllers (Milosavljevic 1985; Sarpturk et al. 1987; Sira-Ramirez 1991; Koshkouei and Zinober 2000; Chen and Fukuda 1997). Chen and Fukuda (1997) suggests that the continuous time stability considerations can still be valid for discrete time systems, provided that the sampling period is chosen short enough.
The high speed (ideally at infinite frequency) switching necessary for the establishment of a sliding mode causes oscillations about the sliding surface. In sliding mode motion control applications, high-frequency oscillations of the controller output, termed as chattering, introduce a problem. A detailed explanation of this problem and its reasons are given in Utkin and Ozguner (1999). In practical implementations, chattering is highly undesirable because it may excite unmodeled high frequency plant dynamics and this can result in unforeseen instabilities.
To overcome this problem, many modifications to the original sliding control law have been suggested (see Slotine and Li 1991; Elmali and Olgac 1992; Tunay 1996). The most popular modification is the boundary layer approach, which is, basically, the application of a high gain feedback when the motion of the system reaches \( \phi \)-vicinity of a sliding manifold (Slotine and Shastry 1983). This approach is based on the idea of the equivalence of the high gain systems and the systems with sliding modes (Izosimov and Utkin 1981). In this method, the determination of an appropriate value for the boundary layer thickness is significant. A narrow boundary layer cannot solve the chattering problem, whereas, a too wide boundary layer causes degradation in tracking performance and robustness.
With the development of the intelligent control field, new control approaches based on fuzzy logic, neural networks and evolutionary computing have emerged and are used widely. These control methodologies provide an extensive freedom for control designers to exploit their understanding of the problem, to deal with problems of vagueness, uncertainty or imprecision and learn from experience. Fuzzy control and adaptation systems, as tools against the problems of uncertainty and vagueness, incorporate human experience into the task of controlling a plant. When employed in robotic trajectory control, they mainly play one of two roles in the controller architecture. One of them is to compute the control signal by fuzzy rules. The other one is to tune, adapt or schedule the parameters of control mechanisms to accomplish better performance in face of uncertainties and different operating conditions. The combination of sliding mode controllers and fuzzy logic systems are studied by a number of researchers and a survey on this field is presented in Kaynak et al. (2001). Fuzzy sliding mode control (FSMC) approaches can be classified as direct and indirect ones. In the direct approach, the well-established SMC theory is used in the design of fuzzy controllers, whereas, in the indirect approach, fuzzy systems are used to improve SMC controllers, typically by online tuning of controller parameters.
Direct fuzzy SMC systems which use boundary layers are reported in a number of papers. De Neyer and Gorez (1994) redefine the boundary layer as a fuzzy map. Palm (1994) uses SMC guidelines in the stability analysis and design of a fuzzy controller and shows that the fuzzy system behaves like a SMC with a boundary layer. Likewise Dieulot et al. (1996) state that a fuzzy control lookup table reproduces a kind of a variable structure control with continuous approximation in a boundary layer. Lhee et al. (2001) propose a SMC method similar to a fuzzy logic controller where control gain and boundary layer thickness are tuned by gradient based tuning rules without fuzzy reasoning. Linguistic rules are used in the design of a nonlinear boundary layer in the approach followed by Tu et al. (2005).
Indirect fuzzy SMC systems with boundary layers are investigated too. Ghalia and Alouani (1995) uses a fuzzy boundary layer and compute the control action as a fuzzy combination of reaching and equivalent function terms. The resulting system has chattering elimination properties. A fuzzy boundary layer with variable thickness is proposed in Lee et al. (2001). In this work, the algebraic distance to the sliding surface and the angle between the state vector and the sliding surface are used as inputs to a fuzzy system which modifies the boundary layer thickness. The boundary layer thickness is modified by a fuzzy system in Becan (2005) too, where the input of this system is the sliding variable. Xin and Chen (2006) use the magnitudes of state and state derivative errors to adjust the boundary layer thickness by four fuzzy rules. In Pang et al. (2006)a fuzzy SMC method where the sliding line offset from the origin, sliding line slope and the boundary layer thickness are tuned according to the tracking error and its derivative.
Since the main motivation of the use of a boundary layer is chattering elimination, employing a measure of chattering in boundary layer tuning is an effective approach. Examples of chattering measures can be found in Erbatur et al. (1996) and Erbatur and Kaynak (2001). However, only a few studies for boundary layer thickness tuning with fuzzy rules which use a chattering measure as an input are reported. Erbatur et al. (1996) uses tracking error and the chattering measure for tuning the slope of the sliding surface. Kim and Paek (2006) use the sliding variable and a chattering variable to tune the parameters of a tangent-hyperbolic shaped modified signum function for control smoothing. The approach in Ryu and Park (2001) employs position error and chattering indices to tune the slope and thickness of the boundary layer via the use of a fuzzy system.
Erbatur and Kawamura (2001) and Erbatur and Kawamura (2002) developed a fuzzy system with a different structure and different inputs. The sliding variable and the chattering variable are used to tune the boundary layer thickness by four fuzzy rules. Simulation results are presented in these two studies. Erbatur and Calli (2007) improves this system by employing modified membership functions for a faster convergence of the tuned parameter and tests the algorithm by experiments on a robot manipulator.
This paper proposes a tuning scheme similar to the one introduced in Erbatur and Calli (2007). However, the present paper employs a different SMC algorithm for improved transient response and it checks the robustness of the method by experiments on a direct drive robot with different payloads. The experimental results are compared with the ones obtained with the fixed boundary layer version of the same controller too.
The next section outlines the design of a sliding mode controller with a boundary layer for second order SISO systems as a basis of the discussion in later sections. The third section presents the online tuning method. The experimental results obtained with a two-dof direct drive arm are presented in Sect. 4. The conclusion is presented in Sect. 5
2 SMC with a boundary layer
\( H \) is a constant which is chosen strictly positive for stability. \( K(X) \) is a state dependent gain which also takes only positive values.
In the case of an equality in (21) the Lyapunov function \( V \) would decay exponentially to zero with a time constant equal to \( {1 \mathord{\left/ {\vphantom {1 {(2\bar{H}}}} \right. \kern-\nulldelimiterspace} {(2\bar{H}}}). \) With the inequality, this decay will be even faster. Since \( V = \tfrac{1}{2}s^{2} , \) the same fact applies for the convergence of \( s^{2} \) too.
Outside the boundary layer, in effect, the unmodified SMC is used. Therefore, this control, as discussed above, pushes system trajectories towards the sliding line.
3 The online tuning method
In practical applications where the controller is implemented on digital computers, infinite frequency switching is not possible, simply because of the time delays introduced by the sampling time. Therefore a zigzag behavior is observed around the sliding line, rather than an exact following of it. A number of papers which investigate the sliding mode controllers in discrete time applications appeared in the literature and discrete time equivalents of the stability analysis tools in continuous time are sought (Milosavljevic 1985; Sarpturk et al. 1987; Sira-Ramirez 1991; Koshkouei and Zinober 2000; Chen and Fukuda 1997). Generally, the conditions which will assure stability in discrete time are in the form of inequalities involving the sampled sliding variable and the control laws governed by such considerations are also discrete time equations unlike the ones in the previous section. It is also proposed that control laws obtained in continuous time can still assure stability provided that the sampling period is selected shorter than a certain limit (Chen and Fukuda 1997). The controller designed in the previous section with considerations for continuous time is studied in this paper. However, implementation on digital computers is assumed and its effects are investigated.
- 1.
When chattering occurs, the boundary thickness should be increased to force the control input to be smoother.
- 2.
The boundary layer thickness should be decreased if the control activity is low. This is since, in order to obtain best tracking performance, some amount of activity in control is needed and our aim is to operate the system at the limit of chattering. Low control activity can be identified by small values of the chattering variable \( \Upgamma. \)
- 3.
When the absolute value of the sliding variable is low, the phase trajectory is close to the sliding line and hence a steep saturation function (narrow boundary layer) is likely to introduce chattering effect.
- 4.
When the absolute value of the sliding variable is high, the phase trajectory is far away from the sliding line and hence a steep saturation function is desirable to decrease the duration of the reaching phase.
The four guidelines above can be used in various ways to construct a tuning mechanism for \( \phi . \) An analytic relation between \( \Upgamma,\; s \) and \( \phi \) could be one of the choices. The method proposed in this paper employs fuzzy systems for the online tuning of \( \phi . \) Fuzzy systems, as also mentioned previously, are natural choices to exploit verbal descriptions (like the four guidelines above) of the plant or problem to obtain control or adaptation mechanisms.
The fuzzy rule base
\( \Upgamma \) | |||
---|---|---|---|
Small \( \Upgamma \) | Big \( \Upgamma \) | ||
\( \left| s \right| \) | Big \( \left| s \right| \) | \( \Updelta \phi_{\text{NB}} \) Rule A | \( \Updelta \phi_{\text{NS}} \) Rule C |
Small \( \left| s \right| \) | 0 Rule D | \( \Updelta \phi_{\text{PB}} \) Rule B |
This function characterizes a fuzzy system with singleton fuzzification, product inference rule and center average defuzzifier. \( \mu_{{{\text{Big }}\left| s \right|}} \left( {\left| s \right|} \right)\mu_{{{\text{Small }}\Upgamma }} \left( \Upgamma \right) \) is the truth value of Rule A computed using \( \left| s \right| \) and \( \Upgamma \) as inputs. The truth values of the other three rules are similarly computed.
It is quite intuitive that, because small chattering and small \( \left| s \right| \) are desirable conditions, the thickness which achieves them should not be changed. Note the shapes of the Small \( \Upgamma \) and Small \( \left| s \right| \) membership functions. They assume the value 1 in their respective neighborhoods of zero. These regions close to zero act as a dead-zone which stops the evolution of \( \phi \) by commanding zero \( \Updelta \phi . \) For the convergence of \( \phi , \) this dead-zone characteristics is quite useful. The membership corner positions \( \Upgamma_{\text{Small}} \) and \( \left| s \right|_{\text{Small}} \) act as borders of the dead-zone, and hence, they are very important design parameters. They convey the control engineer’s notion of the acceptable performance and the acceptable level of chattering into the controller design. Whenever the pair \( \left( {\Upgamma ,\left| s \right|} \right) \) leaves the dead-zone, nonzero \( \Updelta \phi \) will be computed in (25) and \( \phi \) will continue evolving.
In the next section, experimental studies are presented.
4 Experimental results
Robot dynamics parameters
Link 1 weight \( m_{1} \) (including elbow motor) | 17.9 kg | Link 2 weight \( m_{2} \) | 3.25 kg |
Link 1 inertia \( I_{1} \) (including elbow motor) | 0.54 kg m^{2} | Link 2 inertia \( I_{2} \) | 0.04 kg m^{2} |
Motor 1 rotor inertia \( J_{1} \) | 0.167 kg m^{2} | Motor 2 rotor inertia \( J_{2} \) | 0.019 kg m^{2} |
Link 1 length \( l_{1} \) (joint center to joint center) | 0.4 m | Link 2 length \( l_{2} \) (joint center to tool center) | 0.28 m |
Link 1 joint to center of mass distance \( l_{c1} \) | 0.277 m | Link 2 joint to center of mass distance \( l_{c2} \) | 0.09 m |
Joint 1 viscous friction coefficient \( \hat{B}_{1} \) | 3 Nms/rad | Joint 2 viscous friction coefficient \( \hat{B}_{2} \) | 0.6 Nms/rad |
Joint 1 Coulomb friction coefficient \( \hat{F}_{c1} \) | 4.5 Nm | Joint 2 Coulomb friction coefficient \( \hat{F}_{c2} \) | 1.1 Nm |
Equipped with the plant information in (27–29), Fig. 8 and Table 2, our task is to apply the sliding control law (23). Since this control law is derived for single input single output (SISO) systems, it is applied to the robot joints in an independent joint control scheme. Simplified SISO equations of motion can be obtained from (27) in a variety of ways. In our approach, the equations of motion are obtained with fixed effective inertia and effective damping parameters (Spong and Vidyasagar 1989).
The next step in the SMC application is the selection of the controller gain function \( K_{1} (X_{1} ) \) and controller parameters \( H_{1} ,\lambda_{1} \) and \( \phi_{1} . \) The discussion in Sect. 2 states the condition (14) on \( K_{1} (X_{1} ) \) for robust performance. However, it should be noted that in practice, we are faced with another constraint when assigning \( K_{1} (X_{1} ). \) This constraint is chattering which is not considered in the design of the control law (11). Large values of \( K_{1} (X_{1} ) \) cause chattering even when a boundary layer is employed. Therefore, rather than seeking uncertainty bounds for \( f_{1} \) and \( b_{1} , \) manual tuning of the parameters which will achieve acceptable performance with limited chattering is carried out in this work. This is a trial and error based process. Also, because it is more suitable for manual tuning, not a function varying over the domain of \( X_{1} , \) but a constant value \( K_{1} \) is used for \( K_{1} (X_{1} ). \) The gains \( H_{1} ,\;\lambda_{1} \) and \( \phi_{1} \) are manually tuned too.
Controller parameters
Parameter | Value |
---|---|
\( K_{1} \) | 60 |
\( K_{2} \) | 50 |
\( \lambda_{1} \) | 40 |
\( \lambda_{2} \) | 50 |
\( H_{1} \) | 4 |
\( H_{2} \) | 3 |
\( \phi_{1} \) | 0.03 |
\( \phi_{2} \) | 0.03 |
Fuzzy system parameters
Parameter | Value |
---|---|
\( \Upgamma_{\text{Big}} \) | 200,000 |
\( \Upgamma_{\text{Small}} \) | 2,000 |
\( \left| s \right|_{\text{Big}} \) | 4 |
\( \left| s \right|_{\text{Small}} \) | 0.01 |
\( \Updelta \phi_{\text{BP}} \) | 0.1 |
\( \Updelta \phi_{\text{NB}} \) | −0.1 |
\( \Updelta \phi_{\text{NS}} \) | −0.05 |
A control cycle time of 1 ms is used. The position reference trajectory consists of step joint references of 0.1 rad applied to the two joints. The initial condition corresponds to a stationary pose with extended elbow. Below, we present results for the elbow joint. However, the step references are applied simultaneously to the joints and similar results are obtained for the base joint. They are not presented in this paper due to lack of space.
We carried out experiments in which the initial conditions for \( \phi \) were different than zero too. Included in this experiments are ones which used initial conditions larger than 0.03 (the boundary thickness value of this fixed \( \phi \)-parameter method). In all these experiments with zero payload, the boundary layer thickness converged to a steady state value in a small vicinity of 0.03.
With the observations from Figs. 10 and 11, we can state the following advantage of the control system with fuzzy parameter tuning: This system is successful in adjusting the boundary layer thickness according to the admissible chattering level described in Table 4. Thus, a manual tuning process for this parameter is not necessary then this method is applied.
The five plots on the right hand side show the control signals with the fuzzy SMC method. When these plots are compared with the corresponding left column plots with the same payload, it can be observed that the level of chattering or ringing is kept the same, independent from the weight of the payload. The fuzzy tuning on \( \phi \) regulates the control effort. Since the parameters in Table 4 dictate the same acceptable limits (for chattering and \( \left| s \right| \)) for all payload cases, the same smoothing level on the control signal is achieved even under heavy payloads. The initial value of the boundary layer thickness was zero in all five experiments with fuzzy tuning. We also observed that the steady state value of \( \phi \) increased with increasing payload. It should also be noted that the steady state error did not change significantly in the ten experiments of Fig. 12. It was less than \( 10^{ - 4} \) rads in all cases. With this discussion we can state the second advantage of the online tuning method: the proposed fuzzy tuning method adjusts the boundary layer thickness successfully and this makes the use of the SMC controller practical even under changing payloads.
5 Conclusion
Sliding mode controller structures with boundary layers are widely used to solve the chattering problem. However, tracking performance is degraded when a too wide boundary layer is used and chattering prevails when the boundary layer is too narrow. The determination of a suitable boundary layer thickness which can eliminate chattering and at the same time achieve acceptable performance is an important design issue. This paper proposes an online fuzzy tuning method to adjust the thickness of the boundary layer. The thickness of the boundary layer is obtained without the offline trial and error processes. The online algorithm reacts to changes in the sliding variable and the chattering level to adjust the boundary layer thickness continuously. This enables the controller to perform under changing operating conditions without chattering. The results are verified by experiments with various payload values on a direct drive robot. The performance and chattering elimination properties of the proposed method make it a candidate for industrial applications.