Terminal Sliding Control for a SCARA Robot
Transcription
Terminal Sliding Control for a SCARA Robot
International Conference on Control, Instrumentation and Mechatronics Engineering (CIM '07), Johor Bahru, Johor, Malaysia, May 28-29, 2007 Terminal Sliding Control for a SCARA Robot E. Muñoz, C. Gaviria, A. Vivas Department of Electronics, Instrumentation and Control, University of Cauca [elenam, cgaviria, avivas]@unicauca.edu.co http://www.ai.unicauca.edu.co can be achieved. By introducing a nonlinear term in the sliding control and suitably designing the controller, the ultimate tracking error and the gain of the terminal sliding mode controller can be significantly reduced in comparison with the conventional linear sliding mode control. One of the major difficulties to achieve robustness to parametric uncertainties is the establishment of a priori uncertainty bounds. In [11] a terminal sliding control law where the uncertainty bound depends only on the inertia parameters of the robot, which can be easily estimated a priori, was proposed taking advantage of structural properties of robot manipulator. Accordingly to the last approach, this paper presents a tracking terminal sliding control law applied on a SCARA robot, a four DOF manipulator widely used in the industry. This study attempts to extend the nonlinear algorithm proposed in [11] on an industrial robot, with complex machining trajectories defined in the task space. In order to evaluate the performance of this nonlinear strategy, it will be compared in tracking performance and robustness to the computed torque control [2], widely used in robotic control. The paper is organized as follows: in Section 2, a dynamical model of the robot is introduced. Design of the sliding control law is discussed in Section 3. Control strategies for this study are shown in Section 4. Simulation results are given in Section 5. Finally, conclusions are presented in Section 6. Abstract This paper presents a terminal sliding control law for controlling robot manipulators with parameter uncertainty, applied to a 4-DOF robot. By exploring some properties of robot manipulators, the proposed approach simplifies significantly the standard scheme of a terminal sliding control. Major simulations results using numerical values of an industrial SCARA robot prove the effectiveness of the proposed approach. The terminal sliding control and the widely used computed torque control are compared. Tracking performance in the task space and robustness (parametric uncertainty and disturbance rejection) are enlightened. 1. Introduction The linearizing and decoupling control, so called inverse dynamic control [1], [2], is considered to be the best theoretical solution for the control of robots. The success of this control law is based on a good knowledge of the dynamic parameters: more remote they are, more the response will be unsatisfactory. In practice, industrial robots have a priori unknown dynamic characteristics (structure, parameters) or involve several uncertainties such as large disturbances, inaccuracies, unmodeled dynamic, etc. Compensation for model uncertainties for robot tracking control has received a considerable amount of attentions in the literature, and a detailed survey can be found in [3]. In spite of the extensive and successful development of control techniques such as robust control [4], and adaptive control [5], [6], [7], the sliding mode control approach stays probably the main choice when one needs to deal with non-parametric uncertainties and unmodeled dynamics. In the past years, a terminal sliding mode control was proposed in [8], [9], [10]. Similar to the conventional linear sliding mode technique, strong robustness with respect to large uncertain dynamics 2. Dynamic Model for the Robot It is well known that a robot manipulator can be modeled as a set of n rigid bodies connected in a serial chain with torques/forces acting at the joints. By applying the Lagrange equation of motion [9], the robot dynamic equation is derived as: M ( q ) q + C ( q ) q + F ( q ) + G ( q ) + τ d = τ (1) where q is the nx1 vector of joint positions, τ is the nx1 vector of applied joint forces/torques, M(q) is the 209 International Conference on Control, Instrumentation and Mechatronics Engineering (CIM '07), Johor Bahru, Johor, Malaysia, May 28-29, 2007 nxn symmetric positive-definite manipulator inertia matrix, C(q, q ) is the nx1 vector of centripetal and Coriolis torques, F( q ) is the nx1 vector representing torques due to friction acting at the manipulator joints, G(q) is the nx1 vector of gravitational torques and τd is the nx1 vector of unknown signals due to unmodeled dynamics and external disturbances. In the absence of friction or other disturbances, the dynamic model (1) of an n-link manipulator can be written as: M ( q ) q + C ( q,q ) q + G ( q ) = τ sliding phase. The same stands for the convergence time ts on the sliding regime. As it was proposed for [3] y [13], a sliding surface of the form: z1 z s = x + β x 2 being z1 and z2 odd integers satisfying 0 < z1 ≤z2, yields the dynamic error on sliding regime: z2 (2) z2 - z1 z − z 2 1 z2 z1 - z2 = βt 0) x(t) + x( z2 This equation can also be expressed in the following form: q) θ M ( q ) q + C ( q,q ) q + G ( q ) = τ = Y ( q, q, z2 - z1 0 ) z2 z2 x( ts = β(z2 − z1 ) 3. Terminal Sliding Control ηs z1 z2 (8) The work in [12] proposes the so called fast terminal sliding mode (FTSM), which allows the improvement of the reaching time. [6] works with the previous concept but extended to the multi-input multioutput case for n-link rigid robot manipulators described by the equation (3), taking advantage of the structural properties of robot manipulators reported by [8]. p Consider the vector sliding variable s = q + Λq , βt = x(0)e x(t) , which exponentially becomes asymptotically converges to zero when time tends to infinity. Additionally, if the control law is designed to accomplish with the reaching condition ss = -η s [11], the surface is reached at equal speed given by s = η sign(s) which implies the reaching of the sliding manifold in the finite time, η (7) Thus, once the sliding surface is reached, the convergence time can be improved without increasing the value of the η parameter and so reducing the chattering effect. Moreover, the discontinuous sliding control term η sign(s) is replaced by the continuous nonlinear term, which in turn also reduces the chattering effect: There are two different approaches to the characterization of dynamic systems: In linear systems theory, one can assume either some structure in the signals or some structure in the system. Attempts have been made to combine these two approaches e.g. harmonic identification techniques in the Fourier domain. Key facts on terminal sliding control can be easily understood in the single-input single-output case as follows. Consider the usual linear sliding surface [11], s = x + β x , with x the tracking error and β ∈ ℜ > 0 . Then, on the sliding regime ( s = 0 ), the dynamic error s( 0 ) (6) which implies that x(t) becomes zero in a finite time (terminal) given by: (3) where θ is a constant m-dimensional vector of inertia parameters and Y is an nxm matrix called regressor, which is a function of joint position, velocity and acceleration. tr = (5) with q = q − qd , being qd the desired trajectory and q the (4) joint position, p p q q1 …q n It is clear that a larger η will speed up the reaching phase but the cost is an amplified chattering in the T and Λ = dia g [ λ1 … λ n ] > 0 , p= z1 z2 as it was defined before. The problem is to design a control law for (1) assuming only the knowledge of a nominal parameters 210 International Conference on Control, Instrumentation and Mechatronics Engineering (CIM '07), Johor Bahru, Johor, Malaysia, May 28-29, 2007 vector θ0, and a bound on parametric uncertainty defined by ρ ≥ θo - θ . Description of SCARA robot: The simplest kinematics of the manipulator is found in the SCARA design, Figure 1. This design has three vertical revolute joint axes, and one vertical prismatic joint at the end. SCARA robots are mainly used for “pick-and-place” operations. Note that the end-effector gives to the part to be manufactured only one orientation, with is sufficient for the majority of the industrial applications. Imposing the equality s = 0 , the equivalent control which forces the robot dynamic to stay in s = 0 can be obtained as: M ( q ) qr + C ( q, q ) q r + G ( q ) = τ eq with q r = q d - Λ q p Defining = -Y θ the (9) variable The dynamic parameters of the link’s robot are composed of the inertial tensor parameters, the first moment of inertia, the mass and the actuator rotor inertia, that are combined in the vector θ0: s = q - qr , the dynamic of the robot (3) can be written as: M ( q ) s + C ( q, q ) s + Y θ = τ which satisfies τ = τ eq when θ0 = [ XX j XY j XZ j YY j YZ j ZZ j (10) s = s = 0 . The reader is refereed to [6] for the details of the proof that the terminal sliding control law, which is defined as: ( q , q τ = Y q,q, r r with r 0 <r ≤1, ) (θ o ) + w - Ks r An identification procedure gives the parameters values shown in Table 1, [5]. Some of these parameters are grouped or eliminated for simplicity [9], and will be considered as the known parameters during simulations. (11) 1 < p ≤ 1, 2 K = d ia g [ k 1 … k n ] > 0 , and w defined as Table 1: Parameters of SCARA robot p fulfilling Parameters ZZG1 ZZG2 ZZG3 MXG2 designed for compensate the parameter uncertainty represented by θ = θo - θ and given by: w= -ρY T s/ Y T s 0 Y s > 0, if Y s =0 T Values 3.38 0.063 0.1 0242 Parameters MXG3 MY2 MYG3 Ia4 Values 0.2 0.001 0.1 0.045 Note: The units for the inertia tensor parameters are Kg.m2, for the first moment of inertia Kg.m, and for the motor inertia Kg.m2. T if (13) MX j MY j MZ j M j Ia j ] (12) Computed torque control: Assuming that only the motion is specified as desired position qd, the computed torque control (CTC), [4], [9] computes the required input control as follows: achieves uniformly boundedness of the signals and zero tracking error in the finite time. The linear sliding case stands for p = r = 1 . 4. Control Strategies w = K p ( qd − q ) + K v q (14) where Kp and Kv are the controller gains. The tuning of CTC controller for the SCARA robot leads to the gains shown in Table 2. The resulting scheme is shown in Figure 2, in which two feedback loops are represented; an inner loop based on the manipulator dynamic model and a outer loop operating on the tracking error. The function of the inner loop is to obtain a linear and decoupled input/output relationship, whereas the outer loop is required to stabilize the overall system. Figure 1. SCARA robot 211 International Conference on Control, Instrumentation and Mechatronics Engineering (CIM '07), Johor Bahru, Johor, Malaysia, May 28-29, 2007 Table 2: Kp and Kv gains Kp 1 125000 2 140000 3 150000 4 120000 Kv 250 200 1000 700 parameters are chosen as K=diag([100 50 20 100]), Λ=diag([120 30 15 100]), ρ=0.045 and p=r=9/11 y11 = qr1 ; y12 = qr1 + 2 qr 2 ; y13 = qr1 + 2qr 2 + qr 3 ; y14 = qr1 + qr 2 + qr 3 ; y15 = 2C 2 d 2 ( qr1 + qr 2 ) y16 = ( d 3C 3 + d 2 C 3C 2 − d 2 S 3S 2 )( 2qr1 x Kp qd M G I Non-linear compensation and decoupling + qd + Kv + Ki qd w + Aˆ(q) + + ∫ Γ + +2 qr 2 + qr 3 ) + d 3C 3qr 2 ; y17 = 2 d 2 S 2 ( qr1 − qr 2 ) y18 = − ( d 3 S 3 + d 2 S 3C 2 + d 2 C 3S 2 )( 2 qr1 q +2qr 2 + qr 3 ) − d 3 S 3qr 2 Robot y19 = y110 = y111 = 0; y21 = 0; y22 = 2 qr1 + qr 2 ; y23 = 2 qr1 + qr 2 + qr 3 y24 = qr1 + qr 2 + qr 3 ; y25 = 2C 2 d 2 qr1 + q Hˆ(q,q) q Stabilizing linear control y26 = 2 ( d 3C 3 + d 2 C 3C 2 − d 2 S 3S 2 + d 3C 3 ) qr1 + 2 d 3 C 3qr 2 + d 3 C 3qr 3 ; y27 = −2d 2 S 2 qr1 Figure 2. Computed torque control in task space y28 = −2 ( d 3 S 3 + d 2 S 3C 2 + d 2 C 3S 2 + d 3 S 3 ) qr1 Sliding control: Figure 3 shows the scheme of the terminal sliding control to be applied on a SCARA four DOF robot. The parameters of the unloaded manipulator are known and the chosen values of the link parameters are those shown in Table 1. Note that this control strategy acts on a non-linear system while the computed torque control linealize and decouple the model of the robot. In other words, the sliding control law is applied on a more complex system. − 2 d 3 S 3qr 2 − 2 d 3 S 3qr 3 y29 = qr 2 ; y210 = y211 = 0; y31 = y32 = 0; y33 = y34 = qr1 + qr 2 + qr 3 ; y35 = 0; y36 = ( d 3 C 3 + d 2 C 3C 2 − d 2 S 3S 2 + d 3 C 3 ) qr1 + d 3C 3; qr 2 ; y37 = 0; y38 = −2 ( d 3 S 3 + d 2 S 3C 2 + d 2 C 3S 2 ) qr1 − 2 d 3 S 3qr 2 ; y39 = 0; y310 = qr 3 y311 = 0; y41 = y42 = y43 = y44 = 0 θ0 Y s qd M G I y45 = y46 = y47 = y48 = y49 = y410 = 0; y411 = qr 4 W q qd q du/dt xd q r x pΛdiag (q~ p−1 (15) x Y τ q q 5. Simulation Results R o b o t Computed torque control and terminal sliding control are implemented in a simulation environment (Matlab / Simulink®). Tracking performance and robustness are compared, running with 1 msecond sampling period. s Λu p Ku r Figure 3. Sliding control scheme in the task space ( , q The components yij of Y q, q,q r r ) Tracking performance: The following paths, including inside the robot workspace, will be tracked by the robot: a. Circular path with radius r = 20 mm and angular velocity ω = 2 rad/s. That means a small circle achieved in 3 seconds. b. Linear path with change of direction of 55º and linear velocity of v = 0.024 m/s, covered also in 3 seconds. Figure 4 and Figure 5 show respectively the cartesian tracking error for the transient and stationary response, for the computed torque control. Figure 6 shows the tracking error when the linear path changes the direction, for the computed torque control. Figure 7 and in Eq. (11) for the SCARA robot are given by (15). Where d2 and d3 are the length of the robot arms (0.5 m and 0.3 m respectively), and e.g. C2 = cos(q2), S3 = sin(q3). In presence of an unknown load carried present in the end-effector of the robot, parameters of the Table 1 will change and constitute the vector θ. For the comparison of this control law with the computed torque control, the same control parameters, K,Λ,p and r are applied for the simulation tests. These 212 International Conference on Control, Instrumentation and Mechatronics Engineering (CIM '07), Johor Bahru, Johor, Malaysia, May 28-29, 2007 show respectively the cartesian tracking error for the transient and stationary response, for the terminal sliding control, and Figure 9 shows the tracking error when the linear path changes its direction, for the terminal sliding control. Figure 8 -4 1 0.9 0.8 Tracking error (m) 0.7 -4 1 x 10 x 10 0.9 0.6 0.5 0.4 0.3 0.8 0.2 Tracking error (m) 0.7 0.1 0.6 0 0.5 0 50 100 150 200 250 Time (ms) 0.4 Figure 7. Transient response for terminal sliding control (circular path) 0.3 0.2 -7 0.1 0 7 0 50 100 150 200 250 6 Time (ms) Figure 4. Transient response for CTC (circular path) Tracking error (m) 5 -7 8.5 x 10 4 3 2 8 Tracking error (m) x 10 1 0 7.5 500 1000 1500 Time (ms) 2000 2500 3000 Figure 8. Stationary response for terminal sliding control (circular path) 7 -4 x 10 6.5 500 1000 1500 Time (ms) 2000 2500 3000 5 Figure 5. Stationary response for CTC (circular path) Tracking error (m) 4 -4 Tracking error (m) 6 x 10 3 2 1 4 0 1400 1500 1550 1600 1650 1700 Time (ms) 1750 1800 1850 1900 Figure 9. Cartesian error for terminal sliding control (linear path) 2 0 1400 1450 1450 1500 1550 1600 1650 1700 Time (ms) 1750 1800 1850 Transient for the circular path shows a cartesian error of 1x10-4 m for CTC control and 0.9 x10-4 m for the terminal sliding strategy. Moreover, the time response is faster and without oscillations for the terminal sliding control. Stationary response shows a cartesian error of 8.5 x10-7 m for the CTC versus 6 1900 Figure 6. Cartesian error for CTC (linear path) 213 International Conference on Control, Instrumentation and Mechatronics Engineering (CIM '07), Johor Bahru, Johor, Malaysia, May 28-29, 2007 x10-7 m for the terminal sliding control. In the case of a linear path with change of direction, the maximal cartesian error is 4.5 x10-4 m for CTC versus 4 x10-4 m for the terminal sliding control. It is clear that the terminal sliding control strategy produces a better behavior with respect to the tracking of the complex trajectories defined in the task space. CTC control and 1 x10-4 m for the terminal sliding strategy, without the oscillations that yields the CTC response. Stationary response shows a cartesian error of 1.2 x10-6 m for the CTC versus 8 x10-7 m for the terminal sliding control. Results show that terminal sliding control provides best results with parameter uncertainty, achieving good robustness. Parametric uncertainty: Model mismatch is obtained considering up to 35% errors from the known values given in Table 1. Circular path is programmed again as desired trajectory. Figures 10 and 11 show respectively the cartesian tracking error for the transient and stationary response, for the computed torque control, and Figure 12 and 13 show the same tracking error but for the terminal sliding control. -4 1.2 x 10 Tracking error (m) 1 0.8 0.6 0.4 -4 x 10 1.4 0.2 1.2 0 0 50 100 Tracking error (m) 150 200 250 Time (ms) 1 Figure 12. Transient response for terminal sliding control (circular path) with parameter uncertainty. 0.8 0.6 -7 9 x 10 0.4 8 0.2 0 50 100 150 200 Tracking error (m) 0 7 250 Time (ms) Figure 10. Transient response for CTC (circular path) with parameter uncertainty. 6 5 4 3 2 -6 1.25 x 10 1 0 Tracking error (m) 1.2 1000 1500 Time (ms) 2000 2500 3000 Figure 13. Stationary response for terminal sliding control (circular path) with parameter uncertainty. 1.15 1.1 Disturbance rejection: An external disturbance is introduced to the system, which is defined as a joint disturbance of 0.08 radians introduced at 0.3 seconds, tested in regulation mode around a given steady state position. Figures 14 and 15 show respectively the disturbance rejection for CTC and terminal sliding control. Maximum error peak to peak is 0.4 radians for CTC response versus 0.25 radians for terminal sliding control. Terminal sliding control is more robust than CTC control with respect to external disturbances although the time response to these disturbances is greater. 1.05 1 0.95 500 500 1000 1500 Time (ms) 2000 2500 3000 Figure 11. Stationary response for CTC (circular path) with parameter uncertainty. Transient for the circular path with parameter uncertainty shows a cartesian error of 1.2 x10-4 m for 214 International Conference on Control, Instrumentation and Mechatronics Engineering (CIM '07), Johor Bahru, Johor, Malaysia, May 28-29, 2007 becomes totally insensitive to both internal parameter uncertainties and disturbances. Results show the great capacities that terminal sliding control has to solve problems of control in industrial robotics. Further works will concern test of the global fast terminal sliding mode control, higher order sliding modes and implementation on a real SCARA manipulator. 0.3 0.25 Disturbance rejection (rad) 0.2 0.15 0.1 0.05 0 -0.05 7. References -0.1 -0.15 0 100 200 300 400 500 600 Time (ms) 700 800 900 [1] 1000 Figure. 14. Disturbance rejection for CTC. 0.3 [2] 0.25 Disturbance rejection (rad) 0.2 0.15 [3] 0.1 0.05 [4] 0 -0.05 [5] -0.1 0 100 200 300 400 500 600 Time (ms) 700 800 900 1000 [6] Figure. 15. Disturbance rejection for terminal sliding control [7] 6. Conclusion Advanced motion control in the task space for a SCARA robot has been considered in this study. Terminal sliding control has been analyzed and applied to an industrial robot. Control law is based on properties of robot manipulators with a nonlinear term in the sliding variable vector, as is proposed in [6]. Tracking performance on complex trajectories (circular path with small diameter and linear path with change of direction) are simulated for the robust control and compared with a classical model based controller as the computed torque control. Also robustness is tested, considering up to 35% errors in the nominal parameters of the model and introducing an external disturbance. Terminal sliding control strategy shows better performance in tracking error and robustness on programmed simulations. Since the CTC technique is based on the assumption of perfect cancellation of dynamic terms, but the compensation may be imperfect for model uncertainty. However in the terminal sliding control, when in the sliding, the closed-loop response [8] [9] [10] [11] [12] [13] 215 H. Sage, M. De Mathelin,and E. Ostertag. Robust control of robot manipulators: a survey. International Journal of Control. Volume 72, No 6, pp: 1498-1522, 1999. I. Kalaykov, and E. Iliev. Time-optimal sliding mode control of robot manipulators. In Proc. IEEE Conference on Industrial Electronics, Control and Instrumentation, IECON 2000, Nagoya, Japan, 2000. Z. Man, A. Paplinski, and H. Wu. A robust MIMO terminal sliding mode control scheme for rigid robotic manipulators, IEEE Transactions on Automatic control, Volume 39, No 12, pp: 2462-2469, 1994. L. Sciavicco, and B. Siciliano. Modeling and control of robot manipulators. McGraw-Hill, New York, 1996. G. Caraflore, M. Indri and B. Bona. Robot dynamic calibration: Optimal excitation trajectories and experimental parameter estimation. Journal of Robotic Systems. Volum 18, No 2, pp: 55-68, 2001. Y. Tang. Terminal sliding mode control for rigid robots. Automatica. Volume 34, No1: 51-56, 1998. F. Alonge, F. D´Ippolito and F. Raimondi. Globally convergent adaptive and robust control of robotic manipulators for trajectory tracking. Control Engineering Practice, Volume 12, No. 9, pp: 10911100, 2004. M.W. Spong,. On the robuts control of robot manipulators. IEEE Transactions on Automatic Control. Volume 37, pp: 1782-1786, 1992. W. Khalil, E. Dombre. Modeling identification and control of robots. Hermes Penton Science, 2002. 0. Egeland, and M. Godhavn. A note on Lyapunov stability for adaptive robot control. IEEE Transactions on Automatic Control. Volume 39, No 8, pp: 16711673, 1994. J. Slotine, and W. Le. Applied nonlinear control. Prentice-Hall Inc. New Jersey, 1991. Yu X., and Z. Man. Fast terminal sliding-mode control design for nonlinear dynamical systems. IEEE Transactions on Circuits and Systems I: Fundamental Theory and Applications. Volume 49, pp: 261-264, 2002. S. Venkataraman, and S. Gulati. Control of nonlinear systems using terminal sliding modes. Transactions of the ASME Journal of Dynamic Systems, Measurement and Control. Volume 115, No 3, pp: 554-560, 1993.