ARTICLE IN PRESS Control Engineering Practice 17 (2009) 957–965
Contents lists available at ScienceDirect
Control Engineering Practice journal homepage: www.elsevier.com/locate/conengprac
Cyclic pseudo-downsampled iterative learning control for high performance tracking$ Bin Zhang a, Danwei Wang a,, Yongqiang Ye a, Keliang Zhou b, Yigang Wang a a b
School of Electrical and Electronics Engineering, Nanyang Technological University, Singapore 639798, Singapore Department of Electrical Engineering, Southeast University, Nanjing, Jiangsu, China
a r t i c l e in fo
abstract
Article history: Received 12 February 2008 Accepted 12 February 2009 Available online 22 April 2009
In this paper, a multirate cyclic pseudo-downsampled iterative learning control (ILC) scheme is proposed. The scheme has the ability to produce a good learning transient for trajectories with high frequency components with/without initial state errors. The proposed scheme downsamples the feedback error and input signals every m samples to arrive at slower rate. Then, the downsampled slow rate signals are applied to an ILC algorithm, whose output is then interpolated and applied to an actuator. The main feature of the proposed scheme is that, for two successive iterations, the signal is downsampled with the same m but the downsampling points are time shifted along the time axis. This shifting process makes the ILC scheme cyclic along the iteration axis with a period of m cycles. Experimental results show significant improvement in tracking accuracy. Additional advantages are that the proposed scheme does not need a filter design and also reduces the computation and memory size substantially. & 2008 Elsevier Ltd. All rights reserved.
Keywords: Iterative learning control Multirate Cyclic Pseudo-downsampling
1. Introduction Currently, tracking accuracy requirements in many areas have come down to the nano- or micro-meter level. Due to modeling uncertainties and disturbances, feedback control design alone is certainly not enough. Iterative learning control (ILC), which was motivated by the growth of robots performing the same task repeatedly in the mid-eighties (Arimoto, Kawamura, & Miyazaki, 1984; Middleton, Goodwin, & Longman, 1989), becomes a simple and efficient solution to either improve tracking accuracy or remove the noise/disturbance. Though different from feedback control, ILC provides a feedforward control to the system. ILC improves the tracking performance by updating the input to the system based on the tracking error in previous iterations and, therefore, is suitable for most industrial systems that are repetitive in nature. However, a limitation of ILC is that the learning transient, or the decay of tracking error along the iteration axis, is often not monotonic. In the original work of Arimoto et al. (1984), the convergence of ILC is proven in the sense of the l-norm. The definition of the l-norm for a function f : ½0; T ! Rn is given by kf kl 9maxt2½0;T elt kf k1 with kf k1 9max1pipn jf i ðtÞj and l as a positive constant (Arimoto et al., 1984). From this definition, it is
$
This paper was not presented at any IFAC meeting.
Corresponding author. Tel.: +65 67905376; fax: +65 67933318.
E-mail addresses:
[email protected] (B. Zhang),
[email protected] (D. Wang),
[email protected] (Y. Ye),
[email protected] (K. Zhou),
[email protected] (Y. Wang). 0967-0661/$ - see front matter & 2008 Elsevier Ltd. All rights reserved. doi:10.1016/j.conengprac.2009.02.016
clear that for a large l, the errors at the end of the operation, where t is often large, are much less weighted than those errors at the beginning of the operation. Then, for long trajectories, the tracking error at the end of the operation might rise to an unacceptable value in the sense of the 1-norm while the l-norm is still a small value. For this reason, a huge overshoot of error might be observed; this phenomenon is referred to as a bad learning transient (Lee & Bien, 1997; Longman, 2000). There have been many efforts to generate a good learning transient(Cai, Freeman, Lewin, & Rogers, 2008; Chang, Longman, & Phan, 1992; Chen & Moore, 2001; Hakvoort, Aarts, van Dijk, & Jonker, 2008; Lee & Bien, 1997; Moore, Chen, & Bahl, 2002, 2005; Sadegh, Hu, & James, 2002; Tomizuka, 1987; Tomizuka, Tsao, & Chew, 1989; Wang, 2000; Wang & Ye, 2005; Zhang, Wang, & Ye, 2005; Zhang, Wang, Ye, Wang, & Zhou, 2008). One simple way is to introduce a low-pass filter to cut off high frequency components that can cause the bad learning transient. However, ILC with such a low-pass filter does not have the ability to suppress those error components beyond the filter’s cutoff frequency, and zero tracking error cannot be achieved. Therefore, this method introduces a trade-off between tracking accuracy and learning behavior. Another natural way is to tune the learning gain on the iteration axis (Wirkander & Longman, 1999) or on the time axis (Lee & Bien, 1997). The limitation of these learning gain tuning methods is that they require much knowledge of the system, and a very small learning gain can also yield a bad learning transient (Chang et al., 1992). Other methods include the bisection method (Chang et al., 1992) and a scheme with a reduced sampling rate in the first step to deal with initial state error (Hillenbrand & Pandit,
ARTICLE IN PRESS 958
B. Zhang et al. / Control Engineering Practice 17 (2009) 957–965
2000). The difficulty in the former is that it is difficult to choose the number of steps to meet a desired error tolerance restriction (Chang et al., 1992), while the latter only focuses on the initial state error. Consider that in the 1-norm sense, an exponential convergence condition for a P-type ILC is derived (Moore, 2001). However, the condition in (Moore, 2001) is often difficult to satisfy. To design a feedback controller to ensure that the condition holds is inconvenient, time-consuming, and induces a high cost. Alternatively, a simple and effective solution is to reduce the sampling rate to force the condition in Moore (2001) to hold. Based on this idea, a pseudo-downsampled ILC (Zhang et al., 2008) is proposed. In this scheme, the downsampled signals are used in learning, which results in loss of information for those inbetween sampling points. A two-mode ILC (Zhang, Wang, Ye, Wang, & Zhou, 2007) is proposed to compensate for this loss. In the two-mode ILC, a conventional ILC with the system sampling rate is used in the low frequency range, while a pseudodownsampled ILC is applied to high frequency components beyond the learnable bandwidth. Although two-mode ILC can compensate for the lost information in the low frequency range, the lost information in the high frequency range cannot be compensated. Therefore, in theory, these two schemes cannot achieve zero tracking error. In this paper, a new multirate cyclic pseudo-downsampled ILC is proposed to track trajectories with high frequency components. In this scheme, the feedback control system has a sampling rate with a period of T (sampling period of the feedback system), which is referred to as the feedback sampling rate hereinafter. ILC has a sampling rate with a period of mT, which is a downsampled slower rate and is referred to as the ILC sampling rate hereinafter. The ratio m between the two sampling periods is referred to as the sampling ratio. Since all the signals are sampled at the feedback sampling rate while ILC merely uses the downsampled signals (realized by software), this downsampling process is termed as pseudo-downsampling. With this downsampling, ILC updating is carried out at every m sampling points and these sampling points are referred to as downsampling points. For the next iteration, the downsampling points shift forward by a time interval of T. Because of this time shift, downsampling is a cyclic process with a period of m cycles on the iteration axis and therefore, the input to every sampling point at the feedback sampling rate is updated once every m cycles. Due to this cyclic input update based on the pseudodownsampled signals, this ILC scheme is referred to as the cyclic pseudo-downsampled ILC. The benefits of this scheme include the tracking of trajectories with high frequency components, the ability to deal with initial state error, elimination of the need for a filter design, improvement of the tracking accuracy, and the reduction of computation and memory size. Experimental results are presented to verify the proposed method. The paper is organized as follows. In Section 2, the idea of downsampled learning is briefly introduced, which is followed by design and implementation of the proposed cyclic pseudo-downsampled ILC in Section 3. A series of experiments are presented in Section 4 and concluding remarks are given in Section 5.
2. Downsampled learning Consider a discrete-time linear single input single output (SISO) system (
xf ;j ðk þ 1Þ ¼ Af xf ;j ðkÞ þ Bf uf ;j ðkÞ þ wf ;j ðkÞ yf ;j ðkÞ ¼ C f xf ;j ðkÞ þ vf ;j ðkÞ
(1)
with a one-step-ahead learning update law uf ;jþ1 ðkÞ ¼ uf ;j ðkÞ þ Gef ;j ðk þ 1Þ
(2)
where k 2 ½0; p 1, p is the number of total sampling points of a given trajectory to be followed, the state xf ;j is a n dimensional vector, the input uf ;j and the output yf ;j are both scalars, the subscript j is the iteration index, f denotes the feedback system sampling rate, and wf ;j and vf ;j are the repeated state disturbances and output disturbances, respectively. The error is ef ;j ðkÞ ¼ yd ðkÞ yf ;j ðkÞ with yd as the desired trajectory. G is the learning gain. We define an operator df ;j zðkÞ ¼ zf ;j ðkÞ zf ;j1 ðkÞ (Longman, 2000) to obtain the difference value of any variable in two successive iterations. Applying this to the output and assuming the same initial state, i.e., xf ;j ð0Þ is the same for all j, gives ef ;jþ1 ¼ Qef ;j
(3)
where ef ;j ¼ ½ef ;j ð1Þ; ef ;j ð2Þ; . . . ; ef ;j ðpÞT and 2 1 GC f Bf 0 ... 0 6 GC A Bv 1 G C B . . . 0 f f f f 6 6 Q ¼6 .. .. .. .. 6 . . . . 4 GC f Ap1 Bf GC f Ap2 Bf . . . 1 G C f Bf f f
3 7 7 7 7 7 5
If all eigenvalues of Q are less than one, then lim kef ;j k ! 0
j!1
Unfortunately, this condition cannot guarantee a good transient. To obtain a monotonic decay of error along the iteration axis, by taking the 1-norm on both sides of (3), we arrive at kef ;jþ1 k1 pkQ k1 kef ;j k1
(4)
where the 1-norm of a matrix X with entities xi;j is given by P kXk1 ¼ maxi j jxi;j j. Hence, the monotonic error decay in the sense of the 1-norm requires kQ k1 p1
(5)
The condition of (5) can be analyzed in two cases: Case 1: If ð1 GC f Bf Þ40 and j1 GC f Bf jo1, (5) holds. The condition for monotonic decay of error in the sense of the 1-norm can be derived as (Moore, 2001): jC f Bf jX
p1 X
jC f Aif Bf j
(6)
i¼1
Case 2: If ð1 GC f Bf Þo0 and j1 GC f Bf jo1, (5) still holds. In this case, the condition for monotonic decay of error in the sense of 1-norm becomes (Moore, 2001) jC f Bf jo
2
G
p1 X
jC f Aif Bf j
(7)
i¼1
The original conditions in Moore (2001) are given in the 1-norm. Since Q is a Toeplitz matrix, these conditions hold for the 1-norm. However, condition (6) is related only to the system dynamics. For a discrete-time system with a given sampling rate, its Markov parameters are constants and condition (6) often cannot be satisfied. Although condition (7) has an additional freedom G, this condition is also difficult to satisfy if a large G is chosen to improve the convergence speed. In addition, a large G is prone to violating premises ð1 GC f Bf Þo0 and j1 GC f Bf jo1. Fortunately, a hidden freedom—sampling rate—can be used to make these two conditions easier to satisfy. For a continuous-time system Ac , its zero order hold equivalent with a sampling period of T is (Hillenbrand & Pandit, 2000) A ¼ eAc T
ARTICLE IN PRESS B. Zhang et al. / Control Engineering Practice 17 (2009) 957–965
3. Cyclic pseudo-downsampled ILC The scheme of the cyclic pseudo-downsampled ILC is illustrated in Fig. 2, where p is the total number of sampling points of us(0)
us(2)
us(1)
uf (0)
uf (1)
uf (2) uf (3)
uf (4) uf (5)
uf (6)
uf (7)
k=0
k=1
k=2
k=4
k=6
k=7
k=0 us(0)
k=3
k=1 us(1)
k=5
uf (8) uf (9) k=8 k=9
k=3 us(2)
Fig. 1. Illustration of downsampling.
k=4 us(3)
time index
sampling point axis p×T
T TTTTT j iteration axis
If Ac is stable, all eigenvalues of Ac are located in the left half plane. Then, all eigenvalues of eAc T are inside the unite circle (Hillenbrand & Pandit, 2000). If the sampling rate is reduced and the sampling period T ! 1, then limT!1 A ! 0. This makes condition (6) easier to satisfy. As for condition (7), with a reduced sampling rate, a large learning gain G can be used to make the condition easier to satisfy. This also helps to achieve a fast convergence speed. Therefore, suppose the system with a sampling period T (feedback sampling rate) cannot force the monotonic error decay conditions (6) or (7) to hold for their respective case; then the sampling period can be increased to mT (ILC sampling rate) to make (6) or (7) hold. This downsampling process of the error signal can be illustrated in Fig. 1, in which m ¼ 3 is used as an example. The sampling index at the feedback sampling rate is indicated by k while those sampling points marked with solid points are denoted by downsampling points, and the sampling index at the ILC sampling rate is indicated by K. Theoretically, m can be any real number larger than 1 in order to reduce the sampling rate; here, m is selected as an integer to simplify processing of the error signal. The limitation of this ILC scheme with a reduced sampling rate is that it only takes care of the tracking accuracy on those downsampling points and guarantees good learning behavior on those downsampling points. However, it does not control those sampling points in-between every two downsampling points and, therefore, the tracking error on these in-between sampling points, illustrated by open circles in Fig. 1, are large and can degrade the overall tracking performance. To overcome this problem and to produce high tracking accuracy at all sampling points, a new technique needs to be developed. In the next section, a pseudo-downsampled ILC with a time shift along the iteration axis is proposed. In this scheme, the downsampling points at the j-th iteration are shifted along the time axis in the ðj þ 1Þ-th iteration. That is, the downsampling operation is carried out with the same m, but the time instants where downsampling points appear are different. This shift operation enables the learning algorithm, in the ðj þ 1Þ-th iteration, to update the input signal for those sampling points next to the downsampling points in the j-th iteration. With the repetition of this shift operation, all of the inputs of those inbetween sampling points in the j-th iteration can be updated in a certain iteration to reduce the tracking error on these sampling points. Note that this shift operation generates the same downsampling points at the j-th and ðj þ mÞ-th iterations. In this sense, the shift operation is cyclic along the iteration axis and this scheme is termed the cyclic pseudo-downsampled ILC.
959
p −1 p
m×T
j+1
j + (m−1) j+m Fig. 2. Downsampling shift over iteration axis.
the trajectory. Note that the first downsampling point has different sampling ratios in different cycles. The sampling ratio for the first downsampling point rj at the j-th iteration is calculated as 8 j j > > if rem a0; remðÞ gets residual rem > < m m rj ¼ (8) j > > > if rem ¼0 :m m For instance, at the j-th iteration, suppose the first downsampling points has a sampling period of mT (i.e., r j ¼ 0). Then, at the j þ 1 iteration, the first downsampling point has a sampling period of T (i.e., r jþ1 ¼ 1), and so forth. In every two consecutive cycles, all of the downsampling points marked with solid points in Fig. 2 have a time shift of T. The set of downsampling points at each iteration always contains the first sampling point (the first solid point in the j-th and ðj þ mÞ-th iteration and circles in the ðj þ 1Þ-th to ðj þ m 1Þ-th iterations). This way, the ILC output uð0Þ is always updated, and this is desirable in the presence of initial state error. Note that in some cycles, the sampling points from the last downsampling point to p is less than m. In this case, the error signal is extended by repeating eðpÞ. With the above consideration, the number of downsampling points qj at the j-th iteration is first given by 8 p1 > > d ¼ int ; intðÞ gets integer > > m < ( (9) d 1; dm þ rj 4p 1 > > > q ¼ > d; dm þ rj pp 1 : j In the j-th cycle, the ILC downsamples the input at ½uj ð0Þ; uj ðmÞ; . . . ; uj ðdmÞ. Again, d is the integer part of ðp 1Þ=m and p is the number of sampling points on the entire trajectory. The errors used in the ILC law are ½ej1 ðmÞ; ej1 ð2mÞ; . . . ; ej1 ðdmÞ; ej1 ðpÞ. A zero-order holder is used to hold the input signal between these downsampling points. At the ðj þ rj Þ-th cycle with 0or j om, the downsampling points are ½ujþrj ðr j Þ; ujþrj ðm þ r j Þ; ujþrj ð2m þ r j Þ; . . . ; ujþrj ðqj m þ r j Þ. Correspondingly, the errors used in the ILC law are ½ejþrj 1 ðm þ r j Þ; ejþrj 1 ð2m þ r j Þ; . . . ; ejþrj 1 ðpÞ. Finally, the downsampling points in the ðj þ mÞ-th cycle are the same as those in the j-th cycle. In this sense, the downsampling operation is cyclic on the iteration axis with a period of m cycles. Since these downsampling points are also the sampling points where the ILC updates the input signal, the input for all sampling points is updated once every m cycles. At cycle 0, the system has only feedback control input but not the ILC input. From cycle 1 onwards, the tracking errors recorded from the previous cycle can be used to update the ILC in the following way. The learning law is given in (10), where G is the learning gain. The update law has two parts: the first part is the input update of the first downsampling point while the second part is the input update of the remaining downsampling points.
ARTICLE IN PRESS 960
B. Zhang et al. / Control Engineering Practice 17 (2009) 957–965
In this law, (2) and (4) are zero-order holders used to hold input signal uj : 8 For the first input update point > > > > > ð1Þ uj ð0Þ ¼ uj1 ð0Þ þ Gej1 ðr j Þ; > > > > > ð2Þ uj ðiÞ ¼ uj ð0Þ; for r j 41 > > > > > with i ¼ 1; 2; . . . ; r j 1 > > > > < For the remaining input update points (10) ð3Þ uj ðkÞ ¼ uj1 ðkÞ þ Gej1 ðk þ mÞ; > > > > > > with k ¼ r j ; m þ r j ; 2m þ r j ; . . . ; qj m þ r j > > > > > if k þ m4p then ej1 ðk þ mÞ ¼ ej1 ðpÞ > > > > > ð4Þ uj ðk þ iÞ ¼ uj ðkÞ; > > > : for i ¼ 1; 2; . . . ; m 1 with k þ ipp 1 Consider the SISO system in (1) with a sampling period of T. Its downsampled system dynamic matrices with sampling period of Bf þ þ Af Bf þ Bf Þ, gTð1pgpmÞ are given by Ag ¼ Agf , Bg ¼ ðAg1 f m1 Bf þ þ Af Bf þ Bf Þ if g ¼ m, C s ¼ C f and As ¼ Am f , Bs ¼ ðAf where subscript s indicates the ILC sampling rate. When the ILC update law (10) is applied, the monotonic decay of the tracking error can be guaranteed if we suppose that there is no initial state error. The result is given in the following theorem (Zhang, Wang, Ye, Zhou, & Wang, 2007): Theorem 1. Consider system (1) with zero initial state error and learning law (10). Suppose (1) G is chosen such that max1pgpm j1 GC s Bg jo1 with min1pgpm ð1 GC s Bg Þ40, max1pgpm j1 GC s Af Bg jo1 with min1pgpm ð1 GC s Af Bg Þ40, Gpmin1pgpm ð1=jC s Bg jÞ and (2) m is chosen such that min jC s Af Bg jXjC s Bf j
(11)
1pgpm
jC s Bs jX max ðjC s Aq1 Bg jÞ þ s 1pgpm
q2 X
jC s Ais Bs j
jC s Af Bs jX max ðjC s Af Aq1 Bg jÞ þ s 1pgpm
þ
(12)
i¼1
q3 X
(13)
hold, with q being the trajectory length at the ILC sampling rate. It can be concluded that the tracking error decays monotonically over the iterative axis in the sense of the 1-norm. With the presence of initial state error, exponential decay of the tracking error can be obtained and the final tracking error is bounded, as shown in the following corollary (Zhang, Wang, Ye, Zhou et al., 2007): Corollary 1. For feedback control system (1) and iterative learning law (10), suppose G and m are chosen such that all the conditions in Theorem 1 are satisfied. If the initial state error exists and is bounded by s with jxjþ1 ð0Þ xj ð0Þjps, the tracking error decays exponentially and the final tracking error is bounded by lim kej k1 p
j!1
2max1pgpm ðkJg k1 ; kJg;f k1 Þ s 1 max1pgpm ðkRg k1 ; kRg;T k1 Þ
2
Rg;T
1 G C s A f Bg 6 GC s Af As Bg 6 6 .. 6 ¼6 . 6 6 GC A Aq2 B 4 s f s g
GC s Bf
...
0
0
3
1 G C s A f Bs .. . ...
GC s Bf .. . GC s Af As Bg
... .. . 1 G C s A f Bs
0 .. . GC s Bf
7 7 7 7 7 7 7 5
...
...
GC s Af As Bg
1 G C s A f Bs
GC s Af Aq1 Bg s
(15) In the implementation, suppose that a continuous-time system is discretized by a sampling period of T or an original discretetime feedback control system with a sampling period of T is available. A small learning gain G can always be selected to make Goming ð1=jC s Bg jÞ hold. Without downsampling, only (12) is applicable. Then, if (12) holds, the sampling rate does not need to be reduced. If (12) is violated, the sampling period is increased to 2T, 3T, and so on until for a sampling rate with period of mT, conditions (11)–(13) are all satisfied. Then, for this newly chosen pseudo-sampling period mT, update law (10) is used.
4. Experiment 4.1. Experimental setup In this section, some selected experiments are carried out on a four-axis, closed-loop DC servo industrial SCARA robot, SEIKO TT3000 series. The robot control configuration is illustrated in Fig. 3(a). Matlab/Simulink and the dSPACE ACE1102 kit are used to control the robot. The sampling rate of the robot is 100 Hz, i.e., the sampling period T is 0.01 s. Fig. 3(b) shows the robot structure. Each of the four axes provides a different motion and contributes to one degree of freedom of the robot. Joint 3, which moves in a horizontal plane, is employed in this paper. The dynamic equation of this joint can be represented by a differential equation: MðyÞy€ þ Cðy; y_ Þy_ þ GðyÞ þ F v ðy_ Þ þ F c ¼ t
jC s Af Ais Bs j
i¼1 maxðjC s Bf j; jC s Af Aq2 Bs jÞ s
and
(14)
where J g ¼ ½C s Ag ; C s As Ag ; . . . ; C s Aq1 Ag T ; J g;f ¼ ½C s Af Ag ; C s Af As Ag ; s T A , . . . ; C s Af Aq1 g s 3 2 0 0 0 1 GC s Bg 7 6 GC A B 1 GC s Bs . . . 0 7 6 s s g 7 6 Rg ¼ 6 7 .. .. .. .. 7 6 . . . . 5 4 q1 GC s As Bg ... . . . 1 GC s Bs
where MðyÞ is the inertia of the manipulator, Cðy; y_ Þ is the centrifugal and Coriolis terms, GðyÞ is the gravity term, F v ðy_ Þ is the viscous friction term, F c is the coulomb term and t is the input torque. The terms y, y_ and y€ are joint position, velocity and acceleration, respectively. Eliminating all of the nonlinear terms in the dynamics, the linear approximation of the closed-loop systems can be obtained. With other joints locked, the SISO transfer function for joint 3 can be achieved as follows: Gp ðsÞ ¼
948 s2 þ 42s þ 948
(16)
4.2. Parameter selection In the proposed method, the parameters which need to be determined include learning gain G and sampling ratio m. Learning gain G: From the conditions in Theorem 1, the range of the learning gain is determined by 0oGpming ð1=jC s Bg jÞ. For system (16), when the sampling period changes from 0.01 to 0.1 s (sampling ratio m changes from 1 to 10), all of the values of ming ð1=jC s Bg jÞ for these different sampling ratios are [14.53, 5.43, 3.11, 2.16, 1.68, 1.40, 1.23, 1.13, 1.06, 1.01]. Although a high learning gain can generate a fast convergence speed, it may degrade the tracking performance in the steady-state response in the sense that random noise passing through the learning law will be amplified (Longman & Wirkander, 1998). Additionally, learning gain is not a critical factor for tracking accuracy (Longman &
ARTICLE IN PRESS B. Zhang et al. / Control Engineering Practice 17 (2009) 957–965
961
Simulink Robot Control Program download
Sensor Data
Data Collection
Matlab ILC Program ILC Output & Command
Controller Output
DS1102
Fig. 3. Experimental robot. (a) Robot control configuration. (b) Illustration of robot.
Wirkander, 1998). Therefore, a low learning gain is preferred to achieve a lower final tracking error level and mitigate the influence of noise and disturbance. For this reason, learning gain G is conservatively selected as 0.5. Sampling ratio m: In the following experiments, the trajectory has a length of 10 s. With sampling ratio m ¼ 1 (sampling period T ¼ 0:01 s), j1 GC f Bf j ¼ 0:931240. In this case, only condition (12) is applicable. The system Markov parameters are shown in the upper subfigure of Fig. 4. The first Markov parameter is 0.0411, while the sum of the absolute value of all the remaining Markov parameters is 1.0717. It is clear that condition (12) is not satisfied.
If the sampling period is increased and m ¼ 5 (sampling period mT ¼ 0:05 s), maxg j1 GC s Bg j ¼ 0:9312o1 and ming ð1 GC s Bg Þ ¼ 0:482440. In addition, maxg j1 GC s Af Bg j ¼ 0:8845o1 and ming ð1 GC s Af Bg Þ ¼ 0:002640. The system has the Markov parameters as shown in the lower subfigure of Fig. 4. The lefthand side (LHS) of (12), the first Markov parameter, is 0.5959, while the right-hand side (RHS) is 0.4904. At the same time, for (13), the LHS is 0.6443 while the RHS is 0.4294. Moreover, for Gpming ð1=jC s Bg jÞ, the RHS is 1.68, which is much higher than G ¼ 0:5. For (11), the LHS is 0.1155, which is larger than the RHS, which is 0.068. All conditions in Theorem 1 hold. Hence, the value of m is chosen as 5. Note that when the sampling period is 0.05
ARTICLE IN PRESS 962
B. Zhang et al. / Control Engineering Practice 17 (2009) 957–965
0.15 Markov para
0.1
sampling period 0.01 second
0.05 0
Markov para
−0.05
0.6 0.5 0.4 0.3 0.2 0.1 0 −0.1
0
100
200
300
400 500 600 sampling points
700
800
900
1000
160
180
200
sampling period 0.05 second
0
20
40
60
80 100 120 sampling points
140
Fig. 4. Markov parameters of different sampling rate.
4.3.1. Experiment 1: trajectory without initial state error In this experiment, the desired trajectory is given as follows and is shown in Fig. 5(a):
Table 1 Check of conditions.
G ¼ 0:5 T ¼ 0:01 ðm ¼ 1Þ
mT ¼ 0:05 ðm ¼ 5Þ
yd ðtÞ ¼
max j1 GC s Bg jo1
0:9312o1
OK
0:9312o1
OK
min ð1 GC s Bg Þ40
0:931240
OK
0:482440
OK
1pgpm 1pgpm
Gp min ð1=jC s Bg jÞ
0:50p14:53
OK
0:50p1:68
OK
Condition (12)
0:0411p1:0717
NOT
0:5959X0:4904
OK
1pgpm
max j1 GC s Af Bg jo1
–
–
0:8845o1
OK
min ð1 GC s Af Bg Þ40
–
–
0:002640
OK
– –
– –
0:1155X0:0680 0:6443X0:4294
OK OK
1pgpm 1pgpm
Condition (11) Condition (13)
second, the number of Markov parameters on the desired trajectory reduces to 200. These results are tabulated in Table 1. In this table, ‘‘OK’’ indicates that the condition holds while ‘‘NOT’’ indicates that the condition does not hold. From this table, it is clear that all of the conditions in Theorem 1 are satisfied when m ¼ 5.
4.3. Experimental results Some experimental results are presented to verify the proposed method. To show the advantages of the proposed method, it is compared with a conventional one-step-ahead ILC with a low-pass filter (the cutoff frequency of the filter is given as 3 Hz in advance because this is the learnable bandwidth, Zhang et al., 2005, of a one-step-ahead ILC under the given learning gain of 0.5) and a pseudo-downsampled ILC without cycling with the same learning gain of 0.5 (Zhang et al., 2008). The first experiment is designed to show the ability of the proposed method to improve the tracking accuracy. The second one shows that it can deal with an initial position offset properly.
51 X
an j1 cos on tj
n¼1
þ 0:15½1 cosð16ptÞ þ 0:05½1 cosð20ptÞ
(17) on t
where t 2 ½0; 10 s, on are ½0:1p; 2p; 4p; . . . ; 100p and an ¼ 80e . Here, frequency components at 8 and 10 Hz are introduced. Since the learnable bandwidth for the conventional ILC is only 3 Hz, they are high components that the conventional ILC cannot follow while the proposed method can. To see the effect of high frequency components, the middle of the trajectory is zoomed in Fig. 5. The root mean square (RMS) errors of the three methods are shown in Fig. 6. It can be seen that for the conventional ILC, the decay of the RMS error becomes stable at around the 15th iteration. In the later iterations, the RMS error stays unchanged at 0:134 . In contrast, when the pseudo-downsampled method is employed, the RMS error shows some improvement and it finally reaches 0:070 , which is about half of the RMS error of the conventional ILC. When the proposed method is used, the RMS error produces further improvement and reaches 0:007 after about 150 cycles of learning. This is about one-twentieth of the RMS error of the conventional ILC and about one order of magnitude less than the RMS error of the pseudo-downsampled ILC. The improvement in tracking accuracy is very remarkable. The position errors for the three methods at the 300th iteration are shown in Fig. 7. The large position error in the beginning several sampling points are caused by high frequency components that the robot cannot follow in a short time due to inertia and friction. From this figure, it can be seen that for the conventional ILC, much useful information is left unlearned, so that the position error is very high and is bounded in the range of ½0:3 ; 0:3 . For the pseudo-downsampled method, the position error is bounded in the range of ½0:2 ; 0:2 . When the proposed method is employed, the position error is efficiently suppressed and is bounded in the range of ½0:02 ; 0:02 . Compared with the position error of the pseudo-downsampled method, which of the proposed method is one order of magnitude lower.
ARTICLE IN PRESS B. Zhang et al. / Control Engineering Practice 17 (2009) 957–965
963
86
90 80
85.5
60
position (deg)
position (deg)
70
50 40 30 20
85
84.5
84
10 0 0 100 200 300 400 500 600 700 800 9001000 sampling points
83.5 450 460 470 480 490 500 510 520 530 540 550 sampling points
Fig. 5. The desired trajectory. (a) Desired trajectory. (b) Zoomed mid part.
1
0 Conventional ILC (3Hz)
Conventional ILC (3Hz)
Power spectrum (dB)
RMS error (deg)
−10 Pseudo−downsampled ILC 0.1 Cyclic pseudo−downsampled ILC
0.01
Pseudo−downsampled ILC
−30 −40 −50 −60
Cyclic pseudo−downsampled ILC
−70
0.003 0
50
100
150 200 Iteration index
250
300
Fig. 6. RMS errors for trajectory without offset.
Conventional ILC (3Hz)
0.5
0
−0.5 position error (deg)
−20
0
0.2
100 200 300 400 500 600 700 800 900 1000 Pesudo_downsampled ILC
0
5
10
15
20 25 30 Frequency (Hz)
35
40
45
50
Fig. 8. Power spectrum comparison for trajectory without offset.
[5, 12] Hz, while that of the pseudo-downsampled ILC shows a bit smaller energy in the frequency range of [5, 15] Hz. The two methods have difficulty in following the 8 and 10 Hz high frequency components. On the contrary, the cyclic pseudodownsampled ILC has the smallest error components which indicates the best tracking accuracy. The small power spectrum at 8 and 10 Hz illustrates that these high frequency components can be followed. From the experiment, it is clear that the proposed cyclic pseudo-downsampled method has advantages over the conventional ILC and the pseudo-downsampled method.
0
−0.2
0
0.05
100 200 300 400 500 600 700 800 900 1000 Cyclic pseudo−downsampled ILC
0
−0.05
0
100 200 300 400 500 600 700 800 900 1000 sampling points Fig. 7. Position errors for trajectory without offset.
The power spectra of the error signal for the three methods at the 300th iteration are shown in Fig. 8. The error signal of the conventional ILC has very large energy in the frequency range of
4.3.2. Experiment 2: trajectory with random but bounded initial position offset In most applications, the initial position offsets are random values within bounds. In this experiment, the proposed cyclic pseudo-downsampled ILC will be investigated under such kind of initial position offset. The desired trajectory has a similar shape as the trajectory in Fig. 5 but begins from 0:8 . A random but bounded initial position offset is obtained by using the command 0:8 ð1 randÞ before the operation of each cycle, where rand generates a random value between ½0; 1. Therefore, the bound of the initial position is ½0:8 ; 0:8 . Fig. 9 shows the RMS errors. Because of the random initial offset, the RMS curves show many spikes. For the conventional ILC, the RMS error falls into the range of ½0:138 ; 0:149 after 10 cycles. The RMS error of the pseudo-downsampled method shows much improvement and becomes stable in the range of ½0:073 ; 0:088 . The RMS error of the proposed method has the
ARTICLE IN PRESS 964
B. Zhang et al. / Control Engineering Practice 17 (2009) 957–965
0.5
100 Conventional ILC (3Hz)
Cyclic pseudo−downsampled ILC
−0.5
10–1
50
100
150 200 Iteration index
250
300
position error (deg)
RMS error (deg)
0
Conventional ILC (3Hz)
Pseudo−downsampled ILC 0
5
0.5
20
25
30
35
40
45
50
35
40
45
50
40
45
50
Pseudo−downsampled ILC
0 −0.5
0
5
10
15
20
25
30
Cyclic pseudo−downsampled ILC
0.5 0 −0.1
0.5
0
5
0 Conventional ILC (3Hz)
15
1
Fig. 9. RMS errors for trajectory with random offset.
−0.5
10
1
10
15
20 25 30 Sampling points
35
Fig. 11. Zoomed initial phase of position errors for trajectory with random offset.
−1 100 200 300 400 500 600 700 800 900 1000
0 Conventional ILC (3Hz)
Pseudo−downsampled ILC
0.5 0 −0.5 0.8 0.6 0.4 0.2 0
0
100 200 300 400 500 600 700 800 900 1000
Cyclic pseudo−downsampled ILC
−10 Power spectrum(dB)
position error (deg)
0 1
−30 −40 −50 −60
100 200 300 400 500 600 700 800 900 1000 Sampling points
Pseudo−downsampled ILC
−20
0
Cyclic pseudo−downsampled ILC 5 10 15 20 25 30 Frequency (Hz)
35
40
45
50
Fig. 12. Power spectrum comparison for trajectory with random offset.
Fig. 10. Position errors for trajectory with random offset.
5. Conclusion smallest value. After learning becomes stable, it oscillates in the range of ½0:021 ; 0:052 . Fig. 10 illustrates the position errors at the 300th iteration. Not including the large position error at the beginning several sampling points caused by the initial position offset, the position error for the conventional ILC is bounded by ½0:5 ; 0:5 , which is very poor performance. For the pseudodownsampled method, the position error is bounded by ½0:2 ; 0:2 . The position error of the proposed method is the smallest one, which is bounded by ½0:04 ; 0:02 . The position errors at the initial phase of the trajectory are zoomed in Fig. 11. In this figure, the tracking errors of the conventional ILC and the pseudo-downsampled method are much larger. On the contrary, the tracking error of the proposed method has become almost zero after 10 steps. The power spectra comparison at the 300th iteration is shown in Fig. 12. For the proposed cyclic pseudo-downsampled method, the error components are very small in the entire frequency range. The conventional ILC has large error components on ½3; 12 Hz while the pseudo-downsampled ILC has large error components on [5, 15], [25, 35] and ½45; 50 Hz.
Motivated by the objectives of tracking trajectories with high frequency components and dealing with initial state errors, a multirate cyclic pseudo-downsampled ILC is proposed. The proposed scheme downsamples the feedback sampling rate to a slower ILC sampling rate with a ratio m for the feed-forward ILC input. Based on downsampled error signals, the ILC updates and interpolates the input signal. Over iterations, the scheme downsamples the signals with the same ratio m and with a shift. This way, the input update is a cyclic process on the iteration axis, and the input at any sampling point is updated once every m cycles. The main advantage of the proposed method is that it can achieve zero tracking error even with the presence of high frequency components. The proposed method also possesses the ability to deal with the initial state error. Experimental results on an industrial robot show that the proposed method can greatly improve tracking accuracy. Although the proposed method can properly suppress error components on the entire frequency band, there are some limitations. The first is that the learning is carried out every m sampling points in an iteration, which may result in a slow convergence rate, although the experiments do not show this
ARTICLE IN PRESS B. Zhang et al. / Control Engineering Practice 17 (2009) 957–965
tendency. To avoid this, it is desirable to select the sampling ratio m to be as small as possible. Second, the conditions given in Theorem 1 are sufficient conditions and are conservative. It is desirable to find necessary and sufficient conditions to further improve the learning performance. References Arimoto, S., Kawamura, S., & Miyazaki, F. (1984). Bettering operation of robots by learning. Journal of Robotic Systems, 1, 123–140. Cai, Z., Freeman, C., Lewin, P., & Rogers, E. (2008). Iterative learning control for a non-minimum phase plant based on a reference shift algorithm. Control Engineering Practice, 16(6), 633–643. Chang, C.-K., Longman, R. W., & Phan, M. Q. (1992). Techniques for improving transients in learning control systems. Advances in Astronautical Science, 76, 2035–2052. Chen, Y.-Q., & Moore, K. L. (2001). Frequency domain adaptive learning feedforward control. In IEEE symposium on computing intelligence in robotics and automation, Canada (pp. 396–401). Hakvoort, W., Aarts, R., van Dijk, J., & Jonker, J. (2008). Lifted system iterative learning control applied to an industrial robot. Control Engineering Practice, 16(4), 377–391. Hillenbrand, S., & Pandit, M. (2000). An iterative learning controller with reduced sampling rate for plant with variations of initial states. International Journal of Control, 73, 882–889. Lee, H.-S., & Bien, Z. (1997). A note on convergence property of iterative learning controller with respect to sup norm. Automatica, 33(8), 1591–1593. Longman, R. W. (2000). Iterative learning control and repetitive control for engineering practice. International Journal of Control, 73(10), 930–954. Longman, R. W., & Wirkander, S.-L. (1998). Automated tuning concepts for iterative learning and repetitive control laws. In Proceedings of the 37th CDC, USA, FL (pp. 192–198). Middleton, R. H., Goodwin, G. C., & Longman, R. W. (1989). A method for improving the dynamic accuracy of a robot performing a repetitive task. International Journal of Robotic Research, 8(5), 67–74.
965
Moore, K. L. (2001). An observation about monotonic convergence of discrete-time, P-type iterative learning control. In IEEE symposium on intelligent control, Mexico (pp. 45–49). Moore, K. L., Chen, Y., & Bahl, V. (2002). Feedback controller design to ensure monotonic convergence in discrete-time P-type iterative learning control. In Fourth Asian control conference, Singapore. Moore, K. L., Chen, Y., & Bahl, V. (2005). Monotonically convergent iterative learning control for linear discrete-time systems. Automatica, 41(9), 1529–1537. Sadegh, N., Hu, A., & James, C. (2002). Synthesis, stability analysis, and experimental implementation of a multirate repetitive learning controller. Journal of Dynamic Systems, Measurement, and Control, 124, 668–674. Tomizuka, M. (1987). Zero phase error tracking algorithm for digital control. Journal of Dynamic Systems, Measurement, and Control, 109, 65–68. Tomizuka, M., Tsao, T.-C., & Chew, K.-K. (1989). Analysis and synthesis of discretetime repetitive controllers. Journal of Dynamic Systems, Measurement, and Control, 111, 353–358. Wang, D. (2000). On D-type and P-type ILC designs and anticipatory approach. International Journal of Control, 73, 890–901. Wang, D., & Ye, Y. (2005). Multi-channel learning using anticipatory ILCs. International Journal of Control, 77(13), 1189–1199. Wirkander, S.-L., & Longman, R. W. (1999). Limit cycles for improved performance in self-tuning learning control. Advances in the Astronautical Science, 102, 763–781. Zhang, B., Wang, D., & Ye, Y. (2005). Wavelet transform based frequency tuning ILC. IEEE Transactions on System, Man, and Cybernetics, Part B, 35, 107–114. Zhang, B., Wang, D., Ye, Y., Wang, Y., & Zhou, K. (2007). Two-mode ILC with pseudodownsampled learning in high frequency range. International Journal of Control, 80, 349–362. Zhang, B., Wang, D., Ye, Y., Wang, Y., & Zhou, K. (2008). Pseudo-downsampled iterative learning control. International Journal of Robust and Nonlinear Control, 18(10), 1072–1088. Zhang, B., Wang, D., Ye, Y., Zhou, K., & Wang, Y. (2007). Stability and robustness analysis of cyclic pseudo-downsampled ILC. In IEEE multiconference on systems and control, Singapore (pp. 47–52).