A Single-Parameter Combined Feedforward

4 downloads 0 Views 439KB Size Report
filter >> the order of the plant) there is no general rule for which ..... from the right to the left- half plane as the incremental changes in angle carries them ..... [20] S. Skogestad and I. Postlethwaite, Multivariable Feedback Control: Analysis and ...
SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

1

A Single-Parameter Combined Feedforward/Feedback Adaptive-Delay Algorithm with Applications to Piezo-Based Raster Tracking Jeffrey A. Butterworth, Student Member, IEEE, Lucy Y. Pao, Senior Member, IEEE, and Daniel Y. Abramovitch, Senior Member, IEEE

Abstract—We evaluate the performance of two combined feedforward/feedback control architectures applied to the raster scan of a piezo-based positioning system. Empirical work suggests that a nontraditional variation upon the feedforward plantinjection (FFPI) architecture may allow it to track a raster pattern at a higher performance level in the neighborhood typical of the feedforward closed-loop-injection (FFCLI) architecture. This variation is manifested as additional delay inserted in the feedforward control system rather than a unity-gain filter constructed from plant parameters. An online adaptive technique is used to determine the required amount of additional delay. Experimental results show that the performance level of the adaptive-delay FFPI architecture is comparable with the FFCLI architecture or better. Two key benefits to the algorithm include reduced computational load and an adaptation calculation that does not require knowledge of plant parameters. This method can be applied to piezo-based positioning systems including atomic force microscopes (AFMs), other scanning probe microscopes (SPMs), probe-based data storage systems or other systems in which raster tracking is a critical control objective. Additionally, if the goal is to track other trajectories (including those that are not repetitive), the converged results of the algorithm can be used after a brief raster-motion calibration phase.

I. I NTRODUCTION Many scanning probe microscopes (SPMs), including atomic force microscopes (AFMs), are actuated with piezobased positioning systems [1]. Further, several research groups have investigated improving upon the performance of feedback-only control by combining it with a feedforward filter. In particular, two distinct combined feedforward/feedback architectures have been developed and have appeared in the scanning probe microscope (SPM) literature: the feedforward plant-injection (FFPI) and feedforward closed-loop-injection (FFCLI) architectures. When using the closed-loop-injection architecture, FP in Fig. 1 is set to zero and FCL is designed to be the feedforward filter. In contrast, when using the plantinjection architecture, FCL is typically a unity-gain function J. A. Butterworth and L. Y. Pao are with the Dept. of Electrical, Computer, and Energy Engineering at the University of Colorado at Boulder, Boulder, CO 80309 USA e-mail: [email protected], [email protected]. D. Y. Abramovitch is a senior research engineer in the Nanotechnology Group at Agilent Laboratories, 5301 Stevens Creek Blvd., M/S: 4U-SB, Santa Clara, CA 95051 USA e-mail: [email protected]. Manuscript received MONTH DAY, 2010; revised MONTH DAY, YEAR.

FP xd

FCL

xff

ex

C

uxff uxfb

ux

P

x

Fig. 1. A generic single-input single-output (SISO) combined feedforward/feedback block diagram that can be applied to the raster direction of a piezo-based positioning system. It consists of a feedback compensator C, a plant-injection feedforward controller FP , and a closed-loop-injection feedforward controller FCL . When using the closed-loop-injection architecture, FP is set to zero. In contrast, when using the plant-injection architecture, FCL is typically a unity-gain function with appropriate phase properties.

with appropriate phase properties, and FP is designed for feedforward control (often using a model-inverse based method). In this paper, we expand upon the results and discussion in [2] and demonstrate how augmenting the plant-injection architecture with an adaptive-delay algorithm can yield a performance equivalent to (or better than) standard FFPI and FFCLI architectures. When using the adaptive-delay variation upon the FFPI architecture, FP is designed as a model-inverse filter and FCL becomes an adaptive-delay filter (as shown in Fig. 8). The significance of this result is: (a) it typically provides less computational load than the FFCLI and pure FFPI architectures and (b) the computation of the adaptive algorithm is not dependent on (potentially varying and/or difficult to identify) plant parameters. These benefits will be of substantial value as our future work will investigate the use of adaptive methods (similar to those discussed in [3] and [4]) with either architecture to update the appropriate model-inverse filter FCL or FP . An introduction to combined feedforward/feedback control is provided in the following section. There, the reader will also find a discussion of one common model-inverse feedforward control design method. Details on the closed-loop-injection and plant-injection architectures are presented in Sections III and IV, respectively. Next, we provide a comparative discussion of these two architectures in Section V. In Section VI, we present experimental results comparing these two architectures as applied to the x-axis of a piezoscanner of an AFM. We then present motivation for the adaptive-delay approach to FFPI and introduce the algorithm in Section VII. Experimental

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

results showing the increased performance of FFPI when augmented with the adaptive-delay algorithm are provided in Subsection VII-C. In Section VIII we discuss nonminimumphase zero location and its affect on the adaptive-delay algorithm. We then draw conclusions and discuss future work for further improving the control of piezoscanners in Section IX. Additionally, the discussion and methods described in the following sections can be applied to piezo-based positioning systems including AFMs, other SPMs, probe-based data storage systems ([5], [6]) or other systems in which raster tracking is a critical control objective. Further, if the tracking of a nonrepetitive trajectory is desired, the converged results of the algorithm can be used after a brief raster-motion calibration phase.

2

and actuation and flexible modes. Further, sampling of a continuous-time system can lead to additional nonminimumphase zeros [15]. As a result, we cannot exactly invert our systems without forming an unstable feedforward filter. Not only that, it is also unlikely we have exactly proper systems. In order to use model-inverse control for nonminimumphase systems, many control systems researchers, working in a myriad of application areas, have developed and used stable approximate inversions in order to implement model-inverse based control on nonminimum-phase systems; this work has been applied to both the FFPI and FFCLI architectures ( [2], [4], [8], [12]–[14], [16], [17]). In this paper, we use one of these methods, the zero-magnitude-error tracking controller (ZMETC).

II. C OMBINED F EEDFORWARD /F EEDBACK C ONTROL Recent work in SPMs has shown improvements in SPM performance when feedback controllers are combined with feedforward controllers [7]–[14]. Under this arrangement, designers attempt to design FP or/and FCL in Fig. 1 such that a performance objective is met. If we look at the overall transfer function of the dual-feedforward arrangement shown in Fig. 1, we have P (z)FP (z) + P (z)C(z)FCL (z) X(z) = . Xd (z) 1 + P (z)C(z)

(1)

It should be clear that if the feedforward filters FP (z) = 0 and FCL = 1, then (1) reduces to the common expression for the dynamics of a feedback-only closed-loop system, P (z)C(z) HCL (z) = . 1 + P (z)C(z)

(2)

The dual-feedforward arrangement shown in Fig. 1 can be used to describe two distinct feedforward architectures that appear often in the control of mechatronic systems, the plant-injection (FFPI) architecture and the closed-loop-injection (FFCLI) architecture. When using the feedforward plant-injection (FFPI) architecture, FP in Fig. 1 is designed to perform as the feedforward filter while FCL is set depending on the type of controller used for FP . Typically, FCL is a unity-gain function with appropriate phase properties. When using the feedforward closed-loop-injection (FFCLI) architecture, FP in Fig. 1 is set to zero and the feedforward filter FCL acts on the reference signal ahead of the closed-loop system. Often model-inverse methods are an effective way to design these feedforward filters. For example, when designing FCL for the FFCLI architecture, we can set FCL equal to the inverse ˆ −1 . (Here, of the model of the closed-loop system, FCL = H CL we use the symbol ∧ to indicate a model of a system.) Asˆ CL is exactly proper, minimum phase, and perfectly suming H modeled, then we can expect perfect tracking of the reference signal xd as the overall transfer function reduces to unity. Unfortunately, the above assumptions yield a large oversimplification of the control problem. In many mechatronic systems, including piezo-based positioning systems, the plant and hence model of piezo scanners typically have nonminimumphase zeros due to the existence of non-collocated sensing

