## Abstract

This letter presents a method to model the disturbance environment of a dual-stage hard disk drive (HDD), which is then used to predict the actuator stroke usage (i.e., the range of actuator displacement used) of a closed-loop track-following controller. In particular, a data-driven disturbance modeling approach is proposed and the stochastic interpretation of the $H2$ norm is used to systematically estimate the micro-actuator (PZT) stroke usage of the HDD controller. Upper- and lower-bound models of the frequency response of the external disturbance environment are used to provide a range of possible stroke usage, which involves a data-driven calibration process. The accuracy of the prediction model is validated in experiments with a controller that differs from the controllers in the calibration data set.

## 1 Introduction

Dual-stage actuation has been used in hard disk drives (HDDs) for many years, mainly due to the higher bandwidth of actuation it provides and thus, its ability to reject a wide range of vibration disturbances. Dual-stage actuation systems typically involve a voice coil motor (VCM) type actuator, and a piezoelectric (PZT) type actuator. The micro-actuator is more prone to saturation than the VCM actuator, mainly due to the micro-actuator’s limited stroke length. Thus, saturation avoidance for the entire dual-stage actuator system can be achieved by avoiding saturation of the micro-actuator. A well-designed HDD track-following micro-actuator controller must carefully balance the desire to have large gain to maximize closed-loop tracking performance and small gain to avoid saturation.

The control paradigm for dual-stage actuator systems in HDD track-following mode typically focuses on external disturbance rejection and performance is usually specified by a desired bound on the closed-loop sensitivity transfer function from the disturbance to the tracking error. In most cases, saturation of the dual-stage actuator system (and in particular the micro-actuator) in HDDs limits the achievable performance for a particular control design. Several HDD control design methodologies have been explored over the years, including model-based [1,2], data-driven [3,4], disturbance-observer/estimation compensation [5–7], and robust control strategies [8–11]. Although most of these methods do not feature any explicit saturation avoidance, a handful of effective, but complex, methodologies have been proposed [12,13]. One approach uses a decoupled parent–child configuration for closed-loop stability enhancement under saturation, but focuses on nonlinear plant models [14]. A simple, yet effective, method to avoid actuator saturation through mixed $H2$-$H\u221e$ control was recently proposed for dual- and triple-stage HDDs [3,15]. This method makes use of the stochastic interpretation of the $H2$ norm to constrain the variance of the HDD actuators subject to zero-mean Gaussian white-noise disturbances. This control synthesis approach provides a means to directly enforce bounds on the stroke usage of the HDD actuators, which is a great improvement over the industry standard of relying on intuition and extensive experimentation. Although the control framework in Refs. [3,15] is promising, effective use of the $H2$ norm to constrain stroke usage requires a more meticulous modeling of the disturbance to the HDD.

In this letter, a data-driven linear time-invariant (LTI) disturbance model is developed that predicts micro-actuator stroke usage prior to hardware testing by exploiting the relation between the $H2$ norm of a LTI system and the steady-state variance of its output. Specifically, the $H2$ norm is used alongside a calibrated model of the transfer function from the disturbance input to the micro-actuator controller output signal to determine an upper and a lower bound on micro-controller stroke usage. The proposed method focuses on disturbances that are external to the HDD and stochastic in nature (e.g., vibrations due to adjacent HDD operation or a cooling fan). The proposed approach enables the prediction of PZT actuator stroke for a candidate LTI feedback controller in a predefined disturbance environment, without the need for experimental testing or substantial design intuition. This disturbance model can potentially be used alongside the methods in Refs. [3,15] to design controllers that accurately constrain the PZT actuator stroke usage. In contrast with control methods designed to actively observe/estimate and reject external disturbances (e.g., disturbance-observer-based control [5–7]), this letter focuses on a systematic approach to model external disturbances and estimate actuator stroke usage that is *independent of the chosen LTI control synthesis method*. To summarize, the novel contribution of this letter is an end-to-end data-driven framework to predict the stroke usage of *any LTI PZT controller* in a particular disturbance environment prior to hardware testing.

## 2 Preliminaries

