Automatica, Vol. 34, No. 8, pp. 1025—1029, 1998 ( 1998 Elsevier Science Ltd. All rights reserved Printed in Great Britain 0005-1098/98 $19.00#0.00
PII: S0005–1098(98)00046–6
Technical Communique
Application of Cyclic Control to a Two-link Flexible Arm* PASQUALE LUCIBELLO- and STEFANO PANZIERI‡ Key Words—Cyclic control; learning systems; flexible arms; nonlinear control.
2. Cyclic control of linear systems Consider a linear control system
Abstract—A servosystem recently proposed in the literature is applied to the nonlinear control of a two link flexible arm. This control algorithm allows the execution of cycles defined by points to be attained at given time instants. Differently from repetitive control and learning control, where exact trajectory tracking is considered, the control problem herein formulated cares only for points. The control scheme developed is finite dimensional and does not need system re-initialization at each trial, since the new trial starts from the point reached at the end of the previous one. Experimental results show that the proposed algorithm allows a good control of the flexible arm considered. ( 1998 Elsevier Science Ltd. All rights reserved.
xR (t)"Ax(t)#Bu(t), t3R,x(t)3Rn, u(t)3Rm, x(0)"x°,
(1)
where x(t) is the state and u(t) the piece-wise continuous control. The pair (A, B) is assumed controllable. Definition 1. We say that system position at time t is /3Rm`n, with pointer j, if x(t) j "/ (2) u(t)
C D
1. Introduction In two recent papers (Lucibello and Panzieri, 1994, 1997) the authors have presented a new type of servosystem for the control of systems to be operated on periodic tasks. These are defined by a finite sequence of points in the product space of states and controls. These points, possibly of equilibrium, are to be attained at given time instants, and the sequence, which starts and ends at the same point, has to be continuously repeated. The main differences with other control schemes for periodic operations are the finite dimension of the state space, as opposed to the infinite dimension of repetitive control schemes (Hara et al., 1988), and the continuous operation, as opposed to the discontinuous operation of learning algorithms (Heinzinger et al., 1992) which requires system re-initialization at each trial. The control objective implies that no care is given to the trajectory that is followed between two points of the cycle, but only to the asymptotic attainment of the points defining the cycle at given instants. As it will become clear in the sequel, a kind of control over the system behavior between the points of the cycle can be exerted by a proper selection of the class of functions through which the control input is defined. The purpose of this paper is to prove the effectiveness of this new type of servosystem, named cyclic control, also on nonlinear systems. In particular, the nonlinear system considered is a twolink planar arm whose forearm is very flexible in the plane of motion (Lucibello and Ulivi, 1993). After the introduction of the linear algorithm, its robustness to nonlinear perturbations and unmodeled high-frequency dynamics is theoretically proven, and its effectiveness is shown on a laboratory arm.
with j an invertible linear map. In particular, j and / can be chosen as
C D
j"
A B , u
CD
/"
0 t
(3)
with u a linear map that guarantees the invertibility of j, to define an equilibrium position t3Rm. In fact, in this case, we have xR (t)"Ax(t)#Bu(t)"0, (4a)
C D
u
x(t) "t. u(t)
(4b)
Condition (4a) implies that the system at time t is at rest and condition (4b) implies that a given linear function of the state and the input takes on a prescribed value at time t. Definition 2. A cycle C is a triple (', ", *), with ' an ordered set of r desired positions M/ , / , 2 , / N, " an ordered set of 1 2 r r pointers Mj , j , 2 , j N, and * an ordered set of r time intervals 1 2 r *"Md , d , 2 , d N. The number 1 2 r r ¹" + d (5) i i/1 is referred to as the cycle period. Definition 3. Let t "t°, 1,1 (6) t "t #d , h3N, k3M1, 2 , rN, h,k`1 h,k k`1 where k is the position number and h the number of cycle repetitions belonging to the set of natural numbers N. A k-index greater than r is to be reduced modulo r and its companion index h is to be augmented by one. For example, t "t . h,r`1 h`1,1 We say that a system is cycling operating on the cycle C, with synchronization time t°, if its position at time t with pointer h,k j is / . k k
* Received 28 August 1997; received in final form 25 February 1998. This paper has been partly supported by Murst 40% funds. A preliminary version of this paper has been presented by the same authors at the 13th IFAC World Congress, San Francisco, California, 30 June—5 July 1996. This paper was recommended for publication in revised form by Associate Editor Chaouki T. Abdallah under the direction of Editor Peter Dorato. Corresponding author Stefano Panzieri. Tel. #39-655173376; Fax #39-6-55173211; E-mail
[email protected]. - Dipartimento di Informatica e Sistemistica, Universita` di Roma ‘‘La Sapienza’’, Via Eudossiana, 18, 00184, Roma, Italy ‡ Dipartimento di Informatica e Automazione, Universita` degli Studi ‘‘Roma Tre’’, Via della Vasca Navale 79, 00146 Roma, Italy
Since we deal with time-invariant systems, in the sequel, we set, without loss of generality, t°"d . Timing is schematically 1 illustrated in Fig. 1. Proposition 1. If equation (1) is controllable, there exists a control such that the system operates on a given cycle C. 1025
1026
Technical Communiques in order to compensate the influence of the last position of the hth cycle on the subsequent one. Define
CD CD
wJ h w v " h,2 , h F w h,r
z h,1 z f " h,2 , h F z h,r
C
Proof. The thesis is proven if it is proven that there exists a control which steers the system between two arbitrary positions in an arbitrary finite time interval. To this end see Lucibello et al. (1997). K
Condition 1.
C D
¼ k P" k c (d ) k k
is invertible, with
P
dk
¼" k Setting
0
eAtBc (t) dt k
C D
x(t h,k , z " h,k u(t ) h,k one has, with 24k4r, z
defining
"¸ z #P w , h`1,1 1 h,r 1 h`1,1 z "¸ z #P w , h`1,k k h`1,k~1 k h`1,k
C
¸" k
D
eAdk 0 . 0 0
(8)
(9)
(10a) (10b)
and
C
D
0 0 0 F I
D
j 2 0 1 s " 0 } 0 f "Rf h h h 0 2 j r
(17)
Mf "%v , h`1 h`1
(18)
to get
with both M and % invertible. Owing to the compensation (15) and the definition of the extended state f , and extended control h v , the system (18) is time invariant, and the discrete time runs h only on the set of cycle numbers. In terms of positions s , which h is the control objective, equation (18) is rewritten as s "RM~1%v . h`1 h`1
Set
CD
/ 1 s" F , e "s !s , $ h h $ / r and introduce, in vector form, the r discrete integrators
(19)
(20)
v
(11)
Since each P is invertible, z can be steered along an k h,k arbitrary sequence, in particular along a sequence which defines a cycle: z$ "j~1 / , k3M1, 2 , rN, h3N, (12) h,k k k where the indices run according to the rule introduced to define a cycle. A control scheme composed by a model-based feedforward control plus a stabilizing static feedback from the output error j z !/ , k3M1, 2 , rN, h3N, (13) k h,k k would not lead, however, to a robust control scheme, since the feedforward component is affected by plant perturbations. If plant perturbations are restricted to plant parameters perturbations and other cycle-independent disturbances, the feedforward component is cycle independent, that is the steady-state value of each w is independent of the cycle number. Hence, according h,k to the Internal Model Principle (Wonham, 1979), the addition of r discrete integrators in the control loop makes it robust with respect to these type of disturbances. For example, one could set w "w #u6 , (14) h`1,k h,k h`1,k with u6 new controls, through which stabilize the plant by h,k means of dynamic output feedback. In this way a pure feedback configuration is obtained. In the sequel, a robust control scheme of this type is developed. Set w "!P~1 ¸ z #wJ , h,1 1 1 h~1,r h
C
(16)
I 0 0 0 2 0 !¸ I 0 0 2 0 2 M" 0 !¸ I 0 2 0 3 F F F F } F 0 0 0 0 2 !¸ r
More than one control exists which steers the system from one position to another. We then restrict the search for the steering control to some finite dimensional subspace of the linear space of the piece-wise continuous control of the system. We set u(t)"c (t!t #d ) w , t3[t !d , t ) (7) k h,k k h,k h,k k h,k where c : [0, d )PRm]Rn`m is piecewise continuous (by changk k ing the functions c ( ) ), one changes the trajectories that the state k of the system follows) and such that the following condition holds.
D
P 0 2 0 1 0 P 2 0 2 %" , F F } F 0 0 2 P r
Fig. 1. A cyclic trajectory.
(15)
"v #Ge , (21) h`1 h h which make the control scheme robust with respect to the said disturbances. G is a linear map to be selected in such a way that the implemented pure feedback control loop is geometrically stable. To this end, consider the error dynamics e
"(I#RM~1%G) e , h`1 h and notice that by a suitable choice of G the
(22)
Condition 2. The eigenvalues of (I#RM~1%G) belong to the open unit disk can be satisfied, since the invertibility of S"RM~1%
(23)
guarantees the existence of a geometrically stabilizing G. Condition (2) implies that e P0 as hPR uniformly, in spite of h cycle-independent disturbances which preserve closed-loop stability. Notice that the error fed back in equation (21) is the one which occurred during the previous cycle and that, with the exception of the compensation (15), the current values of z are h,k not fed back. Then this control law allows some time delay for feedback calculations, with the exception of the one needed in equation (15). If there is not enough computing power, this compensation may be discarded if it does not destroy closedloop stability. Notice further that, with this control law, disturbances acting during a cycle will be counteracted only during the next cycle. A more rapid response would require feedback compensation from the last error available. Closed-loop stability of the algorithm given by equations (15) and (21) can be investigated by considering its actual finite dimensional and
Technical Communiques
centripetal terms, and lq (t) the torque applied at the second 2 joint. Supposing that v (t) is differentiable so that h® (t) exists, 1 1 this system turns to be a linear one with nonlinear perturbations. If we assume that hQ (t), h® (t), t3[0, t ] are sufficiently small, 1 & 1 since n ( ) ) vanishes with hQ (t), this system becomes a linear 1 2 perturbed one and the learning algorithm can be designed on the basis of its linear part:
discrete dynamics,
C
C
DC D C
I !S 0 I
( P~1 ¸!PI ~1¸I ) 0 1 1 S s 0 0 h`1 " v G h`1
CD C D
D
0 I
D
s 0 h ! , (24) v Gs h $ where a tilde accent identifies the nominal maps, used for controller design, that is in equation (15) and for the synthesis of G. If the plant is not perturbed, and then nominal maps coincide with ‘‘true’’ ones, the eigenvalues of the dynamics in equation (24) are the ones of (I#SG). Under perturbations of the pair (A, B) these eigenvalues changes. In particular, since the dynamics in equation (24) continuously depend on both A and B, their eigenvalues will remain inside the open unit disk whenever the perturbation of the pair (A, B) is sufficiently small. Similarly, one can asses if the compensation (15) can be discarded without jeopardizing closed-loop stability. Thereafter we can conclude with the following proposition: ]
Proposition 2. Given a cycle C, if conditions (1) and (2) are satisfied, the input function (7) with the control law defined by equations (15) and (21) solves the cyclic control problem, in the sense that system (1) asymptotically and geometrically operates on the cycle C, in spite of sufficiently small perturbations of the pair (A, B) and of cycle and state-independent disturbances. 3. ¹he flexible arm as a linear perturbed system In this section we recall from Lucibello et al. (1997), where all the details can be found, how the flexible arm model can be put in the linear perturbed form by using state feedback. As shown in Fig. 2, let h (t) and h (t) be the first and second 1 2 joint rotations, respectively, and m(t)3Rs the vector of the amplitudes of the modes of deformation. Set f(t)"(h (t), m(t)) , and 2 let the virtual work of the torque applied at the second revolute joint be given by q (t) lT df with t3[0, t ]. 2 f The robotic system can be transformed in a linear perturbed one, using the high gain feedback 1 q "! [hQ #k (h !v )] , 1 11 1 1 b 1
(25)
with k a positive gain, q the torque applied at the first joint, 11 1 and v a new control input. 1 With this position, and letting bP0, the robot model can be written in the singularly perturbed canonical form (Kokotovic et al., 1986) with a fast system exponentially stable, and a slow system that is a b-approximation of the robotic system for all t3[t@, t ] for some t@'0. Hence, with some manipulations, for & sufficiently small b, we can deal with the system hQ (t)"!k h (t)#k v (t), 1 11 1 11 1 (26) Mf® (t)#FfQ (t)#Kf"lq (t)#n (h (t), qR (t))!bT h® (t), 2 2 2 12 1 where M, F and K are the mass, damping and stiffness matrices of the second flexible link, n( ) ) is the vector of Coriolis and
Fig. 2. The flexible robot variables.
1027
hQ (t)"!k h (t)#k v (t), 1 11 1 11 1 Mf® (t)#FfQ (t)#Kf(t)"lq (t). 2
(27a) (27b)
4. Robustness with respect to nonlinear perturbations and unmodeled high-frequency dynamics For flexible arm application there is a strong interest for the rejection of perturbations due to unmodeled nonlinear phenomena, and to unmodeled high-frequency dynamics. Both these two questions have been addressed in a general setting in the literature: the first one in Hahn (1967), while the second in Khalil (1992, Theorem 8.3, pp. 467—470). Owing to the geometric convergence of the algorithm introduced in the previous section, all perturbations which are not persistent and sufficiently small in norm are rejected, including nonlinear perturbations, whereas to small persistent perturbations will correspond sufficiently small persistent errors (Total Stability Theorem; Hahn, 1967). In case of state steering by learning algorithms, in Lucibello (1994) the following class of nonlinearly perturbed linear systems is considered: xR (t)"Ax(t)#Bu(t)#eg(x(t), u(t), t),
(28)
where it is shown that if the pair (A, B) is controllable, and e is a small parameter, then a learning algorithm designed on the basis of the linear part of the plant (the unperturbed one) is still convergent. In other words, for sufficiently small e, the nonlinear perturbation eg( ) ) is nonpersistent for the unperturbed learning algorithm and therefore it is rejected. In particular,robustness with respect to plant parameters uncertainty, when the plant dynamics continuously depends on them, is ensured. We want to emphasize that all the perturbations considered must be sufficiently small in order to preserve algorithm convergence. Now the cyclic control scheme herein presented is based upon a state steering algorithm. As a consequence, if we apply a cyclic controller to a nonlinearly perturbed linear system we can design it on the basis of the linear part following the algorithm described in Section 2: convergence of the same controller applied to the perturbed plant will be expected for sufficiently small e. Moreover, the robustness of state steering algorithm applied to the control of flexible arms has been studied in detail in Lucibello et al. (1997). In that paper, the perturbation induced by neglecting high-frequency dynamics has been shown to be not persistent with respect to the state steering algorithm and thus not affecting its stability. We stress that even if the perturbation induced by neglecting high-frequency dynamics is not persistent, the physical system may not reach true equilibrium points, since the state derivatives of the neglected dynamics does not necessarily vanish. To clarify this point, consider the case of moving the tip of the arm between two equilibrium points in a finite time tN . To impose the equilibrium condition in the final point, we ask the state derivative to be zero at the end of the motion. Suppose that the state of the model contains only joint and tip variables. Even if the end point reaches the desired position, the arm may not be in equilibrium at the final instant since there is no guarantee that the derivative of the full state of the arm (for example the state of a model with two modes of vibration) is zero. This means that for t'tN the arm could start to move again. However, this disturbance may be negligible if the robotic system is exponentially stabilized. A further discussion on this drawback can be found in Lucibello et al. (1997). As a final remark, it should be noted that the number of modes of vibrations to be included in the model has to be established on a case by case basis using the available theoretical tools, and then validated by experimental tests. In the experiments later presented, a very simple model has been used to
1028
Technical Communiques
design the control algorithm. Nevertheless, the results are satisfactory, thus showing, for the specific system considered and for the control problem addressed, the effectiveness of the model used in the design of the control scheme. 5. Experimental results The arm used in the experiments is a direct drive planar chain with two revolute joints and two links, the second of which — the forearm — is very flexible (Lucibello and Ulivi, 1993). The first link (the rigid one) is 300 mm long, while the second one , designed to be very flexible in a plane orthogonal to the two motors axes (the horizontal plane) and stiff in the other directions and torsionally, is 700 mm long. The total mass of the flexible link is about 2 kg. The inertia of the first and second links are, respectively, J "0.447 Kg m2 1 and J "0.303 Kg m2. 2 The second link deformations are measured by an optical sensor with a precision of about 0.1° (Lucibello and Ulivi, 1989). For the implementation of the learning controller only the first mode of deformation m 3R has been retained and equa1 tions (27) have been used with f(t)"(h (t), m (t)). The full model 2 1 parameters values are reported in Lucibello and Ulivi (1993). The joint-clamped frequency of the first deflection mode is f "1.25 Hz; the first of neglected ones is f "7.25 Hz. 1 2 In the sequel all quantities are in, or combination of, SI units (sec, N, m and rad). A proportional and derivative loop has been closed at each joint so that the two control torques are given by 1 q "! [hQ #k (h !v )], 1 11 1 1 b 1
(29a)
q "!k hQ #k (h !v ), (29b) 2 $2 2 12 2 2 with v (t) and v (t) new inputs, and 1 2 k 10 b"0.5, k " 11 " , k "0.8. (30) 1 12 pk 2 12 An integrator for each channel has been added to smooth the control inputs v (t) and v (t) and the algorithm has been applied 1 2 to the control of the extended state only. The algorithm has been tested on a cycle composed by three equilibrium points, and three time intervals of 1 s each.
C D CD
d "1 s, d "1 s, d "1 s. 1 2 3 The vector / can therefore be defined as
(31)
/"[0 0Q 0 0Q m mQ v v ], 1 1 2 2 1 1 1 2 and the three desired points with the three vectors / given by 3 0 n/6 0 0 n/6 !n/6 0 0 / " , / " , / " 1 2 3 0 0 0 0 0 n/6 n/6 !n/6
(32)
Fig. 3. The cycle executed.
as depicted in Fig. 3. The conditions h "v , h "v , and 1 1 2 2 hQ "hQ "0 imply that the control torques vanish at the desired 2 1 position. Zero torque together with zero velocities imply equilibrium being the plane of motion horizontal. The control law (21) has been used with G the inverse of the matrix S defined in equation (23), and by setting ¸ "0 in 1 equation (15) to simplify calculations. This approximation has not destroyed the stability of the algorithm. The mappings P "P "P and ¸ "¸ have been calculated by using the 1 2 3 2 3 simple linear model (27) with only one mode of deformation and with l"[1 0],
C
F"
C
M"
D
D
0.3030 0.0368 , 0.0368 0.0980
0.0500 0.0368 , 0.0368 0.0980
C
D"
(34)
D
0 0 . 0 14.4107
As functions c (t) used in equation (7), the following polynomials k have been chosen:
C
t t2 t3 [c (t) 2 c (t)]" 1 8 0 0 0
0 0 0 0 t t2 t3 t4
D
0 . (35) t5
The joint velocities have been estimated by a high gain differentiation of the encoders signals, which at steady state leads to a negligible error. Finally, a very little time interval (30 samples) has been used at the end of a cycle to compute the new control inputs for the next cycle. In Figs 4 and 5 positions and velocities of the two joints during the 43-th iteration, when the errors become negligible, are reported. Note that the trajectory followed are quite smooth as a consequence of the polynomial class of functions chosen for the control input. In Figs 6 and 7 the deflection of the second link and its derivative are reported for the same cycle. In
/ , / and 1 2 0 0 0 0 0 0 0 0
(33)
Fig. 4. First (1) and second (2) link positions during the 43rd cycle.
Fig. 5. First (1) and second (2) link velocities during the 43rd cycle.
Technical Communiques
Fig. 6. Tip deflection during 43rd cycle.
1029
Fig. 10. Second joint torque: 43rd cycle (solid), nominal (dotted). Fig. 8 the integrator outputs are shown, and in Figs 9 and 10 the torques applied can be seen. These are zero in correspondence of the time instants 1, 2 and 3 s that, together with the zero values of velocities at the same instants, imply the equilibrium of the robot model at the three points of the cycle. Note, finally, that in Figs 9 and 10 are also reported, in dashed lines, the torques calculated for the nominal robot model; the difference between those plots and the experimental ones is a measure of the nonlinear unmodeled disturbances that the algorithm is able to reject.
Fig. 7. Tip velocity during 43rd cycle.
Fig. 8. First (1) and second (2) integrator outputs during the 43rd cycle.
Fig. 9. First joint torque: 43rd cycle (solid), nominal (dotted).
6. Conclusions In this paper we have presented a successful application of the new type of servosystem named cyclic controller to a two-link flexible arm. The designed procedure followed consists of a state feedback quasi-linearization of the nonlinear flexible arm system, and the application of the linear robust cyclic algorithm. Experimental results have shown robustness of the controller with respect to both nonlinear disturbances and high-frequency unmodeled dumped modes of vibration. References Hahn, W. (1967). Stability of Motion. Springer, Berlin. Hara, S., Y. Yamamoto, T. Omata and M. Nakano (1988). Repetitve control systems: a new type servo system for periodic exogenous signals. IEEE ¹rans. Autom. Control, 33(7), 659—668. Heinzinger, G., D. Fenwick, B. Paden and F. Miyazaki (1992). Stability of learning control with disturbances and uncertain initial conditions. IEEE ¹rans. Autom. Control, 37(1), 110—114. Khalil, K. H. (1992). Nonlinear Systems. MacMillan, New York. Kokotovic, P., H. K. Khalil and J. O’Reilly (1986). Singular Perturbation Methods in Control: Analysis and Design. Academic Press, New York. Lucibello, P. (1994). State steering by learning for a class of nonlinear control systems. Automatica, 30(9), 1463—1468. Lucibello, P., S. Panzieri and G. Ulivi (1997). Repositioning control of a two-link flexible arm by learning. Automatica, 33(4), 579—590. Lucibello, P. and G. Ulivi (1989). An optical angular transducer for flexible robot arms. Proc. of 2nd IFAC Symp. on ¸ow Cost Automation, Milano, I, pp. T113—T116. Lucibello, P. and G. Ulivi (1993). Design and realization of a two-link direct drive robot with a very flexible forearm. Int. J. of Robot. Automat, 8(3), 113—128. Lucibello, P. and S. Panzieri (1994). Cyclic control of linear Systems: theory and experimental implementation on a flexible arm, Proc. 33rd IEEE Conf. on Decision and Control, Lake Buena, Vista, FL. Lucibello, P. and S. Panzieri (1997). Cyclic control of robot arms. Kybernetika, 33(1), 87—102. Wonham, W. M. (1979). ¸inear Multivariable Control: A Geometric Approach, Springer, Berlin.