A. Zero-Magnitude-Error Tracking Controller Various stable approximate model-inversion techniques exist for inverting nonminimum-phase systems, but here, we focus on the simple and effective zero-magnitude-error tracking controller (ZMETC) that has appeared in [2], [4], [12], [13], [18]. This is a cousin of Tomizuka’s popular zero-phase-error tracking controller [17]. To design a ZMETC stable approximate inverse of any ˆ nonminimum-phase system G(z), write the model G(z) of the dynamics of G(z) as in (3), partitioning the polynomial Bs (containing the stable (invertible) zeros) from the polynomial Bu (containing the unstable (noninvertible) zeros): B(z) Bs (z)Bu (z) ˆ G(z) = = . A(z) A(z)

(3)

The polynomial A(z) contains all the poles of the model of G(z). Bu has the form Bu (z) = bun z n + bu(n−1) z n−1 + · · · + bu0

(4)

where n is the number of nonminimum-phase zeros. The ZMETC technique then yields a stable approximation of the inverse of the plant ˜ −1 (z) = G

A(z) , Bs (z)Bu∗ (z)

(5)

where the ∼ indicates an approximate inverse (as compared to a ∧ indicating the model of the G(z)), and Bu∗ (z) is Bu∗ (z) = bu0 z n + bu1 z n−1 + · · · + bun .

(6)

Note that the difference between (4) and (6) is the “flipping” of the coefficients. This action is equivalent to reflecting the roots zi of Bu (z) in (4) into the unit circle to 1/zi and then “advancing” by z n so that Bu∗ (z) in (6) is also a polynomial in z. ˆ If the relative degree r of the model G(z) is greater than −1 ˜ zero, the resulting G (z) will be noncausal. Additional delay equal to r will have to be added in order for this ZMETC filter to be implementable in a causal way ˜ −1 (z) = z −r G

z −r A(z) . Bs (z)Bu∗ (z)

(7)

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

III. C LOSED -L OOP -I NJECTION A RCHITECTURE When compared to the feedforward plant-injection architecture, the closed-loop-injection architecture’s superior ability to perform under the presence of uncertainties in a disk drive application [13] provides motivation for application to piezo-based positioning system control and other mechatronic systems. In this architecture, we set FP in Fig. 1 equal to zero and design FCL accordingly to arrive at Fig. 2. We can formulate an overall transfer function of the FFCLI system from the desired input xd to the output x: X(z) = HCL (z)FCL (z). (8) Xd (z) F F CLI

If we make the assumption that a stable inverse of HCL (z) exists, we can see that setting FCL (z) equal to that stable inverse −1 would result in perfect tracking as HCL (z)HCL (z) = 1. However, as mentioned above our piezoscanner and many other mechatronic systems are nonminimum phase (not stable when inverted). As a result, an approximate model-inverse (such as the ZMETC) is required to ensure a stable implementation of FCL .

A. FFCLI with ZMETC Model-Inverse Control The creation of a ZMETC model-inverse controller for HCL (z) of the FFCLI architecture follows the ZMETC proˆ cedure described in Subsection II-A for G(z). Similar to (3), we start constructing FCL (z) by partitioning ˆ CL (z) into polynomiour model for the closed-loop system H als and apply ZMETC. The resulting filter is written as ˜ −1 (z) = FCL = z −r H CL

z −r ACL (z) ∗ BsCL (z)BuCL (z)

(9)

Bs Bu CN B = , and C = . A A CD

Fig. 2.

FCL

xff

ex

C

ux

x

P

The closed-loop-injection configuration of Fig. 1.

Using the definitions in (10), we can further expand (2) to HCL =

BCN (Bs CN )Bu = . ACD + BCN ACD + Bs Bu CN

(10)

Similar to (3), A and B represent polynomials defining the plant poles and zeros, respectively. Further, B has again been broken down into the polynomials Bs and Bu that separate the minimum-phase zeros from the nonminimum-phase zeros, respectively. The subscripts N and D indicate numerator and denominator polynomials pf the compensator C, respectively.

(11)

Again, knowing that C is minimum phase, all the nonminimum-phase zeros are contained in the polynomial Bu and we can clearly define BsCL , BuCL , and ACL for the purposes of ZMETC formulation as BsCL

= Bs CN

BuCL ACL

= Bu = ACD + Bs Bu CN . ∗ BuCL

(12) Bu∗

For minimum phase C, is equal to the same for the generic system G from Subsection II-A. Because C is assumed to be exactly proper, the relative degree r equals the relative degree of Pˆ (z). Using the polynomials defined in (12), we can write an expanded version of (9) as z −r (ACD + Bs Bu CN ) z −r ACL = . ∗ BsCL BuCL (Bs CN )Bu∗ (13) We can formulate the overall ZMETC FFCLI transfer function if we insert (13) and (11) into (8) as in (Bs CN )Bu z −r (ACD + Bs Bu CN ) X(z) = , Xd (z) F F CLI (ACD + Bs Bu CN ) (Bs CN )B ∗ ˜ −1 = FCL = z −r H CL

u

ZM ET C

∗ where the polynomials ACL (z), BsCL (z), and BuCL (z) contain all the poles, minimum-phase zeros, and reflected ˆ CL (z), respectively. nonminimum-phase zeros of the model H It should be clear that when HCL (z) is minimum-phase and the plant P (z) (and feedback controller C(z)) is known with certainty, (8) becomes unity or a delay block. In that case, we expect x to perfectly track xd (perhaps with some delay). We can learn more about this ZMETC version of FFCLI if we assume a nonminimum-phase plant with relative degree r and a minimum phase, and exactly proper C(z). This indicates that any nonminimum-phase zeros are only associated with Pˆ (z) and the relative degree r of the closed-loop system HCL (z) is equal to that of Pˆ (z). We start investigating by dropping the argument z (for convenience), and the ∧ notation that distinguishes the model from the plant (as we will assume Pˆ (z) = P (z)). Next, we also define the plant dynamics P , and the feedback controller C, as ratios of polynomials as in

P =

xd

3

=

z −r Bu . Bu∗

(14)

In (14), the transfer function from xd to x reduces to a transfer function with unity gain at all frequencies and possibly some phase delay. This indicates that under these circumstances, we can expect to perfectly track the desired reference signal with perhaps some delay. It is important to note that if the plant P is minimum phase, Bu = Bu∗ = 1. As a result, the overall transfer function would reduce to z −r (or 1 if r = 0), so as noted previously, we can expect perfect tracking with a delay equal to z −r for minimum phase systems. IV. P LANT-I NJECTION A RCHITECTURE The plant-injection architecture has appeared in recent literature in which SPM performance improvements have been shown when feedback controllers are combined with a feedforward controller [7]–[11]. In general, this architecture ensures stability through the feedback controller C while the feedforward controller FP further increases tracking performance, disturbance rejection, and robustness to model uncertainties. Devasia and others have studied model-inverse methods applied in the plant-injection architecture for AFMs [2], [7], [8], [11], [12], [19], where C in Fig. 1 is some feedback controller and FP is set approximately equal to Pˆ −1 , the

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

inverse of the plant model. The existence of nonminimumphase zeros in the plant often forces a stable approximate inverse to be used in place of the exact inverse. We continue to assume the feedback filter C is exactly proper and minimum phase and the model of the plant matches the plant dynamics exactly (Pˆ (z) = P (z)). Further, for the moment, we assume the plant is minimum phase. In that case, we can formulate a stable FP by directly inverting P , A . Here, A and B again represent polynomials defining FP = B the plant model poles and zeros, respectively. The only other special consideration required is if the relative degree r of the plant is greater than zero; if it is, additional delay (of r time steps) is required to make FP causal as in z

−r

A

−r

−1

=z P . (15) B Further, if r > 0, then the feedforward block FCL should be defined not as unity, but rather as a delay block equal to z −r (see Fig. 3). This ensures the proper coordination of the arrival of the signals uxf f and xf f to the closed-loop system. The exact reason for this design choice will be further explained below. Returning to (1), we can write the overall transfer function for this minimum-phase FFPI arrangement as P FP + z −r P C X(z) = . (16) Xd (z) F F P I 1 + PC FP =