This section introduces important definitions, a description of the dual-stage HDD system considered in this work, and an outline of the problem formulation.

### 2.1 Definitions

The $H2$ norm of a bounded-input bounded-output (BIBO) stable single-input single-output (SISO) LTI system with transfer function $G(s)$ is $\Vert G\Vert 2=(1/2\pi )\u222b\u2212\u221e\u221e|G(j\omega )|2d\omega $.

Consider a SISO LTI system $G$ with output *y* and a zero-mean unit-variance Gaussian white-noise input *ν*. The steady-state variance of *y*(*t*) is given by the square of the $H2$ norm of $G$. That is, $\Vert G\Vert 22=limt\u2192\u221eE[y2(t)]$. Equivalently, the $H2$ norm of $G$ is related to the steady-state standard deviation of *y*(*t*) by $\Vert G\Vert 2=limt\u2192\u221e\sigma (y(t))$.

### 2.2 Dual-Stage Hard Disk Drive System.

The dual-stage actuator system in an HDD consists of the VCM and PZT actuators, which leads to a multi-input single-output (MISO) system plant model. A typical closed-loop control architecture is shown in Fig. 1, where the MISO, LTI plant model consists of VCM and PZT plant models, $Pvcm(s)$ and $Ppzt(s)$, and the output of the plant is *y*_{pes} = *d* − (*y*_{vcm} + *y*_{pzt}), which is the deviation of the magnetic read–write head from the center of the data track and typically referred as the position error signal (PES).

The dual-stage actuator system usually has two types of operating modes: Track Following, to keep the read–write head over a particular track, and Track Seeking, to move the read–write head from one track to another. Track-following mode, which is the type of control considered in this letter, is concerned with disturbance rejection. Specifically, this controller is designed to minimize the PES by attenuating the affects of disturbances on *y*_{pes}. Typically, the magnitude of the output sensitivity $SCL(s)$ is considered as the performance metric for the controller, which is a transfer function from the output disturbance *d* to the output *y*_{pes}, defined as $SCL(s)=(1+L(s))\u22121$, where $L(s)=Pvcm(s)Gvcm(s)+Ppzt(s)Gpzt(s)$ is the loop transfer function, $Pvcm(s)$ is the plant transfer function from the VCM actuator input to the output error *y*_{vcm}, $Ppzt(s)$ is the plant transfer function from the PZT actuator input to the output error *y*_{pzt}, $Gvcm(s)$ is the VCM controller, $Gpzt(s)$ is the PZT controller, and $GcT(s)=[Gvcm(s)Gpzt(s)]$ is the combined controller in Fig. 1.

### 2.3 Problem Formulation.

The overarching goal of this work is to predict the magnitude of the PZT controller output signal, *u*_{pzt}, within a particular external disturbance environment across different HDD systems and track-following controllers. Specifically, a method to determine the 3*σ* bound on the stroke usage of the PZT actuator when a candidate controller, $Gc(s)$, is used in the presence of an external disturbance environment without requiring experimental testing is desired.

As shown in Fig. 2, the LTI closed-loop transfer function from the disturbance *d* to the PZT actuator output is given by $Gpzt(s)SCL(s)$. The disturbance *d* is assumed to be the output of the BIBO stable transfer function $Wd(s)$, which is driven by the zero-mean unit-variance Gaussian white-noise signal *w*. This results in the closed-loop transfer function $Gw\u2192upzt(s)=Gpzt(s)$$SCL(s)Wd(s)$, which maps the input *w* to the output *u*_{pzt}. Since the input to $Gw\u2192upzt(s)$ is zero-mean unit-variance Gaussian white noise, the stochastic interpretation of the $H2$ norm can be used to quantify the steady-state variance of its output, *u*_{pzt}. The crux of this letter is the development of a data-driven method to determine a model of $Wd(s)$ in different HDD disturbance environments, which enables a stochastic quantification of the PZT actuator stroke usage through the $H2$ norm of $Gw\u2192upzt(s)$.

## 3 Disturbance Modeling Framework

