Copyright © IFAC Algorithms and Architectures for Real-Time Control. Ostend. Belgium. 1995
IMPLEMENTATION OF SLIDING MODE CONTROL FOR SCARA ROBOT 'M.C. Lee, #J .M. Lee, 'K. Son, "D.S. Ahn, "·S.H. Han and "M.H. Lee Thpt. of Control and Mechanical Eng. and 'Dept. of Electronic Eng., Pusan National Univ., ··Pusan National Fisheries Univ., ·"J(yungnBJII Univ. Jangjeon-Dong, Pusan, 609-735, Korea
Abstract: Implementation of a sliding mode control algorithm for the high speed/high precision SCARA robot has been demonstrated, Since nonl inear dynamics have lU1desirable effects on the high speed operations, the inaccurate modelling of the robot system degrades the performance. Instead of trying to obtain the exact dynamics of a manipulator and servo systems, the nonlinear dynamics, i.e., nonlinear inertia terms, Coriolis force term and centrifugal force term are treated as disturbance and a sliding mode control algorithm is derived to compensate for the modelling imprecision and disturbance. The algorithm is directly derived from the sI iding condi tion, and it represents the control input expl ici tly by relating to the nonlinear terms. To evaluate performance of the proposed algori thm, a control system for SCARA robot has been designed using two TMS320C25 DSP's and a host computer. Some preliminary results are shown. Keywords: sliding mode, decoupled dynamics, ISP
1.INTRODUCfION The PID algori thm has been used for most of industrial robot controllers, even though the algori thm is not well-sui ted for high precision/high speed operations. Usually, dynamics of robotic manipulators include nonlinear friction and disturbance terms which are not compensated for in the PID algori thm. In real ity, an accurate model of a robot is di fficul t to be obtained. Some researches (Fu, et al., 1987) proposed a PID control algorithm with the nonlinear compensations based upon a simpl i fied dynamic model. The algorithm showed good tracking performance for only relatively slow motions.
against the parameter variations and load changes in the control of robot i c manipulators. Lee and Aoshima (1989) proposed an algorithm where the unmodelled dynamic terms were considered as external disturbance to apply their sliding mode control algori thm to robot control (Wang, et al. 1994). As it was discussed by Young (1978), this algorithm has an important drawback, i.e., control chattering. To eliminate chattering Slotine and Sastry (1983) smoothed out the control discontinui ty in a thin bolU1dary layer neighboring the switching surface. This leads to tracking within a guaranteed precision, t, which is the bolU1dary layer width.
To compensate for these unmodelled dynamics in the high speed operation of industrial robots, Slotine (1978) applied the sliding controller which was known to be robust
Here, in this research, a sI iding control law is directly obtained from the sI iding condition. The control law is explicitly described relating to the nonl inear terms
85
which are unknown but the extent of the impression is bounded by a some value. Section 2 shows derivation procedure of a sliding control law. Section 3 shows the control system for SCARA robot designed for this research using two TMS320C25 OOP's. Section 4 gives some preliminary results. Section 5 concludes current results and shows future works to be done.
is control input vol tage and r",i is equivalent driving torque of the load on its axes. The non I inear dynamic terms from (1) -(5) . i.e., nonlinear inertia terms, Coriol is force term and centri fuga 1 force term are replaced by disturbances F i , and coupling terms among joints are also combined into F i • As the resul t. the decoupled dynamic equations of the robotic system are given as follows :
2. CONTROLLER DESIGN
Ji lJ i
+
Bi IJ i
Fi =
ki
(6)
U i
where Ji is a 4x4 diagonal inertia matrix, B i is a 4 x 4 diagonal matrix representing equivalent damping coefficient of motor and reduction gear, and Fi is a 4xl vector.
2. 1 Modelling of SCAR4 robot SCARA robot with 4 degrees of freedom used in this study is shown in Fig. I. Forward kinematics are obtained with respect to the world coordinates. {xo.Yo.zo} . Dynamic equations w. r. t the world frame are obtained using Lagrange-Euler equations as follows:
2.2 Deriv.ation of a sliding control law Sliding mode control algorithm for each joint controller is obtained from the decoupled dynamic equation (6). The error equations are written as follows :
where edJ' represents the desired angle and ei represents the actual angle. A sI iding line cn be defined in the state space J?2 as
Fig.I. SCARA Robot Hll 81 + Hl2 8z + H14 84 + hll2 b1 Bz + h 122 B/ + lll Bl+kl sign ( B1 ) = r l Z
HZ1 81+ H'l2 8z + H24 84 + h2l1 0l + h 212 010Z + Ji'l2I 0I 0Z + IIzOz + kzsign (8 z) = r2
H'J3 (j~ + G3 +1I3d3 + k3 sign(d·3) H41 81
+
=
r3
+ H42 lJ z + H« lJ. + II I Bl + k 1 sign( B1) = r4
o.
(I )
( 8)
A sufficient condition for the system to be stable is
(2)
d
2
dt S i
(3)
(4)
_ (-
•
2s S;) < O.
(9)
I
From the inequality condition (9) . the expression of the sliding condition can be derived as follows :
where H ii lJ i . h ii' Bi B.. G3. V b i and k i sign ( iJ;) are the inertia. the Coriol is and centri fugal force. the gravi ty force. the vicous friction and the Coulomb friction terms respectively. I
The dynamic equations of the servo system for driving each joint are represented as follows: To satisfy the inequali ty condition (IO). each term of the left-hand side needs to be kept negative. That is, assuming
where J,.i is inertia of the driving motor. B",i is viscosi ty damping coefficient. U i
C j -
86
~ij < o. the swi tching input,
U i,
can
be selected inequality:
to
. (Si ) k i Ui SIgIl
h
C~
satify
the
following
. (Si) { ( Ci - hBi ) X
i+
Fi
B i
7: + 7:
2.3 Hierarchical Control and Dead Band
For the multi-input sliding mode control. switching control input (9) should be supplied by the hierarchical control methodology (Utkin. 1978). The hierarchical control used in the study is the hybrid method which can el iminate gravi ty effects of each link and interactions of links. The hybrid method switches the proportional control to the sliding mode control for the 1inks of lower order as soon as the I inks
(ll )
· -} 0 di+ 0 di .
The sI iding control for the ith joint is now determined as
where tp,.; • tp to satisfy respecti vely:
/i.
tp #i
the
sign (s ie i) (k i tp
and tp ri are se 1ec ted following conditions
,.;+ Bi C i - ] ;
Sign(Si)(kitp/i-Fi ) Sign(Si
iJ~(k i tpfJi-Bi)
sign (S i
1J di)(k i tp ri - Ji)
To suppress disturbance. determined as tp
/i
=
sign { Mu+ Mu
tp
cl)
<0
<0
/i
<0 < o.
of higher order come into the quasi sI iding
mode. That is, if state variables of higher order satisfy I Si I ( E i , those of lower order come into the sI iding mode. and then all the state variables to the lowest order come into the sliding mode.
(13) (14) (15)
(16)
The phase plane showing error states of each link is shown in Fig. 3 where line 0-0 is the sI iding 1ine of s =O. Lines c-c and d-d are the additional lines used to determine whether the higher order class converges to the sliding mode in the hierarchical control. The magnitude of chattering, which can be described in terms of distance between the sI iding I ine and the state variable. is denoted by D and expressed as
in (12) can be
F ,. I ei I } < k i
(17)
where Mu and Mu are selected based upon the maximum value of the disturbance. and Ml i is further suggested as
D =
(18) if s,. e,.) O.
I
c,.e i +
ei
~ c/ + l
I
(19)
Selecting Mw) M ISi in (18) can be explained with Fig. 2. As it is illustrated by Fig. 2. the more effort is required for the region 8 than for the others, since the slope of effort is positive while that of sliding surface is negative.
Fig. 3. Phase plane with a dead band around the sliding line A dead-band is introduced and its width is described by D = E between 1ines a-a and b-b to reduce the chattering. Reduction of chattering can be made by adjusting the value of Mu in tp /i of control input wi th a smaller value once the state variable falls into the dead-band. Speci fications of SCARA robot are given in Table 1. which may be used for the computation of the dynamic
Fig.2 Sliding Control in Phase Plane 87
equations. Table 1. Specifications of seARA robot
Mass of link (kg) Length of link (m)
Axis Axis Axis Axis 4 1 3 2 15.07 8.99 1. 50 1.00 0.35 0.30 0.40 0.07
2-bIs
Paoiu.
Viscosity coefficient of link 0.79 0. 33 0.70 0.30 (gf • cm/rpm) Inertia of motor (g. cm • sec2 )
1
15
u~
ErTo..... -e4)
Fig. 5 Circuit diagram of 2-axis lIO board 0.51 0.14 0.09 0.023
Damping coefficient 0.2 of motor (kgf-cm)
Table 2. Types of Errors 0.1
0.08 0.08 Error
Electromotive force 22.5 21.0 21. 0 18.5 Constant (V/krpm) Torque constant (kgf-cm/A)
-
2.19 2.04 2.04
el 0 1 0
1.8
A controller system is designed to control a SCARA robot us i ng two TMS320C25 [sP' s. As it is shown in Fig. 4, a whole system is composed of a host computer(PC 486) and two [sP boards controIl ing SCARA robot through the 2-axis 1/0 board and servo-drives.
e.. 0 0 1
Left Limit Right Limi t Center
To verify the performance of the proposed algori thm, an experiment has been done using the SCARA robot controller designed in this research. The work assigned to the robot is to follow a straight I ine from a start point (400,150) to an end point (400, -130) on the x-y plane. For this experiment, the first two joints of the seARA robot are used and controlled to move the end-effector along the line.
ROBOT
To show the superiori ty of the proposed algorithm, the tracking performance is compared to that of the PD algorithm. Fig. 6 shows the tracking resul ts of the PD algori thm where the control gains (l
2=2 and K.s2=0.375) are adjusted experimentally.
llain Trans-
Former !C IICIV
of
1 1 0
4. PRELIMINARY RESULTS
(sew TYPE)
Fig. 4 Block diagram controller
~
0 0 1
A reso I ver is used as a posi t i on sensor, which ' provides posi tion data as well as veloci ty data.
3. SCARA ROBOT CONTROLLER
rw
~
Detection
seARA
robot
To determine the switching parameters, the values inertia J and damping factor B of the whole system were obtained experimentally using the signal compression method (Lee and Aoshima, 1989). In Eq. (12) , tp Pi and tp ti are feed forward control input terms which prevent the control state from leaving the sliding surface by the effects of di and 0 di during the tracking control. In this experiment, the effects of 8 tfj are assumed to be negl igible. The selected values of tp ai ' tp Pi and tp fj are
Fig. 5 shows a circuit diagram of 2-axis 1/0 board. The position data of joint 1 and 2 are selected and gathered onto the data bus of rsP, and the control inputs are provided to servo-drive through digital-toanalog converter(DACBO) by the rsP.
e
Table 2 shows the types of errors represented as Error(el-e..) in Fig. 5, which are provided to prevent the manipulator from being damaged. 88
150
1 :10
- - - - - reference - - e xperiment
: - - - - - reference : - - e)(periment
100
100
50
:10 ".....
E
..s
E E
0
0
' -0 '
0
>..
>-
-50-
- 100-
-100
-1 380
.390
4qo
410
420
xoCmm )
Fig. 6 Tracking Resul ts of PO algori thm
-150 380
390
400
410
420
xoCmm)
Fig. 7. Tracking Result of Proposed algorithm
shown in Table 3. Table 3. Switching Parameters Axis-l Axis-2 4 4 Cl 355.9 280.6 If! ai. max If! pi. max
35. 2
32.5
If! fi. max
O. 764
0.921
A total of 4,000 sets of angle and velocity data were stored in the memory with a sampling period of Imsec. The values of thresho 1ds eland e 2 were chosen as O. 5 for the quasi sI iding mode. The proportional and derivative gains are set to the same values used for the PO algorithm to govern the control input before the sliding mode occurred. The values of a couple of dead-band Dt and D2 were set as 0.5. Fig. 7 shows the tracking resul ts of the proposed algori thm. Use of the suggested switching control input and led to the reduction of dead-bands chattering. The maximum deviation from the desired trajectory was less than 0. 8mm in spite of neglecting all the nonlinear terms. These results show that the proposed algorithm can provide reliable and robust tracking performance. Effects of parameter variations need to be investigated further.
5. CONCLUSION The tracking performance of a SCARA robot has been demonstrated using the proposed sliding mode algorithm. It is shown that the proposed algori thm provides improved performance even when the WlIIIOdeled dynamics are considered as external disturbance. The chattering is reduced to a negligible level by decreasing the switching parameter gains to smaller values when the state variables fall into the region of dead-bands predetermined along the sI iding 1ine. 89
The performance of this algorithm is compared to that of the PO algorithm where the control gains are well-adjusted through the experiments. One of major advantages of this algorithm is that it is easily applicable to industrial robots where many of nonl inear terms and time-varying terms exist.
6. REFERENCES K. S.Fu, R.C.Gonzlez, and C.S.G.Lee (1987), ROB(JfICS: Control, Sensing, Vision, and Intelligence, McGraw-Hill V.I.Utkin (1978), Sliding Modes and Their Application in Variable Structure $Ystems, Mir Publishers, Moscow. K.K.O.Young(1978), WController Design for Manipulator Using Theory of Variable Structure Systems, W IEEE Trans. on System, Man and Cybernetics, Vot. 8, ~o. 2. pp. 101-109 J. J. E. Stotine (1978), wThe Robust Control of Robot Manipulators , W International Jounal of Robotics Research, Vol.4, ~o.4. pp. 49-64. J.J.Slotine and S.S.Sastry (1983) , control of non-linear wTracking systems using sI iding surfaces, wi th application to robot manipulators, W Int . J.Control, Vol.38, ~o.2, pp. 465492. J. Wang, W.N.Bailey, and S.J.Dodds (1994), wA New Sliding Mode Approach to the Robust Control of Robotic Manipulators with Dynamic Uncertainties , W Proc. of the IEEE International Conference on Robotic and Automation, pp. 2100-2105. M.C.Lee and N.Aoshima (1989), wldentification and Its Evaluation of the System with a Nonlinear Element by Signal Compression Method, W Trans. of SICE, Vol.25, ~o.7, pp. 729-736.