M in.P hase

If we assume our model represents our system exactly (Pˆ −1 = P −1 ), we note the reduction of the overall transfer function (in this minimum-phase case) to a delay equal to r samples, z −r P P −1 + z −r P C X(z) = Xd (z) F F P I 1 + PC M in.P hase ! 1 + P C = z −r 1 + PC = z −r .

(17)

Here, we can expect the “perfectly-delayed” tracking of the desired input xd . Of course, this assumes a perfect inverse of P exists. Further, in equation (17), it is again clear why FCL = z −r is required as if it were not, the overall transfer function would not reduce to the compact form shown in (17) and “perfectly-delayed” tracking would not occur. The reader should note that in the minimum-phase case (when C is also minimum phase and exactly proper), the FFCLI and FFPI architectures reduce to the same overall transfer function, z −r .

A. FFPI with ZMETC Model-Inverse Control The formulation of a ZMETC filter for P follows closely ˆ the procedure described in II-A for G(z). Again, we write the model of the plant dynamics as in Section (18), partitioning the polynomial Bs (containing the stable (invertible) zeros) from the polynomial Bu (containing the unstable (noninvertible)

4

FP xd

z−r

xff

ex

C

uxff uxfb

ux

P

x

Fig. 3. The plant-injection configuration of Fig. 1 for a minimum-phase plant. The relative degree of the minimum-phase plant P is r and a delay of z −r is included in the design of FP to ensure it has a causal implementation. The z −r delay block in the FCL position is then required to ensure the synchronous arrival of the xf f and uxf f signals to the system.

zeros):

Bs Bu B = . (18) Pˆ = A A Applying the procedure of Section II-A to (18) to determine FP for the FFPI architecture, we arrive at FP = z −r P˜ −1 =

z −r A . Bs Bu∗

(19)

In the minimum-phase case, setting FCL = z −r is required in the FFPI architecture to ensure synchronous arrival of the signals. In the nonminimum-phase case, one could argue the same point as to why FCL should be again set to z −r . However, there are problems associated with setting FCL = z −r for a nonminimum-phase system in the FFPI architecture when using ZMETC. Experimental FFPI examples of overshoot problems associated with using ZMETC to design FP , and setting FCL = z −r for a nonminimum-phase system can be seen in [2], [12], [18]. The source of these problems becomes evident after following through with the analysis of (1) and inserting (19) and (18), X(z) Xd (z) F F P I

=

ZM ET C

P FP + P CFCL 1 + PC −r

= =

Bs Bu z A ( BsABu )( B ∗) + ( A )CFCL sB u

1 + ( BsABu )C z −r Bu A ∗ Bu

+ Bs Bu CFCL

A"+ Bs Bu C # z Bu A + Bs Bu∗ CFCL z r . (20) Bu∗ A + Bs Bu C −r

=

−r

The last line of (20) reveals the factor z B ∗Bu which is the u unity-gain overall transfer function of the ZMETC FFCLI system derived in (14). The remaining factor in brackets in the last line of (20) is the key to determining FCL such that we achieve the best performance possible out of the FFPI architecture. We will name that factor ∆(z) as it represents the fundamental difference between the FFPI and FFCLI architectures: A + Bs Bu∗ CFCL z r . (21) ∆(z) = A + Bs Bu C Further, in (22), we note that choosing FCL = z −r (as with the minimum-phase case), exposes the source of the overshoot

Magnitude (dB)

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

TABLE I ZMETC C OMBINED F EEDFORWARD /F EEDBACK S UMMARY *

4 2 0

Arch.

System

FCL

FP

X(z) Xd (z)

MP

z −r ACL BCL

0

z −r

NMP

z −r ACL ∗ BsCL BuCL

0

z −r Bu ∗ Bu

MP

z −r

z −r A B

z −r

NMP

z −r Bu ∗ Bu

z −r A ∗ Bs Bu

z −r Bu ∗ Bu

−2 1

2

10 Phase (degrees)

5

10

3

10

4

10

10 0

FFCLI

−10 −20 −30 1

2

10

3

10 10 Frequency (Hz)

4

10

Fig. 4. The frequency response of the transfer function ∆(z) in (22) when FCL = z −r . This plot was created using our particular model for the plant P and our feedback controller C.

discussed in [2], [12], [18]: A + Bs Bu∗ C ∆(z) F =z−r = . CL A + Bs Bu C

* This summary assumes the feedback controller C is minimum phase and exactly proper.

(22)

This term does not have unity gain at all frequencies. We can calculate a frequency response of ∆(z) when FCL = z −r given our plant model P and our feedback filter C (to be introduced and discussed in Section VI). The result is shown in Fig. 4 and demonstrates the lack of unity gain of ∆(z) at all frequencies when FCL = z −r . Under this arrangement, and based on the information in Fig. 4, we can expect the system will struggle to track any signal other than those at low frequencies (which are trivial as feedforward filters are not needed to track raster patterns at these rates). From Fig. 4, one might argue that signals with high-frequency content could also be tracked, but as of now, high-frequency rasters are not realistic for our piezoscanner due to many problems including low signal-to-noise ratio, signal saturation, unmodeled highfrequency modes inherent to the piezos and more. In order for the FFPI architecture to perform properly given a nonminimum-phase plant, we need to solve for the proper FCL that will make ∆(z) have unity gain. Setting ∆(z) = 1 and solving for FCL yields z −r Bu FCL F F P I = . Bu∗ ZM ET C

(23)

Note that this is the same expression for the overall transfer function in (14) that we found for the the FFCLI case. Further, using it will yield the same overall transfer function for the FFPI case, # " z −r Bu A + Bs Bu∗ CFCL z r X(z) = Xd (z) F F P I Bu∗ A + Bs Bu C ZM ET C # " z −r Bu A + Bs Bu C = Bu∗ A + Bs Bu C =

z −r Bu . Bu∗

FFPI

(24)

Now, we have found an expression for FCL in the FFPI

architecture that theoretically will yield the same performance as the FFCLI architecture when using the same exactly proper and minimum phase feedback controller C and ZMETC for the model-inverse feedforward controller design. V. FFCLI AND FFPI C OMPARED Thus far, we have introduced two common combined feedforward/feedback architectures and discussed some specifics when using model-inverse control (particularly the ZMETC) for feedforward control design. Table I summarizes the discussion of Sections III and IV. According to the analysis, we can expect (with proper modeling and controller design) that the FFCLI and FFPI architectures will perform equally. Later in Section VI we will investigate the validity of this claim with respect to experimental results. Assuming equal performance, what benefits can we expect from each architecture with respect to implementation? Except when the feedback controller is of trivial design, such as only a gain, we can expect that FCL of the FFCLI architecture will always have a higher order than FP of the FFPI architecture. The order of a filter could be a critical design decision when working with systems with minimal or limited computational power (such as hard-disk drives). Using a measure of feedforward FLOP count (or the number of floating-point operations required per each instance of hardware interrupt on a microprocessor used to calculate the output of the feedforward filters), we can begin to quantify the computational load of each feedforward technique. Defining NFCL and NFP as the order of the FCL and FP filters, respectively, and NBu as the number of nonminimum-phase zeros in the plant (or the order of the polynomial Bu ), we introduce Table II summarizing the FLOP count associated with each architecture. Recall that in all except the most trivial cases, NFCL > NFP , and further that NBu ≤ NFP . Also, as per our implementation, we assume that any portions of filters that are pure delay (that are not required for filter causality) are handled by microprocessor memory rather than a filter calculation.

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

xd (t − k∗ Ts )

xd (t)

x(t)

2

2

1

1

Position (µm)

Position (µm)

xd (t)

0

−1

6

xd (t − k∗ Ts )

x(t)

0

−1

−2

−2 k* = 16.2676

0

0.005

k* = 17.7769 0.01

0.015 0.02 Time (sec)