This section focuses on the proposed disturbance modeling framework and includes a discussion on the validity of a zero-mean Gaussian disturbance model and presents a data-driven approach to determine upper and lower bounds on a transfer function of the disturbance model. The stochastic disturbances considered in this letter are external to the target HDD and primarily originate from the cooling fan as well as the motion of the adjacent drives in a cabinet-like data storage structure.

### 3.1 Modeling the Hard Disk Drive’s Disturbance As Zero-Mean Gaussian Noise.

Consider the LTI transfer function $Gw\u2192upzt(s)$ in Fig. 2, which maps from the input *w* to the output *u*_{pzt}. The notion of using the $H2$ norm to quantify the steady-state variance of *u*_{pzt} relies on the assumption that *w* is a zero-mean unit-variance Gaussian white noise. The HDD’s disturbance signal *d* is related to *w* through the BIBO transfer function $Wd(s)$ as $d(s)=Wd(s)w(s)$. The transfer function $Wd(s)$ accounts for the non-unit variance and nonuniform frequency content of the disturbance signal *d* and its design is discussed further in Sec. 3.2. Due to the linear mapping from *w* to *d* and also from *w* to *y*_{pes}, the assumption that *w* is zero-mean Gaussian noise translates to an assumption that *d* and *y*_{pes} are also zero-mean signals whose magnitudes are normally distributed. This assumption is validated by collecting PES data from a Seagate® HDD and plotting a histogram of the measured PES data points, as shown in Fig. 3. A dimensionless unit of counts is used for all the collected data from the HDD’s analog-to-digital converter (ADC), where one count represents the resolution of this measurement. The histogram of measured *y*_{pes} in Fig. 3 demonstrates a very close match to a zero-mean normal distribution, which supports the assumption that the closed-loop system described in Fig. 2 can be modeled as being driven by a zero-mean Gaussian signal *w*.

### 3.2 Data-Driven Bounds on a Disturbance Model.

The proposed disturbance modeling framework assumes that measurements of *y*_{pes} taken from closed-loop experiments in the disturbance environments of interest are available, along with the feedback controller, $Gc(s)$, used to obtain the measurements and a model of the plant (i.e., the transfer functions $Pvcm(s)$ and $Ppzt(s)$). The controller and the plant models are used to construct the closed-loop sensitivity $SCL(s)$, which is assumed to be BIBO stable and not feature any zeros on the imaginary axis. Alternatively, a data-driven BIBO model of the closed-loop sensitivity, likely obtained from closed-loop system identification, can be used directly.

The frequency response of a particular disturbance environment is computed over a grid of frequencies using the relation |*d*(*jω*)| = |*y*_{pes}(*jω*)|/|*S*_{CL}(*jω*)|, where |*y*_{pes}(*jω*)| is computed through a fast Fourier transform (FFT) of the measured PES data and |*S*_{CL}(*jω*)| is obtained through knowledge of the controller and plant model or through closed-loop system identification. There are no singularities in this computation, as $SCL(s)$ has no zeros on the imaginary axis. Note, the HDD itself typically rotates at 120 Hz, which leads to internal measurement disturbances at 120 Hz and its harmonics. As this work focuses on modeling external disturbances, only the nonrepeatable runout (NRRO) content [7] of the measured PES is used to compute the disturbance |*d*(*jω*)|.

Due to measurement noise, multiple measurements from the same disturbance environment can be obtained (possibly from different read–write heads and tracks on the HDD, as well different controllers) and bounds on the frequency response of the disturbance can be determined. Multiple data sets will yield a range of disturbance magnitudes at a given frequency. Although the goal of this disturbance modeling section is to bound the disturbance, it is undesirable for model uncertainty or outlier measurements to cause unnecessarily conservative bounds. Thus, within the operating frequency range, two bounding values of |*d*(*jω*)| are identified: an upper bound that captures the vast majority of the data and a “lower bound” that still captures most of the data. As an example, in the experimental results of Sec. 4, the upper and “lower” bounds are identified as the models that captures $99%$ and $90%$ of the total data points, respectively. In particular, two BIBO stable transfer functions $Wdup(s)$ and $Wdlo(s)$ are fit to the data so that $99%$ of the total data points lie below $|Wdup(j\omega )|$, (i.e., $|Wdup(j\omega )|>|d(j\omega )|99%$, and $90%$ of the total data points lie below $|Wdlo(j\omega )|$, i.e. $|Wdlo(j\omega )|>|d(j\omega )|90%$). These transfer functions are used as models of the disturbance. This approach of disturbance modeling yields a large enough range between the magnitude of the two bounds, while still providing useful bounds on the predicted stroke usage. Further discussion on the choice of suitable bounds is found in Sec. 3.3. The process outlined in this section is to be repeated for each disturbance environment of interest, yielding different transfer functions $Wdup(s)$ and $Wdlo(s)$ for each environment.

