You are on page 1of 6
D. Torfs J. De Schutter J. Swevers! Katholieke Universitet Leuven, Department of Mechanical Enginering, B-3001 Lewen, Belgium Extended Bandwidth Zero Phase Error Tracking Control of Nonminimal Phase Systems This paper describes a new feedforward algorithm for accurate tracking control of nonminimal phase systems. Accurate feedforward calculation involves a prefilter design sing the inverse system model. Nonminimal phase systems cause problems with this prefilter design, because unstable zeros become unstable poles in the inverse tmodel. The zero phase error tracking control algorithm (ZPETC) consists of a substitution scheme, which removes the unstable zeros. This scheme introduces @ small gain error, which increases with frequency, but no phase error. This paper investigates additional properties which give more insight inio the ZPETC algorithm, ‘and allow to improve it. The improved algorithm is based on the same substitution Scheme as ZPETC, but adds additional feedforward terms to compensate for the again error. These additional terms increase the frequency range for which the overall transfer function has only limited gain error, without introducing phase errors. The additional feedforward terms repeatedly reduce the tracking error proportional to CEG won where € is the ZPETC tracking error. The new feedforward algorithm ‘or new substitution scheme is therefore called “extended bandwidth zero phase error tracking control algorithm” (EBZPETC). Experimental results on a one-link flex- ible robot compares both methods. 1 Introduction In order to accurately track time varying reference signals, as in the case of continuous path control of machine tools and robots, feedforward control is required in addition to feedback control. An exact feedforward calculation involves the use of ‘aprefilter which corresponds to the inverse system model. This ‘causes problems in the case of nonminimal phase systems, because unstable zeros become unstable poles in the inverse model. Most researchers avoid these instabilities by considering, only steady state conditions for the feedforward calculation tr be restricting to acceleration and/or velocity feedforward U1, 6}. These simplifications result in relatively large tracking errors. Nonminimal phase zeros may be a property of a physical system, as in flexible robots [4-6], but they may also be in- troduced by representing @ continuous time system by a dis- crete-time model [2] Tomizuka [7] presented a substitution scheme, called zero phase ertor tracking control algorithm (ZPETC), which re~ places each unstable zero of a closed-loop system by a stable pole, thus allowing the design of a prefilter corresponding to the inverse closed-loop system. Tomizuka proves that this sub- stitution scheme does not introduce phase errors, but causes "Senfor Reseach Assistant with the N.F.W.0. Belgian Natonal Fund for Scenic Research.) ‘Contributed by the Dynamic Systems and Control Division for publication inthe Joonsat or Drvannc Sysrais, MASUREMENT, aNb Coxraot. Manuscript, Fecsived by the Dynamic yates and Contol Divison April 3, 1991; revised Ianuscrpt received September 28, 1991. Assocate Techical Eitor: A. G. Us. Journal of Dynamic Systems, Measurement, and Control ‘a small gain error. He derives the scheme for closed loop zeros. Torfs et al. [9] show that the scheme also applies to open loop zeros and investigates other properties of the substitution scheme. Haack and Tomizuka [8] discuss an improvement of ZPETC. They describe the design of a filter, called E-filter, which im- proves the tracking performance, but extends the system model. However, this method relies on approximations, and it cor- responds, for the specific case of only one zero, to the more general method with one additional feedforward term pro- posed in this paper. Week and Ye [10] apply the ZPETC algorithm for position control of machine tools. But, they modify the method, such that it becomes applicable for nonsmooth trajectories. This paper gives a closed form expression for the relation between the z-transform of the desired output signal and the z-trans- form of the tracking error resulting from the ZPETC algo- rithm, This expression allows to predict the effect of sampling rate, locations of the unstable zeros in the z-plane and the profile of the desired trajectory on the tracking error. Hence it can be used to compare different trajectories in order to reduce tracking errors. This paper also introduces an improved algorithm, called extended bandwidth zero phase error control (EBZPETC), which computes a feedforward signal in two steps: 1) a feed- forward signal based on the zero phase error tracking control (ZPETC) algorithm [7], 2) additional feedforward signals, which repeatedly reduce the tracking error proportional to €*, SEPTEMBER 1992, Vol. 114/ 347 2, & soo, where e is the ZPETC tracking error. The reduction Of the tracking error is only limited by the number of contin- uuous derivatives of the time varying signal to track. ‘The EBZPETC algorithm applies to all problems which re- quire a feedforward calculation (control of flexible robots, motion control, feedforward disturbance suppressing, ..., Section 2 gives a brief overview of the ZPETC algorithm and its properties. Section 3 explains the EBZPETC algorithm, and gives its time and frequency domain interpretation, Section 4 shows experimental results obtained on a one-link flexible robot. 2 Properties of Zero Phase Error Tracking Control For minimal phase systems, ie., systems without unstable zeros, perfect tracking is theoretically possible. Applying a prefilter based on the inverse closed loop transfer function gives the required feedforward signal. For nonminimal phase systems, i.e. systems with unstable zer0s, a prefiter withthe inverse elosed loop system dynamics is unstable because unstable zeros become unstable poles in the inverse system model. The ZPETC algorithm, as presented in {7} embodies a substitution scheme for unstable zeros re- sulting in a modified, but stable, inverse closed-loop system model. This model can then be used as a prefilter which acts oon the desired output signal and generates the feedforward signal. Suppose the numerator of the closed-loop transfer function B.(z-') has unstable zeros. B%(z~') contains all the unstable zeros and B¢(z_') contains all stable zeros: BAZ!) =Be(z')BE(z"') a Bi(z" ')is responsible for the unstable behavior of the prefilter. ‘Therefore a substitution scheme for Bz(z~') is necessary. It is based on the following property: Biz!) Biz) BEG) Be) Q) CORI) BAD 2. is a transfer function with zero phase, and a gain which is 1 at d-e and remains close to 1 for frequencies far below the Nyquist frequency. B3(z) corresponds to B!(z~') where z~! is replaced by z. Therefore the substitution scheme becomes: 1 Bi) 7 Sie @) Bae) taza 2 This substitution scheme introduces no phase error, no delay, but @ small gain error, which is of minor importance, if the desired ourput signal consists of low frequency components, Forone unstable zero the substitution scheme becomes: replace the unstable pole in the inverse model (z= 2; and lz! >1) by a stable zero (2 1/z;) and a pole z=0: 1 inne za al-a) ‘The ZPETC substitution scheme (3) results ina tracking error between desired and actual output, Replace @ EPPS Ye 5a), yo ce) ace} Fig. 1 Block diagram of the EBZPETC algorithm 348 | Vol. 114, SEPTEMBER 1992 E(2)= Ya(2) ~ ¥(2) 6 which, using (2) can be written as: E(z)=[1- G(2)1¥a(2). © ‘The following lemuna summarizes the properties of the ZPETC algorithm: Lemma The ratio of the z-transform of the tracking error, E(z), and the z-transform of the second forward difference of the desired output signal, (z—1)?¥4(2), is: EQ) ey Gaede! Yaz) et & @ with Gylz) Se I (a= Zn-jo2) (2 !=Zn-p42) if zn pa) ® (Zis the ith unstable zero and m indicates the number of unstable zeros.) The proof ofthis lemma is given in Appendix A Note that the second forward difference in the zdomain, (z=D}, corresponds to ” in the time domain, Then, by re. placing z in Eq. (7) by the forward shift operator g, the time domain relation between tracking error, e(k), and desired output, ¥4(), is obtained as: Ck) = Ga(q)d¥a( 1) 0 For one unstable zero, =1, Eq. (9) becomes ek (10) ape) The right hand side of Eq. (9) can be approximated by its dee value (for ¢=1), giving e(k)= aie ‘The tracking error is proportional to the second forward dif- ference, A*y4(k), of the desired output signal shifted forward ‘one sampling period. This is an important conclusion because Eq. (9) allows to predict the profile of the tracking error and its maximum value. Note that for vanishing sampling period T Taz rete) an Ay(k) nS “ Hence, Eq. (9) shows that the tracking error isapproximately proportional to the second derivative of the desired output signal, filtered by G,(q), and to the square of the sampling period. Equation (11) shows that the d-c value of G,(q) de- pends on the location of the unstable zeros in the z-plane w.r.t. z= It is clear from Eqs. (4) and (8) that an inverse model with, a pole at z=1 results in an infinite gain error. But z= 1 rep- resents an integration. Integration is a stable operation, there- fore z=1 should not be considered as an unstable pole and should not be replaced, even in the case of multiple poles, For unstable zeros near to z= 1, to remaining tracking error, can still be too large for some applications (e.g., accurate seam ‘racking, precision machine tools, ...). Therefore, next section introduces an algorithm which further reduces the tracking error obtained by ZPETC. (t=k7), ith Zero Phase Error Tracking ‘The EBZPETC algorithm calculates the feedforward signal in two steps. The first step generates a feedforward signal using ransactions of the ASME Yeu 4) as) —+——17 —ts Frequency (2) Fig.2 Comparison of amplitude of the over Y¥da\for ZPETC and EBZPETC payload support flexible beam torsional beam i ‘motor Fig. 8 Test setup the ZPETC algorithm. The second step tends to compensate the remaining error by adding additional feedforward signals, which repeatedly reduce the tracking error proportional to €, ct, €, wy where ¢ is the ZPETC tracking error. ‘The EBZPETC algorithm modifies the input signal, y4(k), by adding the ZPETC tracking error as predicted by Ea. (6) ‘The new tracking error then becomes: ‘alz) ~ G()L¥al2) + (1 = G02) ) Yo) =[1-G(2)F Ya(2), (13) or, in the time domain: es) =11- Gq) valk) a4) Cayalk) (is) Hence, the new tracking error is approximately proportional to the fourth difference of the desired output signal instead of the second difference. This procedure can be repeated as shown in Fig. 1 resulting in an input signal yo() +E7%9'€/(K) and a remaining tracking error: ¢y(k) =e" (q)y4(k), where 2"(q) =[1—G(g)l"ya(k), m is the number of additional feedforward terms and e(k) is the ZPETC tracking error (e(K) in Section 2), The EBZPETC algorithm does not in- troduce a phase error, because both G(z) and 1 in Eq. (6) are real functions, Figure 2 shows the frequency domain interpretation of the EBZPETC algorithm. The ZPETC algorithm, which substi- tutes an unstable zero into a stable pole, results in a transfer function G(z) between Y,(z) and Y(z) which is 1 for d-c, but differs from 1 for higher frequencies. The solid line of Fig. 2 gives the overall transfer function ¥(z)/Yq(z) of the ZPETC algorithm; the dashed line represents the transfer func- Journal of Dynamic Systems, Measurement, and Control oe ese ouput rjcony 700) Esco / Fig. 4 Reference trajectory during tracking tests tion for EBZPETC-I, ie., EBZPETC with 1 additional feed- forward term; the dotted line does the same for EBZPETC- 2, ie., with 2 additional feedforward terms, and so on. Figure 2 shows that the frequency for which the overall transfer funetion has an acceptable gain error inereases with the number of feedforward terms, This means an extended bandwidth for the tracking performance, which explains the choice of prefix “EB.” The EBZPETC algorithm can also be formulated as a one step substitution scheme: Bez) i » url 2e ew] 16) where m is the number of additional feedforward terms and G(z) given is by Ea. (2). If'm goes to infinity: a : i ‘il un | Ho-ceo] W-Gen aa 7) for !1—~G(z)|> 1, according to the convergence region of the Taylor series. The’substitution scheme then becomes: press og (a) area Baz) (BEF Gi) Bi") This_proves that, at least in the frequency range where 0fnay the ZPETC method has smaller gain errors than EBZPETC, but ZPETC has already an unacceptable error for unstable zeros close to 1. 1 Replace r= Replace (1g) Remarks 1. Adding m feedforward terms results in a theoretical error Of ém(K), «.., but in practice other effects (disturbances and modelling errors) will cause the error to be larger. Tracking, of desired output signals containing frequencies f>fyax de- teriorates the performance for both ZPETC and EBZPETC. This can be avoided by eliminating these frequencies from the jesired output signal. Or, in the time domain, the desired jutput signal has to be sufficiently smooth, with bounded higher order differences, 2. It can be shown that the E-filter [8] is a particular case of EBZPETC, namely the case for one zero with one additional feedforward term. For multiple zeros, the E-filter tracking performance is worse than EBZPETC. 4 Experimental Results ‘The algorithm is verified on an experimental test setup. The test setup consists of a flexible beam (821 mm length) with a payload, connected to a flexible torsional beam, which itself is connected to a direct drive brushless DC-motor. A rigid ‘beam of 300 mm, and negligible mass w.r.t. the payload, is, SEPTEMBER 1992, Vol. 114 / 349 eee i mounted on the payload (see Fig. 3). The end point of this beam will be controlled. Strain gauges on the flexible beam near to the axis of rotation measure the beam deflections. ‘The control input is a voltage between 10 and 10 volt, which is linearly converted by the power supply of the motor into a current. A built in encoder with a resolution of 1024000 pulses per revolution measures the angular motor position. The end point position is not measured directly, but is cal- culated as a linear combination of beam deflection and motor position. ‘The open-loop system transfer function, H(z), which relates the input signal (in volts) to the end point position (in mm are length) is = 2.7788 1072-245. i _ 188 1077-24 5.6055 10 H(z) is derived from the open loop system transfer function, H(z), which relates the input signal (in volts) to the motor position (in radians), and the static relation between the end- point position, the strain gauges signal and the motor position. H(z) is obtained experimentally using a least squares fre- {quency domain identification. This method is based on a fre- ‘quency response function measured by a stepped sine procedure 6) H(z) has following poles and zeros: Zp) = 0.98333 £0.15694) z= 1.13659 ).78051 0.17932) z= 0.88067 0000 Zps= 0.9833 zy and zg originate from the anti-resonance of Hyy(z) at 3.05 ‘Hz(& =0.0028), which corresponds o a lowly damped clamped- free mode, 2 is an unstable zero, close to z=1, which is inherent to the system ‘pi and Zyp stem from the first resonance frequency which corresponds to a free-free mode at 5.04 Hz (= 0.0268). The second resonance, which is at 38 Hz, and all higher resonance frequencies are neglected in the identification and control. To avoid spillover from these resonance frequencies a But- terworth filter with a cut-off frequency of 10 Hz (sample rate 200 Hz) is incorporated into the system. z,s and zp are the poles of the filter. Finally, zps and Z« correspond to an integration and a stable real pole as in a rigid position control system with viscous friction. For control purposes this transfer function has been trans- formed into a state space model. A state feedback controller hhas then been designed using pole placement: the filter dy- namics (qa and Zp4) are preserved in the closed loop control system whereas the other system poles are chosen as: 9759 £0.2181/ 8446 £0.1310) The choice of the poles has been optimized experimentally in order to obtain a stable controller with maximum closed- loop bandwidth. ‘A tracking test has been performed, with a smooth reference trajectory for the end point based on a 9th order polynomial (Gee Fig. 4). The trajectory starts and ends with zero velocity, acceleration, jerk and derivative of jerk. Together with the total displacement (7.6701 m) and the positioning time (1.6 s) this completely determines the polynomial. The resulting max- imum velocity and acceleration are 13.5 m/s and 39.46 m/s", which come near to the limitations of the motor. Using the optimized feedback controller and without feed Epa bps 360 / Vol. 114, SEPTEMBER 1992 T5.S24dg "+ 12.74352 * 15.7159z-*+ 10.93282 forward a maximum tracking error of 1402 mm was obtained. Feedforward has then been calculated in three different ways: 1) velocity and acceleration feedforward; 2) a feedforward based on ZPETC algorithm; 3) a feedforward based on the EBZPETC algorithm using one additional feedforward term, ‘The experimental results involving these three feedforward signals are displayed in Figs. $ and 6. Figure 5 compares the total control signals (feedforward + feedback). The control sig- nals vary quite smoothly. Note that there is only a small dif- ference between the solid and the dashed line, corresponding tothe last two methods. Figure 6 compares the tracking errors of the end point. The maximum value of the tracking error ‘using velocity and acceleration feedforward (vel/ace ff) is 100 2.7815 10-?~ 4.069852. ag) + 0.633872 ‘mm, i.e., 14 times smaller than without feedforward. The ‘maximum value of the tracking error using ZPETC is 60 mm, i.e., 23 times smaller than without feedforward. The maximum value ofthe tracking error using EBZPETC with one additional feedforward term (EBZPETC— 1) is 8 mm, 17S times smaller than without feedforward. This indicates that for unstable zeros close to ¢=1, there is a large improvement (23175) of the EBZPETC algorithm over the ZPETC algorithm. The dif- ference between both methods decreases when the unstable zero moves away from z=1. 5 Conclusions ‘This paper presents the extended bandwidth zero phase error tacking control algorithm for tracking of non-minimal phase systems, The algorithm consist of two steps: 1) a feedforward Fig. 5 Comparison of input signals to the motor using velocity and adlorward, ZPETC, and EBZPETC~ 1 %y al al eesseR time secon) Fig. 6 Comparison of end point tracking errors using velocity and ac Cceleration feadiorward, ZPETC, and EBZPETC 1 Transactions of the ASME calculation based on the ZPETC algorithm, 2) a compensation of the remaining tracking error by additional feedforward terms, The algorithm can also be formulated as a one step substi- tution scheme. First, a closed-form expression is discussed for the relation between the z-transform of the desired output signal and the ‘transform of the tracking error resulting from the ZPETC algorithm. Time and frequency domain properties of ZPETC are then investigated. These properties give insight into the parameters that influence the tracking error: the profile for the desired time varying output signal, the sampling rate, and the location of the unstable zeros in the z-plane. Second, the EBZPETC algorithm is discussed and verified experimentally. The results show a drastic improvement in terms of tracking errors compared to the ZPETC algorithm, in case of unstable 240s close to z= 1. Acknowledgment This research has been carried out in the framework of Interuniversity Attraction Pole No. 13, initiated by the Belgium State Prime Minister's Office, Science Policy Programme, References, 1 Asda, H., Kanade, T, and Takeyama, 1, “Control of a Direct Drive ("ASME JouRwAL Gr Dyxaaae Sesreus, MEASUREMENT, AND CONTROL, Sept 1983, pp. 136-10. rim, K, J, Hagander,P., and Sternby, J atomaricay Vol. 20, NO, 1, 1984, pp. 31-38, 3 Frantin, G. F, and Powell, J. D., Digi! Control of Dynamic Systems, Aon Wesel, 198. ‘Hollis, M. G., Cannon, R. H., Alexander, H. L., and Morse, D.F, “periments in Advanced Control Concepts fo Space Rabotcs: an Overview of theStanford Aerospace Robotes Laboratory," Memo AAS 87-044, pp, 417- 4 Severs, J, Torf, D. De Schutter, J., and Van Brussel, H., “Accurate Trach Contol of a Flexible Oneink Robot,” 15th International Seminar tm Modal Analysis, K-U: Leuven, Leuven, Belgiom, 6 Swovers, J, Adams, M., De Schutter, Van Brussel, H., and Thieemans, 4H, "Limiations of Linear identification and Contra! Techniques for Flee Robots with Nonlinear Joint Friction,” Proc. st In. Symp. on Experimental Robots, Monieal 1989. 7 Tomiaiha, M., "Zero Phase Error Tracking Algorithm for Digital Con tno” ASME Tounsat oF Dyxaaue Svsreus, MEASUREMENT, AND CONTROL, Mar. 1987, Vol 109, pp. 68-65. Hasck, and Tomizuka, M., “The Effect of Adding Zeros to Feed forward Contos," ASME Jounwat oF DyxAinc Sesthas, MEASUREMENT, ‘Nb ConraoL, Mar. 1991, Vol. 113, pp. 610 9 Tor D., Swevers, 1, and De Schutter, J, “Quasi-Perfet Tracking cont of Now Minimal Phase Systems," IEEE Conference on Decision snd Cont, Brighton, Dec. 11-13, 1991, pp. 241-244. TO Weck, My and Ye, G, "Sharp Corner Tracking Using the IFK Control Sieteny," Anas of he CIRP, Vol. 39/1/1990, pp. 487-481 “Zeros of Sampled Sys APPENDIX A Proof of Lemma ‘The proof of the lemma is based on induction and uses Eas. (2) and (6): BING) BE) Fe)=[ 1-22 re ic) [ BOP with for the number of unstable zeros. For one unstable zero | Ye(2) @0) BE (2) Bez Journal of Dynamic Systems, Measurement, and Control Equation (20) becomes: E(@)= [- an 2) or E(2) 23) For (n+1) zeros If the lemma is valid for 1 unstable zeros, the error is given by: (-1P £2) = Gul) Valo) em and G, (z) is given by Eq. (8). From (20) and (24), one obtains: [eee » BED BA) Giz) 25). For (+1) unstable zeros, Eq. (20) equals: z ca es oe) Be BE) E(@)= fp Yaz) 6) ray [BE BE se Be") BEN) 1 Znu1 Using Eq. (25) in Eq. (27) gives: e@-[1 Jove The first two terms of the right-hand side of this equation are similar to the terms of the right hand side of Eq. (21). This leads to: a aee te [eee Zest Sne which means that: 22+ G,(z) Grate = ge 28) aa Saat cor, using the definition of G,(z) Ea. (8) Sh taken Py (zee pos pyo3) ae) Binal 2-2-7037)” 9) which proves the lemma, Equation (28) is a recursive expression, which can be used to caleulate G, (2). SEPTEMBER 1992, Vol. 114 / 351 Erratum “Extended Bandwidth Zero Phase Error Tracking Control of Nonminimum Phase Systems," by D. Torfs, J. De Schutter, and J. Swevers, published in the ASME JOURNAL OF DYNAMIC SYSTEMS, MEASUREMENT, AND. Contaot, Vol. 114, pp. 347-351. There was an error in the following figures. The correct figures are printed below: 5——— 4 ip svel/ace ff 3 AZ =: ZPETC 7 \ - : EBZPETC-1 a e 0, zy velface ft 2 ¥ “i 5 { == ZPEIC . | t St j |. :BBZPETC-1 a 10092 0a 02 time (seconds) time (seconds) Fig. 6 Comparison of end point tracking errors using valoclty and ac: Comparison of input signals to the motor using velocity and ration feedlorward, ZPETC, and EBZPETC-1 Acceleration feedlorward, ZPETC, and EBZPETC-1

You might also like