0.025

0.03

(a) FFCLI: Je = 5.62 × 10−5 and Jm = 4.09 × 10−2

0

0.005

0.01

0.015 0.02 Time (sec)

0.025

0.03

(b) FFPI: Je = 9.52 × 10−5 and Jm = 7.37 × 10−2

Fig. 5. Experimental results for (a) ZMETC closed-loop-injection feedforward and (b) ZMETC plant-injection feedforward control when given a 99.2 Hz raster pattern. Three curves appear in each figure: xd (t), xd (t − k∗ Ts ), and x(t). The performance metric values for each experiment are provided in the corresponding sub-captions (recall performance metric values closest to zero are superior), and the value for k∗ is provided in the lower left of each sub-figure.

TABLE II FLOP C OUNT S UMMARY FOR T HREE F EEDFORWARD C ONTROLLER C OMBINATIONS * Arch.

FCL FLOP

FP FLOP

Total FCL & FP

Count

Count

FLOP Count

MP

4NFCL+3

0

4NFCL + 3

NMP

4NFCL+3

0

4NFCL+3

MP

0

4NFP +3

4NFP +3

NMP

4NBu+3

4NFP +3

4NBu+4NFP +6

MP

4

4NFP +3

4NFP +7

NMP

4

4NFP +3

4NFP +7

System

FFCLI

FFPI

Adpt. τ

* FLOP count is the number of floating point operations during each typical hardware interrupt. These FLOP counts are based on using the ZMETC for feedforward design and assume a minimum-phase and exactly proper C.

Plugging realistic example numbers into Table II for NFCL , NFP , and NBu , we note that depending on the number of nonminimum-phase zeros (Bu ) and the orders of plant and feedback controller (together of which determine NFCL ), the lowest number of FLOP counts varies between the FFPI and FFCLI architectures for nonminimum-phase plants. One caveat of Table II is the fact that it does not include the possibility that NFCL could be smaller than indicated by the order of the plant P and feedback controller C. That is to say that, due to pole-zero cancellations, the calculation of the closed-loop transfer function HCL (which determines FCL ) may be a few orders lower than the sum of the orders of the plant P and feedback controller C might indicate. Further, in the process of implementation, a designer may

decide that some near pole-zero cancellations might be close enough to cancel when calculating HCL . In short, (except in extreme cases such as when the order of the feedback filter >> the order of the plant) there is no general rule for which architecture, FFPI or FFCLI will have the lowest computational load. The designer will need to calculate this load for particular control designs. Beyond FLOP count, there are some other reasons why a designer might choose one architecture over the other. For our piezoscanner, we are particularly interested in the FFPI architecture due to the fact that FP will typically have parameters that are closely tied to the physical system P that are not obscured by feedback controller parameters and the typically high order of FCL . If adaptive feedforward methods are to be applied (such as one similar to those in [3] and [4]), one may prefer the FFPI architecture as the adaptation algorithm will have a lower-order filter to adapt upon and the adaptation parameters will likely have more obvious physical relationships with the plant. That said, if there is a large amount of uncertainty in the identification of nonminimum-phase zeros, there may be an advantage to using the FFCLI architecture. This is because the nonminimum-phase arrangement of FFPI requires the calculation of two signals xf f and uxf f using the potentially erroneously identified nonminimum-phase zeros in polynomial form, Bu and Bu∗ . In contrast, the FFCLI architecture will only have one signal xf f requiring computation with Bu and Bu∗ . Next, we look at experimental results comparing these two architectures on an AFM x-y piezoscanner with nonminimumphase zeros. VI. I NITIAL E XPERIMENTAL R ESULTS This section presents experimental results of a comparison of the FFPI and FFCLI architectures while using ZMETC model-inverse feedforward control. All laboratory work was performed on the x direction of a nPoint NPXY100A x-y piezoscanner stage, and controllers were implemented on a Texas Instruments digital signal processor. Using frequency response methods, we obtained a 4th-order discrete-time

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

model of the stage, shown below in (25). The model includes two nonminimum-phase zeros (z = 1.1565 ± 0.1735j) that challenge the performance of control designs and limit the effectiveness of the model-inverse based feedforward methods. The relative degree r = 2, and the sample rate for this model and all associated controllers is 25 kHz. 0.0026339(z 2 − 2.313z + 1.368) . 2 (z − 1.816z + 0.8284)(z 2 − 1.959z + 0.9863) (25) All experimental work uses the same feedback controller C that is exactly proper and minimum phase, Pˆx (z) =

C(z) =

0.74736(z + 1)(z 2 − 1.816z + 0.8284) (z + 0.7072)(z − 0.7899)(z − 1) (z 2 − 1.959z + 0.9864) . × 2 (z − 1.882z + 0.9019)

t∈[tss ,tss +10T )

(28) (29)

For further clarification, the reader can refer to the first set of experimental results provided in Fig. 5 in which the actual 99.2 Hz raster scan input xd (t) is solid black, and the shifted 99.2 Hz input xd (t−k ∗ Ts ) is dashed black. The system output x(t) is shown in either solid blue or yellow. B. Experimental Results

(26)

The feedback filter is a 5th-order H∞ filter designed following techniques described in [20]. Design objectives include maximizing bandwidth, limiting saturation, and avoiding excitation of the plant’s resonance frequency. We first discuss two metrics used to compare the results, and then we provide experimental data showing the performance of each architecture. A. Performance Metrics Our experimental piezoscanner is dedicated to providing the raster pattern (or any other desired sample scan trajectory) of an AFM. When discussing the performance of the tracking of a raster scan in AFMs, it is important to recall the overall goal of AFMs: to create a quality image in a timely manner [1]. However, this goal requires a definition of a “quality image” when referring to an x-y raster scan. Focusing on the x direction, an ideal controller would cause the system output x(t) to track the desired raster pattern xd (t) flawlessly. This suggests that a mean-square-error metric might be informative in defining the performance of a controller. However, for imaging, meansquare error might not give us the best measurement. This is because delay in the raster scan used for AFM and other SPM imaging is not nearly as critical as consistently tracking the magnitude. Ultimately, this means that if we know the delay well, perfectly delayed tracking is better than imperfect timely tracking. So, to identify that delay, we examine several periods (T ) of the recorded raster scan after a time tss at which all transients (from initial conditions for example) have died out, and define the variable k ∗ as Z tss +N T 2 ∗ k = arg min (27) xd (t − kTs ) − x(t) dt. k

that emphasize magnitude tracking over ten periods: Z tss +10T 2 1 xd (t − k ∗ Ts ) − x(t) dt Je = 10 tss 2 Jm = max xd (t − k ∗ Ts ) − x(t) .

7

tss

Here, k is a variable defined on [0, TTs ] where Ts = 40 µsec is the controller sample period, and N is the number of recorded periods after transients have died out. For our experimental hardware, N is always greater than or equal to 10, but can vary depending on the raster frequency and the size of the memory block to which the data is being written. The allowance of additional data through the use of a larger N provides more confidence in the determination of k ∗ . Specifically, k ∗ reflects the delay in the system which can be used to define two metrics