### 3.3 Data-Driven Calibration of the Disturbance Model.

The disturbance models $Wdup(s)$ and $Wdlo(s)$ developed in the previous section for each disturbance environment quantify the relative magnitude of the disturbance across a range of frequencies. Unfortunately, they do not necessarily capture the absolute magnitude of the disturbance signal due to unit conversions and normalizations used when recording data from the HDD. Thus, a multiplicative scaling factor *g* is considered to accurately model the transfer function $Gw\u2192upzt(s)$ as $gGw\u2192upzt(s)$, where $g\u2208R>0$. This scale factor is assumed to only depend on the data collection system and not on the disturbance environment or the controller, which means that *g* is constant across all the collected data.

The proposed calibration process proceeds by constructing the closed-loop transfer functions $Gw\u2192upztup(s)=Gpzt(s)SCL(s)Wdup(s)$ and $Gw\u2192upztlo(s)=Gpzt(s)SCL(s)Wdlo(s)$ for each combination of disturbance environment and controller within the data set. Additionally, the time history of *u*_{pzt} for each set of collected data is used to compute the actual 3*σ* value of PZT stroke usage during the experiments, denoted as 3*σ*(*u*_{pzt}). The goal of the calibration process is to determine the scaling factor *g* such that 3*σ*(*u*_{pzt}) lies exactly between the predicted upper and lower bounds on the 3*σ* value of stroke usage, given by $3g\Vert Gw\u2192upztup\Vert 2$ and $3g\Vert Gw\u2192upztlo\Vert 2$, respectively. Mathematically, this calibration process is described as minimizing the objective function |*R*(*g*) − 1|, where *R*(*g*) = |Δ_{up}(*g*)/Δ_{lo}(*g*)| is the ratio of the over-prediction by the upper bound to the under-prediction by the lower bound and the terms $\Delta up(g)=3g\Vert Gw\u2192upztup\Vert 2\u22123\sigma (upzt)$ and $\Delta lo(g)=3g\Vert Gw\u2192upztlo\Vert 2\u22123\sigma (upzt)$ quantify the over- and under-prediction by the upper and lower bounds, respectively. This optimization problem is solved for each data set through a line search on the scaling factor *g*.

The preceding calibration process results in multiple values of *g*, one for each data set used in the modeling and calibration process. Based on the assumption that *g* is a constant scaling factor that is independent of the disturbance environment and choice of controller, it is expected that the range of values of *g* obtained through this process is relatively small. If this is not the case, it is likely that further effort should be made to obtain a larger data set and/or improve the fit of the disturbance models $Wdup(s)$ and $Wdlo(s)$ (e.g., increase the order of the BIBO stable transfer function used to fit the frequency response data in Sec. 3.2).

### 3.4 PZT Stroke Usage Prediction.

The disturbance modeling and calibration process outlined in Secs. 3.2 and 3.3 will produce upper and lower disturbance models, $Wdup(s)$ and $Wdlo(s)$, for each disturbance environment of interest, as well as a range of values of scaling factors *g*. The closed-loop PZT stroke usage of a candidate controller within one of the modeled disturbance environments can then be predicted in the following fashion.