In Fig. 5, we provide experimental results comparing the FFPI and FFCLI architectures. In this comparison, the exact same 5th-order H∞ feedback controller C (given above) is used for both experiments. Although neither is perfect, the performance metrics indicate the FFCLI architecture’s ability to track the supplied 99.2 Hz raster pattern is better than the FFPI architecture. In previous work, [2], [12], [18], FFPI results included a large amount of overshoot at the corners of the raster pattern. This in contrast to the results in Fig. 5(b) which do not demonstrate such overshoot. This change in trajectory shape for the FFPI experimental results can be explained by the change in the design of FCL from z −r to z −r Bu . ∗ Bu The tracking results of Fig. 5 are decent, but we have additional concerns about the variation of the frequency response of the x direction of our scanner as we move about the range of the stage. This variation can be seen in Fig. 6 in which we plot thirteen distinct frequency response functions (FRFs) measured over the range of the x direction while using the swept-sines system-identification technique. Fig. 6 provides substantial motivation for feedforward-adaptive control as modeling errors while using model-inverse based feedforward control can lead to a significant performance degradation. In general, the variation of the plant model over a typical range an AFM piezoscanner user might utilize is quite legitimate, and more than likely, can be attributed to the nonlinear properties of piezo crystals and amplified by varying ambient conditions. In particular, the variation of the DC gain and the feature at ≈ 350 Hz in Fig. 6 suggest that adaptive control may have substantial value when attempting to obtain the best possible tracking performance over the entire range of the stage. Future work will investigate the application of indirectadaptive control methods applied to the feedforward filter, but currently, the hardware interrupt (HWI) of the microprocessor (clocking at 25 kHz) we are using to implement these control algorithms is becoming increasingly “full”. We expect the HWI to reach capacity as we implement future (and more advanced) work. As a result, any changes to the feedforward implementation that limit the FLOP count in the HWI (while matching existing performance) are welcome. Further, changes that both limit the FLOP count and do not require identified plant parameters for computation are even more welcome. The following section introduces an adaptive-delay algorithm that

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

Magnitude (dB)

10 0 −10 −20 −30

2

3

10

10

Phase (degrees)

0 −100 −200 −300 2

3

10

10 Frequency (Hz)

Fig. 6. Thirteen distinct FRFs measured over the range of the x direction of a nPoint NPXY100A x-y piezoscanner stage while using the swept-sines system identification method. Each FRF was generated while injecting ±5µm amplitude sinusoids; they each differ by their offset value within the range of the stage.

accomplishes those immediate goals while retaining tracking performance. VII. A N A DAPTIVE -D ELAY FFPI A LGORITHM A. Motivation for Adaptive-Delay Approach Some experimental testing showed that the performance of using the minimum-phase variation of the FFPI architecture (FCL = z −r ) on our nonminimum-phase system could be improved upon if the value of the r delay in Fig. 3 was allowed to increase. Reserving r to be the relative degree of the plant (and the delay required in the causal design of a ZMETC filter), and introducing a new integer variable τ that represents the delay in the FCL block, we found that performance improvements continued with each increment of τ until a point at which the performance began to degrade again. Note that the optimal value of τ is likely not an integer. Nonetheless, an integer τ was assumed due to its effectiveness and lack of complexity in implementation. We can show that an optimal choice of τ exists by reworking the definition of ∆ from (21). If we start with (16), but replace the r in the FCL block with τ , we arrive at X(z) P FP + z −τ P C . (30) = Xd (z) 1 + PC τ FFPI

Following the same general steps described in Subsection IV-A, we can rewrite the overall transfer function of this τ delay variation on the FFPI architecture as # " X(z) z −r Bu A + Bs Bu∗ Cz r−τ . (31) = Xd (z) τ F F P I Bu∗ A + Bs Bu C −r

In (31), we notice the same unity-gain factor z B ∗Bu from (14) u and (20), and we define the portion in brackets as ∆τ (z) =

A + Bs Bu∗ Cz r−τ . A + Bs Bu C

(32)

The τ subscript indicates that this transfer function is not necessarily the same as (21). Using ∆τ (z), we can study how the magnitude of its frequency response changes as we vary τ .

8

The choice of τ that provides a frequency response of ∆τ (z) closest to unity magnitude will be the optimal. Recall that Fig. 4 shows the magnitude and phase of ∆τ (z) when τ = 2. In Fig. 7, we expand upon Fig. 4 and provide new frequency response plots for the magnitude of ∆τ (z) as we vary τ . In Fig. 7, the original case (τ = 2) is shown in black. As τ increases, the magnitude of ∆τ (z) becomes closer to unity. At τ = 16 (shown in magenta), the magnitude is closest to providing unity gain for all frequencies. Beyond τ = 16, the magnitudes trend away from unity gain for all frequencies. Under these circumstances, setting τ = 16 should lead to improved FFPI tracking performance. Note that no integer choice of τ leads to ∆τ (z) being unity magnitude for all frequencies. The data used in creating Fig. 7 suggests that the “optimal” choice for τ is actually a value that is less than 16, but greater than 15. Having a non-integer τ will complicate implementation, so it is constrained to be an integer value. Further, the data for ∆τ (z) shown in Fig. 7 is based upon the model of our plant and our feedback controller, so we cannot assume that τ = 16 will be the ideal choice for implementation on our actual hardware. However, it is not too bold to assume that an ideal choice of τ exists and it is likely in the neighborhood of 16. This claim provides motivation to develop an adaptive algorithm that automatically calibrates the system to use the best choice of τ . Note that the experimental results for the FFCLI algorithm shown in Fig. 5(a) indicate a value for k ∗ where 16 is the closest integer, the same value for τ that is suggested by the analysis in Fig. 7. This is likely more than just coincidence, but we note that this value for k ∗ in the FFCLI algorithm can vary over experimental trials. This also provides motivation for future work in which we implement fully adaptive feedforward filters. B. The Adaptive-Delay Algorithm Rather than using Fig. 7 to assume that 16 is the optimal choice of τ , and noting that variations in our plant are common, we choose to create an adaptive algorithm that automatically calibrates the system such that it uses the best choice of τ . This is done by comparing the sum of the squared signals x(k) and xf f (k) over each raster period to define an update direction. Defining the variable j as the raster index (or the adaptive update count), we define an update direction as N −1 X [x(j, n)2 − xf f (j, n)2 ]. (33) Ωj = n=0

Here, N is the total number of discrete-time data points that define the full period of a raster pattern, and n is the specific time index within that raster pattern. We have used the notation x(j, n) to indicate the value of the signal x at the nth time index during the j th raster period. Introducing the positive constant µ as a scalar value used to weight the amount of the update to τj+1 , we define our adaptive update equation as τj+1 = round(τj + µΩj )

(34)

where round(·) converts the argument to the nearest integer. Note that constraining τj+1 to be an integer results in the

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

9

C. Experimental Results of FFPI with Adaptive-Delay 4

Magnitude (dB)

3

τ = 10

2

12

1

14 16

0

18

−1

20 −2 −3 2

10

3

4

10 Frequency (Hz)

10

Fig. 7. The magnitude portion of the frequency response of ∆τ (z) as we vary τ . The τ values for each particular curve are shown on the plot. The original case (τ = 2) is shown in black. At τ = 16 (shown in magenta), the magnitude is closest to providing unity gain for all frequencies, and setting τ = 16 will offer the most improved FFPI performance. This plot was created using the model for the AFM-piezoscanner plant P in (25) and the feedback controller C in (26).

FP xd

z−τ

xff

ex

C

uxff uxfb

ux

P

x

xff Adpt. Alg.

x

Fig. 8. The adaptive-delay variation of the plant-injection configuration from Fig. 1. The difference between this arrangement and the traditional FFPI configuration is the addition of an adaptive algorithm that updates the τ delay block in place of the typical choice for FCL in the FFPI architecture. The signals used as inputs to the adaptation algorithm are x(k) and xf f (k).

existence of a “dead zone” within the algorithm. It may not be immediately clear how (33) can accurately define the update direction, but we can aid the intuition by noting that rastercorner overshoot (resulting in a positive Ωj ) is the product of an undervalued τ . Meanwhile, raster-corner “undershoot” (resulting in a negative Ωj ) is a product of an overvalued τ . Further, as τ converges, the output approaches the desired raster pattern and (33) nears zero. Fig. 8 provides a block-diagram representation of the adaptive-delay FFPI architecture as described above. It is identical to the standard FFPI architecture in design and implementation except for the inclusion of an adaptive τ in place of setting FCL as in (23) in the FFPI architecture. Table II includes FLOP count information for the adaptivedelay algorithm. Note that Table II only includes the FLOP count for a typical sample which is the calculation of (33). That calculation requires 4 floating point operations per discrete sample. Once per raster period, (34) will also need to be calculated which adds 2 more floating point operations. Additionally, within the context of a single AFM image, the computational load can be reduced further if the update calculation is turned off after the convergence of τ ; if this is done, the feedforward computational load will be only that of FP .