The upper and lower bounds on the transfer function from *w* to *u*_{pzt} are computed as $Gw\u2192upztup(s)=Gpzt(s)SCL(s)Wdup(s)$ and $Gw\u2192upztlo(s)=Gpzt(s)SCL(s)Wdlo(s)$, where $Gpzt(s)$ is the transfer function of the candidate PZT controller and *S*_{CL}(*s*) is computed with the plant model and the candidate PZT and VCM controllers. A choice for the scaling factor *g* is then made. A sensible choice for *g* is the average of the values obtained in the calibration stage, although any value within the range found in the calibration stage may be suitable. Predicted upper and lower bounds on the 3*σ* value of the PZT stroke usage are then computed using the $H2$ norm as $3g\Vert Gw\u2192upztup\Vert 2$ and $3g\Vert Gw\u2192upztlo\Vert 2$, respectively. In the case where experiments can be performed to assess the accuracy of the predicted PZT stroke usage, the ratio *R*(*g*) = |Δ_{up}(*g*)/Δ_{lo}(*g*)| can be used as a performance metric. If *R*(*g*) > 1, the prediction model is over-predicting and if *R*(*g*) < 1, the prediction model is under predicting. The closer *R*(*g*) is to one, the more accurately the prediction model captures the true 3*σ*(*u*_{pzt}) value between the upper and lower bounds.

## 4 Experimental Example

### 4.1 Data Collection.

Multiple sets of data are measured with a Seagate® HDD. Note that the actuator displacement *u*_{pzt} is measured as the output of an ADC in the unit of counts, as described in Sec. 3.1. Data are collected in track-following mode in a large cabinet setting that contains a number of adjacent HDDs. Vibrations from the adjacent HDDs and from the cooling fan inside the cabinet are used to create different disturbance conditions. A total of nine experimental data sets are collected, which corresponds to three controllers, referred to as $Gpzt1$, $Gpzt2$, and $Gpzt3$, as shown in Fig. 4, which are designed using a D–K synthesis methodology similar to the approach in Ref. [8] and three different disturbance conditions produced by combining disturbances from the adjacent drives in operation and the cooling fan at the speeds of 30%, 60%, and 90%. Each measured data set includes (1) the frequency response of the closed-loop sensitivity $SCL(j\omega )$, (2) a total of 15 sets of time series PES data, *y*_{pes}(*t*), (five different read–write heads and three different tracks), and (3) the PZT controller output data, *u*_{pzt}(*t*), for the same read–write heads and tracks.

### 4.2 Disturbance Modeling.

The frequency response of the disturbance is computed by sorting the six data sets associated with $Gpzt1$ and $Gpzt2$ into the three disturbance environments to be modeled. The frequency response of the measured sensitivity, $SCL(j\omega )$, and the frequency response of the measured PES, *y*_{pes}(*jω*), is used to obtain 15 values of |*d*(*jω*)| = |*y*_{pes}(*jω*)|/|*S*_{CL}(*jω*)|, one for each combination of the read–write head and track. The frequency responses found with the two controllers for the same disturbance environment are combined together, which results in 30 disturbance responses. Two BIBO stable transfer functions, $Wdup(s)$ and $Wdlo(s)$ are the fit to the computed frequency responses of the disturbances for each disturbance environment. In particular, fits of order 30 are chosen for $Wdup(s)$ and $Wdlo(s)$ to respectively capture approximately $99%$ and $90%$ of the disturbance data points over all frequencies. The fitted disturbance models for the fan speed 90% disturbance environment are shown in Fig. 5(a).

### 4.3 Calibration Process.

For the six data set associated with $Gpzt1$ and $Gpzt2$, the uncalibrated upper and lower prediction bounds on the standard deviation of the PZT stroke usage are computed using the $H2$ norm as $3\Vert Gw\u2192upztup\Vert 2$ and $3\Vert Gw\u2192upztlo\Vert 2$, where $Gw\u2192upztup(s)=Gpzt(s)SCL,fit(s)Wdup(s)$, $Gw\u2192upztlo(s)=Gpzt(s)SCL,fit(s)$$Wdlo(s)$, and $SCL,fit(s)$ is a BIBO stable transfer function that is fit to match the frequency response of the corresponding measured sensitivity. For each data set, the scaling parameter *g* is chosen so that the ratio *R*(*g*) ≈ 1, as described in Sec. 3.3, thus, ensuring that 3*σ*(*u*_{pzt}) falls exactly in between the upper and lower bounds, $3g\Vert Gw\u2192upztup\Vert 2$ and $3g\Vert Gw\u2192upztlo\Vert 2$. After repeating this process for all six data sets, the range of scaling parameters is found to be *g* ∈ [81.01, 94.15], with a mean of *g*_{avg} = 83.92. Calibration of *g* for the fan speed 90% disturbance environment and the $Gpzt1$ controller is shown in Fig. 5(b).

### 4.4 Evaluation of the Prediction Model.

To demonstrate the accuracy and practicality of the prediction model obtained in Secs. 4.2 and 4.3, the three data sets associated with $Gpzt3$ are used. The PZT stroke usage of $Gpzt3$ is predicted in the three modeled disturbance environments. Upper and lower bounds on the standard deviation of *u*_{pzt} are predicted as $gavg\Vert Gw\u2192upztup\Vert 2$ and $gavg\Vert Gw\u2192upztlo\Vert 2$, where $Gw\u2192upztup(s)=Gpzt3(s)SCL3(s)Wdup(s)$, $Gw\u2192upztlo(s)=Gpzt3(s)$$SCL3(s)Wdlo(s)$, $SCL3(s)=(1+L3(s))\u22121$, $L3(s)=Pvcm(s)Gvcm3(s)+$$Ppzt(s)Gpzt3(s)$, $Gvcm3$ is the VCM controller associated with the third PZT controller $Gpzt3$, and *g*_{avg} is the mean scaling factor obtained through calibration.

The performance of the prediction model for the controller $Gpzt3$ is shown in Fig. 6 at the three different disturbance conditions, where the upper and lower 3*σ* bounds obtained through the $H2$ norm of the prediction model are included alongside the actual 3*σ* value of *u*_{pzt}. It is apparent that the prediction model is able to capture the measured 3*σ*(*u*_{pzt}) within the upper and lower bounds with a slight over-prediction, as *R*(*g*) = Δ_{up}(*g*)/Δ_{lo}(*g*) > 1 in all three cases.

### 4.5 Discussion.

The evaluation of the prediction model in Sec. 4.4 demonstrates that for modeled disturbance environment, the proposed methodology is capable of predicting the PZT stroke usage within an upper and a lower bound. This highlights the practicality of this method, as the PZT stroke usage can be predicted prior to experimental implementation of the controller. Note that in the experimental results the difference between the upper and lower bounds on the stroke usage are rather large, especially in the 90% fan speed disturbance environment. This range can be tuned as desired, by adjusting the fit of the $Wdup$ and $Wdlo$ to be closer to one another. The disadvantage of using tighter bounds is less robustness to inaccuracies in the disturbance model, which increases the likelihood that the true PZT stroke usage is outside of the predicted bounds. Additional data sets for each disturbance environment can help reduce the effect of run-to-run variation in the data and allow for these bounds to be tightened with confidence.

## 5 Conclusion

This letter presented a strategy to model and predict the micro-actuator (PZT) stroke usage of a dual-stage HDD, which was shown to provide valuable information about a particular control design without requiring experimental testing on hardware. The proposed prediction method is independent of the controller synthesis process and thus can be used to evaluate the PZT stroke usage of any LTI control design. This has the potential to reduce experimentation time when designing and evaluating candidate controllers in practice. Future work on this topic will involve testing the proposed disturbance modeling method in conjunction with optimal control synthesis methods to enforce saturation avoidance at the controller design stage.

## Acknowledgment

Support for this work was provided by Seagate Technology through the University of Minnesota’s Center for Micro-magnetics and Information Technologies (MINT). The authors also thank Seagate’s Advanced Servo Dynamics group, and in particular Raye Sosseh and Bin Huang, for providing valuable insights and guidance.

## Conflict of Interest

There are no conflicts of interest.

## Data Availability Statement

The datasets generated and supporting the findings of this article are obtainable from the corresponding author upon reasonable request.

## References

*μ*-Analysis Tool