Experimental results when using the adaptive-delay FFPI algorithm on the nPoint NPXY100A x-y piezoscanner stage are provided in Fig. 9. In particular, Fig. 9 shows the steadystate results (after τ has completed adapting). Comparing the performance results of the FFCLI architecture in Fig. 5 with those in Fig. 9, we note that according to the performance metrics, the adaptive-delay algorithm has successfully performed at a better level than that of the FFCLI and FFPI (without adaptive delay) results. Despite the analysis of Subsection VII-A that suggested the optimal τ is 16, in the experimental data presented, the adaptive algorithm actually converged to τ = 15. Some variation from the analysis can be expected as the data used in Fig. 7 is numerically computed from the feedback controller and a linear plant model that was obtained by experimental system identification methods. Further, the converged value for τ tends to vary between 15 and 16 as data is taken throughout the day. These natural variations further support the need for an adaptive algorithm to determine τ and the motivation for additional adaptive methods for other control filters. In Fig. 10, the output signal x (brown) and the input signal xd (black) are plotted immediately after activating the adaptive τ algorithm. Additionally, the value of τ (dark green) as it updates is plotted on an auxiliary axis in Fig. 10. Here, the adaptive scaling factor µ = 2.50 was determined empirically to work well. (Larger values of µ risk the stability of the adaptation while smaller values result in slower convergence.) No adaptation occurs during the first raster pattern. As a result, τ = 2 for this entire first period, and the first period looks much like any period of FFPI data (when using FCL = z −r ) in [2] and [12]. By the second period, the adaptive algorithm has made a large correction with respect to the data from the previous raster pattern. After 3 raster periods (or 2 updates), the algorithm settles at τ = 15 and the output now matches the data in Fig. 9. The initial choice of τ = 2 was selected because that xd (t)

xd (t − k∗ Ts )

x(t)

2

1

Position (µm)

2

0

−1

−2 k* = 16.0703 0

0.005

0.01

0.015 0.02 Time (sec)

0.025

0.03

(a) Adaptive τ FFPI: Je = 4.24 × 10−5 and Jm = 2.37 × 10−2 Fig. 9. Experimental results for the adaptive delay algorithm implemented on the FFPI architecture once τ has reached the steady-state value of 15. Similar to Fig. 5, three curves appear in the figure: xd (t), xd (t − k∗ Ts ), and x(t). Note the values for the performance metrics are on the order of (and slightly better than) the performance levels of the FFCLI and FFPI architectures in Fig. 5.

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

10

22 2

Position (µm)

1

14

0

10

−1

Adaptive τ

18

6

−2

2 0

0.005

0.01

0.015

0.02

0.025

0.03 0.035 Time (sec)

0.04

0.045

0.05

0.055

0.06

Fig. 10. The output signal x (brown) and the 99.2 Hz input signal xd (black) are plotted immediately after activating the adaptive τ algorithm. On an auxiliary (right) axis, we also provide the value of τ (dark green) as it updates. After 3 raster periods (or 2 updates), the algorithm settles at τ = 15 and the output then matches the data shown in Fig. 9.

represents the choice of τ as dictated by the minimum-phase ZMETC FFPI algorithm. A more intelligent choice of τ would be 16 as per the analysis of Subsection VII-A and Fig. 7, but that choice fails to demonstrate the adaptive capability of the algorithm. As a result, we selected τ = 2 as an initial value to show the adaptive algorithm in action. To further support the value of this adaptive-delay algorithm and the analysis in Sections VI and VII, we have also provided (in Figs. 11 and 12) experimental results in which the desired raster pattern xd (t) frequency has been increased to 115.7 Hz. In these cases, we again see the adaptive-delay algorithm perform well. Further, a 88.6 Hz raster pattern input has also been applied to the system and the results are similar. The ability of the adaptive-delay algorithm to approximate with only an adaptive delay z −τ can be further under-

z −r Bu ∗ Bu

−r

stood if we take a close look at each. To start, both z B ∗Bu u and z −τ have the same unity magnitude at all frequencies, as a result we can expect the phase of each to reveal the reason for the adaptive-delay algorithm’s success. In Fig. 13, we provide the phase portion of the frequency response for each. We have assumed the converged value of τ of 15 which −r matches the phase of z B ∗Bu over the range of frequencies of u interest. Also included for comparison is the minimum-phase choice, z −r which fails to match the phase except at extremely low frequencies. Further, the fact that the adaptive-delay algorithm can outperform the standard FFPI architecture can likely be explained by the fact that the computation of τ does not require plant parameters that are prone to identification error and variation. That said, given a raster frequency, one can use plant parameters to calculate an approximate value of the converged value of τ . This can be done by approximating the phase at the raster frequency f by evaluating 6

(Bu (z)) − 6 (z r Bu∗ (z))

(35)

for z = ej2πf Ts and determining the delay associated with that phase. The result will need to be rounded to reflect an integer τ .

VIII. N ONMINIMUM -P HASE Z ERO L OCATION AND THE A DAPTIVE -D ELAY A LGORITHM One interesting connection to some of our previous work in [21] and [22] is revealed when we investigate how the location of discrete-time nonminimum-phase zeros will change the value at which τ settles. For example, if we look at the hard-disk drive discussed in [13], [14], [21]–[23], we notice the existence of nonminimum-phase zeros in the discrete lefthalf plane (shown in black in Fig. 14). This is in contrast to the discrete right-half-plane nonminimum-phase zeros of the AFM piezoscanner. In short, the location of these zeros indicates that the nonminimum-phase zeros of the AFM piezoscanner play a bigger role at lower frequencies than they do for those of the hard-disk drive. As a result, the minimum-phase design (z −r ) for FCL in the FFPI architecture for a system like the hard−r disk drive is a good approximation to using FCL = z B ∗Bu u (especially at low frequencies). This is demonstrated by the two curves in Fig. 15 in which we plot the phase of two unity magnitude design options for FCL for the hard-disk −r drive, z −r and z B ∗Bu . Here, we notice that FCL = z −r u

−r

approximates the required phase characteristics of z B ∗Bu . u Therefore, we can conclude that using FCL = z −r for the hard-disk drive with the FFPI architecture will likely result in tracking success, especially if the signal to be tracked does not have a lot of high-frequency content and the relative degree of the system has been identified well. The success of this z −r approximation for hard-disk drives was shown to work well in [13], and that success has lead to confusion as to the proper implementation of FCL in the FFPI architecture while using ZMETC on a system with discrete right-halfplane nonminimum-phase zeros ([2], [18]). Though subsequent work helped lead to the development of this adaptive-delay algorithm. Figs. 14 and 16 together further demonstrate how the −r phase of z B ∗Bu can vary as nonminimum-phase zero location u changes. In particular, we vary the angle of nonminimumphase zeros in the complex plane by 20-degree increments while keeping the radius constant (and matching that of the hard-disk drive). This angle variation forces these

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

xd (t − k∗ Ts )

xd (t)

x(t)

2

2

1

1

Position (µm)

Position (µm)

xd (t)

0

−1

11

xd (t − k∗ Ts )

x(t)

0

−1

−2

−2 k* = 17.7047

0

0.005

k* = 17.2201 0.01

0.015 0.02 Time (sec)

0.025

0.03

(a) FFCLI: Je = 1.26 × 10−4 and Jm = 6.26 × 10−2

0

0.005

0.01

0.015 0.02 Time (sec)

0.025

0.03

(b) FFPI: Je = 1.82 × 10−4 and Jm = 9.32 × 10−2

Fig. 11. Experimental results for (a) ZMETC closed-loop-injection feedforward and (b) ZMETC plant-injection feedforward control when given a 115.7 Hz raster pattern. Three curves appear in each figure: xd (t), xd (t − k∗ Ts ), and x(t). The performance metric values for each experiment are provided in the corresponding sub-captions (recall performance metric values closest to zero are superior), and the value for k∗ is provided in the lower left of each sub-figure.

xd (t)

xd (t − k∗ Ts )

100

x(t)

50 0

Phase (degrees)

2

Position (µm)

1

0

−1

−50 −100 −150 −200

FCL = z −τ

−250 −300

−2

−350

k* = 16.4425 0

FCL = z −r

0.005

z −r Bu ∗ Bu

FCL =

2

10

0.01

0.015 0.02 Time (sec)

0.025

0.03

(a) Adaptive τ FFPI: Je = 7.39 × 10−5 and Jm = 5.28 × 10−2 Fig. 12. Experimental results for the adaptive delay algorithm implemented on the FFPI architecture once τ has converged and when given a faster 115.7 Hz raster pattern. Similar to Fig. 5, three curves appear in the figure: xd (t), xd (t − k∗ Ts ), and x(t).

nonminimum-phase zeros to move from the right to the lefthalf plane as the incremental changes in angle carries them from low-frequency (blue) to high frequency (red). Similar to Fig. 15, provided in Fig. 16 is also the phase curve of −r the approximation z −r (solid red) and the phase of z B ∗Bu u (solid black and slightly obscured) for the actual hard-disk drive system. In Fig. 16, we notice how the progression from lowfrequency right-half-plane nonminimum-phase zeros (dashed blue) to high-frequency left-half-plane nonminimum-phase −r zeros (dashed red) causes the phase curves of z B ∗Bu to roll off u later, thereby increasing the validity of the z −r approximation (solid red). Clearly, there is never a perfect approximation at high frequencies, but if the frequency content of the signal to be tracked is not too high and we know the relative degree well, then using FCL = z −r when implementing ZMETC on the FFPI architecture for systems with high-frequency (lefthalf-plane) nonminimum-phase zeros will likely yield success. This is not to say that the benefits of the adaptive-delay algorithm are lost when implementing ZMETC on the FFPI

3

10 Frequency (Hz)

4

10

Fig. 13. The phase portion of the frequency response for three choices of FCL while using the FFPI architecture. Each features unity gain at all frequencies. We have assumed the converged value of τ of 15 which matches −r the phase of z B ∗Bu over the range of frequencies of interest. Also included u for comparison is the minimum-phase choice, z −r .

architecture for systems with high-frequency (left-half plane) nonminimum-phase zeros. Rather, the adaptive-delay algorithm may still be of interest if it is difficult to identify the relative degree or if it is known to vary. That said, the benefits of the algorithm are much more evident with low-frequency (or right-half plane) nonminimum-phase zeros. IX. D ISCUSSION AND C ONCLUSIONS The key contribution of this paper is the adaptation of a single parameter in an alternate FFPI architecture that results in near unity gain of the overall transfer function which consequently leads to a performance level exceeding that of FFCLI and the pure FFPI. Experimental results from an AFM piezoscanner have shown the validity of using the proposed combined feedforward/feedback adaptive-delay algorithm rather than either the FFCLI or the pure FFPI architectures. In addition to AFM piezoscanners, probe-based data storage systems ([5], [6]) and other piezo-based positioning systems can take advantage of the benefits of using the proposed algorithm which include:

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

On-going work shows that this adaptive algorithm is successful for other model-inverse based designs including the zero-phase-error tracking controller (ZPETC) and the nonminimum-phase zero ignore methods. (These methods are described in full in [21] and [22].) Due to the location of the discrete-time nonminimum-phase zeros of the plant [21], at raster speeds of 99.2 Hz and up, these methods require the filtering of the feedforward signals in order to be sure those signals do not grow so large that signal saturation is certain [21], [22]. With these inversion techniques, the adaptive-delay algorithm continues to perform well despite the needed inclusion of a low-pass filter after FP . The reduced computational load of the adaptive-delay method becomes even more pronounced in these cases as the pure FFPI algorithm requires two low-pass filters (one after FP and the other after FCL ). These two filters must have the same phase characteristics to ensure equal phase lag. In contrast, a lowpass filter is not required after the FCL filter when using the adaptive-delay method, as the algorithm will adapt to correct for any phase mismatch. On-going experimental work has also shown that there is a benefit to the adaptive delay algorithm even when the model is minimum-phase. This is despite the analysis given here that shows it is not needed. In general, the authors conclude that the value for systems with minimum-phase is a result of physical variation of the system with respect to the model. The inclusion of a low-pass filter (LPF) with the ZMETC adaptive-delay algorithm is not required at the raster speeds discussed above, but (as discussed in [22]) the inclusion of a LPF can help avoid saturation of the signal ux as we increase the raster speed considerably. As an example, we have included Fig. 17 showing experimental results of our system using the adaptive-delay algorithm while tracking a 152.4 Hz raster pattern. The reader should note that performance metrics

1

Imag(z)

0.5

0

−0.5

−1

−1

−0.5

0 Real(z)

0.5

1

Fig. 14. A map of various complex-conjugate nonminimum-phase zero pairs. The black zeros represent those of the hard-disk drive discussed in [13], [14], [21]–[23]. The others represent possible constant-radius variations in nonminimum-phase zero locations (for any hypothetical system). The colors −r of the zeros correspond to the dashed phase curves of z B ∗Bu in Fig. 16. u

100 50 0

Phase (degrees)



A reduction in computational load as compared to the traditional methods A single-parameter adaptation calculation that does not require knowledge of plant parameters

−50 −100

Hard-Disk Drive

−150 −200

FCL = z −r

−250 z −r Bu ∗ Bu

FCL =

−300 −350

2

10

3

4

10 Frequency (Hz)

10

Fig. 15. The phase portion of the frequency response for FCL = z −r and −r FCL = z B ∗Bu for the hard-disk drive discussed in [13], [14], [21]–[23]. u Here, we note that the left-half plane (high frequency) position of the drive’s −r nonminimum-phase zeros allows z −r to be a good approximation to z B ∗Bu u for the design of FCL while using the FFPI architecture. This is particularly true if the signal to be tracked contains frequency content in the range that the two curves sit on top of one another. All curves are produced with the sample rate of the hard-disk drive. The axis scales are the same as for Figs. 13 and 16 for ease of camparisons. 100 50 0 Phase (degrees)



12

−50 −100 −150 −200 −250 −300 −350

2

10

3

10 Frequency (Hz)

4

10

Fig. 16. The phase portion of the frequency response for the unity gain −r term z B ∗Bu plotted for each complex-conjugate pair shown in Fig. 14 as u they move from low frequency (dashed blue) to high frequency (dashed red). Also included are the phase curve for z −r (solid red) and the phase curve −r of z B ∗Bu (solid black and slightly obscured) for the given hard-disk drive u nonminimum-phase zeros that are shown in black in Fig. 14. All curves are produced with the sample rate of the hard-disk drive.

at different raster frequencies are not directly comparable. This is because the 25 kHz sample rate has remained the same while the number of samples per raster changes as the raster frequency changes. In this case, we have included one additional 5th-order Butterworth filter after FP . In this example, the LPF has a cut-off frequency of 2500 Hz. The inclusion of the LPF obscures the analysis given in this paper, but experimental results show that its inclusion does not alter the function of the adaptive-delay algorithm. Empirical work has shown that the adaptive-delay algorithm still performs as designed despite selecting a cut-off frequency of the low-pass filter that is too low for adequate raster tracking. Further, FFPI results in [18] suggest that this adaptive algorithm will likely be successful for other model-inverse based designs including H∞ feedforward filters (which, in the frequency domain, will often mimic the appearance of a model-inverse controller.).

SUBMITTED TO: IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. XX, NO. YY, MONTH YEAR

xd (t)

xd (t − k∗ Ts )

x(t)

2

Position (µm)

1

0

−1

−2 k* = 19.8366 0

0.005

0.01

0.015 0.02 Time (sec)

0.025

0.03

(a) Adaptive τ FFPI: Je = 2.32 × 10−5 and Jm = 2.66 × 10−2 Fig. 17. Experimental results for the adaptive delay algorithm implemented on the FFPI architecture once τ has converged and when given a faster 152.4 Hz raster pattern. Similar to Fig. 5, three curves appear in the figure: xd (t), xd (t − k∗ Ts ), and x(t). Here, a 5th-order Butterworth filter with a cut-off frequency of 2500 Hz is included after FP to avoid saturation of ux .

Some have correctly indicated that iterative learning control (ILC) [24] provides an alternative approach to precise raster tracking. We have been investigating the use of ILC on our system in [25], and ongoing work will provide a full comparison of ILC and the ideas discussed here. Regardless of the outcome of that comparison, we must consider that in some piezo-based positioning system applications there may not be sufficient time and opportunity for the learning phase of ILC. For example, requiring the ILC system to “re-learn” a trajectory at each user-desired image location within the range of an AFM piezoscanner may increase the overall time-toimage which conflicts with the ultimate goal of advanced AFM control: reduce the time-to-image [1]. Further, ILC applies to the tracking of a repetitive trajectory and cannot be used for nonrepetitive trajectories such as those discussed in [26], [27]. In contrast, the adaptive-delay method described here can be used for the tracking of nonrepetitive trajectories if the converged results of the algorithm are applied after a brief raster-motion calibration phase. We can expect the duration of this calibration phase to be equal to the period of a few raster periods. For example, the results shown in Fig 10 demonstrate that a safe expectation of the duration of a calibration phase would be three raster periods or approximately 0.030 seconds. Future work will determine which of the discussed architectures will be superior for implementing adaptive model-inverse based feedforward control. In short, as we learn more about specific variations natural to the plant and fill the HWI with calculations, the benefits of the adaptive-delay architecture will be exploited. R EFERENCES [1] D. Y. Abramovitch, S. B. Andersson, L. Y. Pao, and G. Schitter, “A tutorial on the mechanisms, dynamics, and control of atomic force microscopes,” in Proc. Amer. Ctrl. Conf., July 2007, pp. 3488–3502. [2] J. A. Butterworth, L. Y. Pao, and D. Y. Abramovitch, “Adaptivedelay combined feedforward/feedback control for raster tracking with applications to AFMs,” in Proc. Amer. Ctrl. Conf., June 2010, pp. 5738– 5744.

13

[3] A. Fleming, “Time-domain adaptive feed-forward control of nanopositioning systems with periodic inputs,” in Proc. Amer. Ctrl. Conf., June 2009, pp. 1676–1681. [4] B. Potsaid, J. T. Wen, M. Unrath, D. Watt, and M. Alpay, “High performance motion tracking control for electronic manufacturing,” ASME J. Dyn. Sys., Meas., & Ctrl., vol. 129, pp. 767–776, Nov. 2007. [5] A. Sebastian, A. Pantazi, H. Pozidis, and E. Eleftheriou, “Nanopositioning for probe-based data storage,” IEEE Ctrl. Sys. Mag., pp. 26–35, August 2008. [6] A. Pantazi, A. Sebastian, G. Cherubini, M. Lantz, H. Pozidis, H. Rothuizen, and E. Eleftheriou, “Control of mems-based scanningprobe data-storage devices,” IEEE Trans. Ctrl. Sys. Tech., vol. 15, no. 5, pp. 824–841, Sept. 2007. [7] D. Croft and S. Devasia, “Vibration compensation for high speed scanning tunneling microscopy,” Rev. Sci. Instr., vol. 70, no. 12, pp. 4600–4605, Dec. 1999. [8] D. Croft, G. Shedd, and S. Devasia, “Creep, hysteresis, and vibration compensation for piezoactuators: Atomic force microscopy application,” ASME J. Dyn. Sys., Meas., & Ctrl., vol. 123, pp. 35–43, 2001. [9] G. Schitter, R. W. Stark, and A. Stemmer, “Fast contact-mode atomic force microscopy on biological specimen by model-based control,” Ultramicroscopy, vol. 100, pp. 253–257, 2004. [10] G. Schitter and A. Stemmer, “Identification and open-loop tracking control of a piezoelectric tube scanner for high-speed scanning-probe microscopy,” IEEE Trans. Ctrl. Sys. Tech., vol. 12, pp. 449–454, 2004. [11] Q. Zou and S. Devasia, “Preview-based optimal inversion for output tracking: Application to scanning tunneling microscopy,” IEEE Trans. Ctrl. Sys. Tech., vol. 12, no. 3, pp. 375–386, May 2004. [12] J. A. Butterworth, L. Y. Pao, and D. Y. Abramovitch, “A comparison of control architectures for atomic force microscopes,” Asian J. Ctrl., vol. 11, no. 2, pp. 175–181, Mar. 2009. [13] B. P. Rigney, L. Y. Pao, and D. A. Lawrence, “Nonminimum phase dynamic inversion for settle time applications,” IEEE Trans. Ctrl. Sys. Tech., vol. 17, no. 5, pp. 989–1005, Sept. 2009. [14] B. P. Rigney, L. Y. Pao, and D. A. Lawrence, “Nonminimum phase adaptive inverse control for settle performance applications,” Mechatronics, vol. 20, pp. 35–44, 2010. ˚ om, P. Hagander, and J. Sternby, “Zeros of sampled systems,” [15] K. J. Astr¨ Automatica, vol. 20, no. 1, pp. 31–38, 1984. [16] K. K. Leang and S. Devasia, “Feedback-linearized inverse feedforward for creep, hysteresis, and vibration compensation in AFM piezoactuators,” IEEE Trans. Ctrl. Sys. Tech., vol. 15, no. 5, pp. 927–935, Sept. 2007. [17] M. Tomizuka, “Zero phase error tracking algorithm for digital control,” ASME J. Dyn. Sys., Meas., & Ctrl., vol. 109, pp. 65–68, Mar. 1987. [18] J. A. Butterworth, L. Y. Pao, and D. Y. Abramovitch, “Architectures for tracking control in atomic force microscopes,” in Proc. IFAC World Cong., July 2008, pp. 8236–8250. [19] S. Tien, Q. Zou, and S. Devasia, “Iterative control of dynamics-couplingcaused errors in piezoscanners during high-speed AFM operation,” IEEE Trans. Ctrl. Sys. Tech., vol. 13, no. 6, pp. 921–931, Nov. 2005. [20] S. Skogestad and I. Postlethwaite, Multivariable Feedback Control: Analysis and Design, 2nd ed. John Wiley and Sons, Ltd., 2005. [21] J. A. Butterworth, L. Y. Pao, and D. Y. Abramovitch, “The effect of nonminimum-phase zero locations on the performance of feedforward model-inverse control techniques in discrete-time systems,” in Proc. Amer. Ctrl. Conf., June 2008, pp. 2696–2702. [22] J. A. Butterworth, L. Y. Pao, and D. Y. Abramovitch, “Analysis and comparison of discrete-time feedforward model-inverse control techniques,” submitted to: ASME J. Dyn. Sys., Meas., & Ctrl., 2010, preprint available at: http://gemini.colorado.edu/∼butterwo/. [23] B. P. Rigney, L. Y. Pao, and D. A. Lawrence, “Discrete-time exact and approximate dynamic inversion for settle performance,” in Proc. IFAC World Cong., July 2008, pp. 1778–1784. [24] D. A. Bristow, M. Tharayil, and A. G. Alleyne, “A survey of iterative learning control,” IEEE Ctrl. Sys. Mag., pp. 96–114, June 2006. [25] J. A. Butterworth, L. Y. Pao, and D. Y. Abramovitch, “A comparison of ILC architectures for nanopositioners with applications to AFM raster tracking,” in submitted to: Proc. Amer. Ctrl. Conf., June 2011, preprint available at: http://gemini.colorado.edu/∼butterwo/. [26] S. B. Andersson, “Curve tracking for rapid imaging in AFM,” IEEE Trans. on Nanobioscience, vol. 6, no. 4, pp. 354–361, Dec. 2007. [27] P. Chang and S. Andersson, “Smooth trajectories for imaging string-like samples in AFM: A preliminary study,” in Proc. Amer. Ctrl. Conf., June 2008, pp. 3207–3212.