Efficient adaptive feedforward periodic disturbance compensation

Information

  • Patent Grant
  • 6684114
  • Patent Number
    6,684,114
  • Date Filed
    Friday, March 3, 2000
    25 years ago
  • Date Issued
    Tuesday, January 27, 2004
    21 years ago
Abstract
A system and method is given for minimizing periodic disturbances in electronic systems. Given the input-output characteristics of the system, the present method identifies and cancels the periodic disturbance. The periodic disturbance parameters are identified through the use of a residual generator. The output of the residual generator is fed into an identifier that estimates disturbance parameters. The compensation filter combines the output of the identifier with a set of pre-computed parameters to form a cancellation signal. This signal is then added to the input of the plant to cancel the periodic disturbance.
Description




FIELD OF THE INVENTION




The present invention relates to the field of control systems. In particular the present invention diskloses a system and method for minimizing periodic disturbances.




BACKGROUND OF THE INVENTION




Many controlled physical systems include rotating parts. Some examples include machine tools such as CNC lathes and routers as well as rotating data storage products for computers and consumer electronics. In particular, rotating storage devices include hard disk drives, CD players, CD-ROM drives, and DVD players. Accurate control over the position of the data read/write mechanism is critical to the operation of a rotating media storage product. For example, in a hard disk drive system data is stored in magnetic circular tracks on a media platter. Data is read and written by a magnetic head that floats over the circular tracks.




Unmeasured variables may affect the operation of a drive and can cause variations in performance from unit to unit, as well as within a unit during use of the drive. These variables may include temperature, spindle bearing asperity, disk flutter, induced non-repeatable run-out (NRRO), and variable repeatable run-out (RRO).




The rotating parts (disk platters and spindle-motor assemblies) in a rotating data storage device introduce periodic disturbances in the position of the read/write mechanism. In hard disk drives, for example, the track positions are recorded on each disk platter during a servo writing process. Ideally, the track positions are laid out in perfect concentric circles such that, while the disk is spinning, the head need not move since the data is located in a perfect circle relative to the head. However, small errors are made during the servo writing process that result in data tracks that are slightly non-circular. To a head position servo control system, this non-circularity appears as a periodic component in the error between the track position and the head position.




In the examples above and in many other cases the disturbance magnitude is a function of the angular position of the media platter under the read/write mechanism. Many rotating storage devices use sampled-data controllers with a fixed integer number of samples per full rotation of the storage media platter. The disturbances appear to such a sampled data system as signals that have a period that is an exact multiple of the sample time. The fundamental period of such signals is typically the number of samples per full rotation of the storage media platter. An important goal for a read/write mechanism position control system is to minimize the effects of these periodic disturbances.




Other systems suffer from the effects of periodic disturbances as well. Examples include electrical power delivery systems and communications systems that suffer from power line noise at harmonics of the AC power fundamental frequency.




All of these systems can benefit from a compensation scheme that minimizes the effects of periodic disturbances.

FIG. 1

illustrates a prior art method for canceling periodic disturbances. This prior art method utilizes “plug-in” compensation where a repetitive compensator is used to augment an existing nominal compensator.

FIG. 2

illustrates a prior art method for canceling periodic disturbances. This prior art method utilizes an adaptive feed forward cancellation scheme.




Both of the methods illustrated in

FIGS. 1 and 2

have significant drawbacks. They only take as an input the error signal computed from either the plant output or the difference between the plant output and a desired setpoint. As a result, they do not differentiate between periodic disturbances and signals that are created by the feedback control system. The system in

FIG. 1

is a feedback compensator and does not allow feed forward cancellation as does the system in FIG.


2


. However, the prior art system of

FIG. 2

only uses the output of their plant y(t) in its controller. Furthermore, the prior art system of

FIG. 2

fails to account for the input/output behavior of the plant.




The RRO compensation methods are particularly difficult for CD-ROM drives. CD players and DVD drives because the error caused by RRO changes every time a disk is inserted into a drive. Furthermore, the error caused by RRO in CD-ROMs, DVDs, and CDs, changes over time based upon the changing rotational velocity of the disk, thus complicating RRO compensation methods.




SUMMARY OF THE INVENTION




A system and method is given for minimizing periodic disturbances in electronic systems. Given the input-output characteristics of the electronic system, the present system identifies and cancels the periodic disturbance. The periodic disturbance parameters are identified through the use of a residual generator. The output of the residual generator is fed into an identifier that estimates disturbance parameters. The compensation filter combines the output of the identifier with a set of pre-computed parameters to form a cancellation signal. This signal is then added to the input of the plant to cancel the periodic disturbance.











Other features and advantages of the present invention will be apparent from the accompanying drawings and from the following detailed description.




BRIEF DESCRIPTION OF THE DRAWINGS




The objects, features and advantages of the present invention will be apparent to one skilled in the art in view of the following detailed description in which:





FIG. 1

illustrates a prior art “plug-in” repetitive compensation scheme.





FIG. 2

illustrates a prior art Adaptive Feed Forward Compensation Scheme.





FIG. 3

illustrates an embodiment of the present system.





FIG. 4

illustrates a representative Periodic Disturbance waveform.





FIG. 5

illustrates a spinning media system implementing one embodiment of a disturbance compensator.





FIG. 6

illustrates one embodiment of a v-signal generator.





FIG. 7

illustrates a first embodiment for signal sharing between periodic disturbance cancellation and model selection components.





FIG. 8

illustrates a second embodiment for signal sharing between periodic disturbance cancellation and model selection components.











DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT




A method and apparatus for Adaptive Feed-Forward Disturbance Cancellation is disklosed. In the following description, for purposes of explanation, specific nomenclature is set forth to provide a thorough understanding of the present techniques. However, it will be apparent to one skilled in the art that these specific details are not required in order to practice the present techniques. For example, the elements of the present techniques described may implement embodiments utilizing all hardware or any combination of hardware and software.




Disturbances associated with systems having rotating parts may be characterized as Repeatable-Run-Out (RRO) or Non-Repeatable-Run-Out (NRRO). RRO disturbances are periodic and phase-locked to the angular position of the rotating parts. By way of example in a hard disk drive, if a fixed point were marked on the disk, RRO would cause the magnetic head to be misaligned with the fixed point by the same amount on every rotation. In contrast, NRRO disturbances could be periodic in nature but not phase-locked to the rotation of the disk. Examples of NRRO could be a sudden impact or the vibrations caused by a cooling fan.




The present system, among other things, minimizes the effects of RRO on rotational systems. A system is given that can be modeled by one or more mathematical equations. The input-output characteristics of the model are typically known before the present system is applied to the rotational system. The periodic disturbance must be identified and cancelled on-line. The present system identifies and cancels the periodic disturbance.




The periodic disturbance parameters are identified through the use of a residual generator. The residual generator could be implemented as a Kalman filter having numerous realization structures. The output of the residual generator is fed into an identifier. The output of the identifier is an estimate of the disturbance parameters.




A compensation filter combines the output of the identifier with a set of pre-computed parameters to form a cancellation signal. This signal is then added to the input of the plant to cancel the periodic disturbance. The residual generator, identifier, and compensation filter are all diskrete-time systems that are updated at every sample k.




Some portions of the detailed descriptions that follow are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored. transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values. elements, symbols, characters, terms, numbers, or the like.




It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following diskussion, it is appreciated that throughout the description, diskussions utilizing terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.




The present system also relates to apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.




The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct more specialized apparatus to perform the required method steps. The required structure for a variety of these systems will appear from the description below. In addition, the present system is not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the system as described herein.




The control scheme described herein may be implemented with a wide variety of systems including acoustical, mechanical, and electrical systems. For example, the control scheme described herein may be used to provide control of periodic disturbances caused in a disk drive system as diskussed below.





FIG. 3

illustrates a system implementing one embodiment of a periodic disturbance compensator


301


designed to compensate for a periodic or quasi-periodic disturbance. It consists of three components.




1. A residual generator


300


that pre-processes plant input signal u


360


and plant output signal y


350


. The residual generator is designed to create a signal x


390


that contains only periodic disturbance and random noise components.




2. An identifier


310


is used to compute parameters on-line that characterize the periodic disturbance from the signal x


390


.




3. A compensation filter


320


uses the parameters computed by the identifier


310


to form a compensation signal s


380


that cancels the effect of the periodic disturbance on the output of the plant.




A model disturbance signal v


370


is injected into identifier


310


and compensation filter


320


by a v-signal generator


375


. When the present system is added to an existing servo control system


302


, the compensator


301


identifies the periodic disturbance parameters from the input-output behavior of the servo control system. Next, the compensator


301


injects sinusoids with frequencies at integer multiples of the periods of the periodic disturbance. As a result, the feedback properties of the servo control system


302


are unaffected at other frequencies. The compensator


301


is designed and can be directly analyzed in diskrete time, thereby avoiding the need to convert a continuous-time design into a diskrete-time one and re-analyze its properties.




Periodic Disturbance Compensator Component Design




In one embodiment, the plant


340


shown in

FIG. 3

is modeled with the following equation








y




k




=−a




1




y




k−1




−a




2




y




k−2




. . . −a




n




y




k−n




+b




1




u




k−1




+b




2




u




k−2




. . . +b




n




u




k−n




+c




1




v




k−1




+c




2




v




k−j




+e




k


  (1)






Here, signal u


360


is an input formed by the feedback controller


330


, signal y


350


is the output of the plant


340


, signal v


370


is a known sinusoid modeled by the equation v


k


=sin(k*2π/m) with a period of m samples, and signal e is Gaussian white noise with a known variance. For a physical system such as the system


302


shown in FIG.


3


. signals u


360


and y


350


are signals that can be measured. The signal e


k


in equation 1 above is not a separate signal in the physical system that can be measured, but serves to model random disturbances and measurement noise that are present in the system


302


. The signal v


370


is also not present as a signal that can be measured. Rather, the signal v


370


can be viewed as part of the model expressed by equation 1. The parameters c


1


and c


2


of equation 1 are such that the effect of the signal v


370


on the output y


350


matches the behavior of the system


302


. The delay constant j seen in equation (1), can be chosen to be any value such that v


k−1


and V


k−j


are independent. For example, if m is even, j≠1=im/2 for all integers i. Choosing j as j≅m/4 results in the signals v


k−1


and v


k−j


being nearly orthogonal.




The model in equation 1 models one sinusoidal disturbance, signal v


370


. A periodic disturbance may exist that is not sinusoidal, as shown in FIG.


4


. In this case, the non-sinusoidal signal may be approximated via Fourier series as the sum of several sinusoids with periods that are harmonics of the fundamental period. In this case the model in equation 1 is generalized by including several sinusoids


1


v . . .


p


v with frequencies that are multiples of the fundamental frequency. Each signal has its own pall of parameters


i


c


1


and


i


c


2


and delay


i


j associated with


i


c


2


. The single sinusoid case will be described below for simplicity. When necessary, the generalization to multiple sinusoids will be described also.




The model described by equation (1) may be obtained from the methods disklosed in co-pending U.S. patent application entitled “ADAPTION TO UNMEASURED VARIABLES,” application Ser. No. 09/345,166, filed on Jun. 30, 1999, assigned to the assignee of the application herein, and incorporated herein by reference.




Compensation Filter Design




The compensation filter is designed to filter the model disturbance signal v


370


to create a signal s


380


. As described above, the model disturbance signal v


370


is not directly measurable by the servo control system


302


. The model disturbance signal v


370


is created by a v-generator


375


. The signal s


380


is injected into the plant input by adding it to an existing controller for the plant as shown in FIG.


3


. In the context of FIG.


3


and equation 1, the compensation filter is designed to compute a signal s


380


and add it to signal u


360


to cancel the effect of model disturbance signal v


370


on the output signal y


350


given known parameter vectors [a


1


. . . a


n


], [b


1


. . . b


n


], and [c


1


,c


2


]. By way of example, the compensation filter is described for the case where the delay j=2. A person with ordinary skill in the art can modify the filter for other values of the delay j.




A signal s


380


is described such that








b




1




s




k−1




+b




2




s




k−2




. . . +b




n




s




k−n




=−c




1




v




k−1




−c




2




v




k−2


  (2)






By defining


s


u


k


=u


k


+s


k


, and substituting


s


u


k


into equation (1), equation (3) results:













y
k

=







-

a
1




y

k
-
1



-


a
2



y

k
-
2













-


a
n



y

k
-
n



+














b
1
s



u

k
-
1



+


b
2
s



u

k
-
2









+


b
n
s



u

k
-
n



+














c
1



v

k
-
1



+


c
2



v

k
-
2



+

e
k








=







-

a
1




y

k
-
1



-


a
2



y

k
-
2













-


a
n



y

k
-
n



+














b
1



u

k
-
1



+


b
2



u

k
-
2









+


b
n



u

k
-
n



+

e
k









(
3
)













thereby removing the effect of signal v


k




370


on the output signal y


k




350


. Implementing equation 2 as a filter to compute signal s


380


from signal v


370


is not desirable for several reasons. First, the filter defined by equation 2 might be unstable if one or more of the roots of the polynomial b


1


z


−1


+ . . . +b


n


z


−n


are larger than 1. Second, even if it is stable, the filter may have internal modes that are poorly damped or decay slowly. Third, the order of the filter depends on the order of the model represented by equation 1 and may be quite high in some cases.




Since signal v


370


is a sinusoid, the signal s


380


is also a sinusoid that satisfies equation (2). Let V be the Z-transform of signal v


370


and S be the Z-transform of signal s


380


. Then









S
=




-

c
1


-


c
2



z

-
1






b
1

+


b
2



z

-
1









+


b
n



z

n
-
1






V





(
4
)













If the definitions of α


1


, and α


2


are as follows











α
1

=


(


-
1



b
1

+


b
2



z

-
1









+


b
n



z

n
-
1





)





z
=



j





ω









and









α
2

=


(


-

z

-
1





b
1

+


b
2



z

-
1









+


b
n



z

n
-
1





)





z
=



j





ω










(
5
)













where ω=2π/m is the frequency of signal v


370


and signal s


380


, then








S


=(α


1




c




1





2




c




2


)


V


  (6)






By using the inverse Z-transform to convert back to the time domain, the desired signal s


380


is obtained. Computing signal s


380


from signal v


370


using these expressions requires transforms and complex calculations.




To compute s from v using real arithmetic, a pair of real parameters f


1


and f


2


are defined such that




 α


1


=(


f




1




+f




2




z




−1


)|


z=e











and α


2


=(


f




1




z




−1




+f




2




z




−2


)|


z=e











  (7)




By substituting equation 7 back into equation 6,








S


=(


f




1




c




1


+(


f




2




c




1




+f




1




c




2


)


z




−1




+f




2




c




2




z




−2


)


V


  (8)






Equation 8 can be realized in the time domain as a 3-tap FIR filter with real coefficients as follows:








s




k




=f




1




c




1




v




k


+(


f




2




c




1




+f




1




c




2


)


v




k−1




+f




2




c




2




v




k−2


.  (9)






In one embodiment, the signal s can be computed from a 2-tap FIR filter. The signal s may be formed by any means that creates a sinusoid with the desired phase and magnitude. By defining a pair of real parameters γ


1


and γ


2


such that










γ
2

=




sin


(


-
2


ω

)



sin


(

-
ω

)








and






γ
1


=


cos


(


-
2


ω

)


-


γ
2



cos


(

-
ω

)









(
10
)













it can be shown via manipulation of basic trigonometric identities that








v




k−2





1




v




k





2




v




k−1


.  (11)






By substituting equation 11 into equation 9,








s




k


=(


f




1




c




1




+f




2




c




2


γ


1


)


v




k


+(


f




2




c




1




+f




1




c




2




+f




2




c




2


γ


2


)


v




k−1


.  (12)






This expression can be written using matrix notation as:










s
k

=




[


v
k

,

v

k
-
1



]



[




f
1





γ
1



f
2







f
2





f
1

+


γ
2



f
2






]




[




c
1






c
2




]


=


[


v
k

,

v

k
-
1



]




M


[




c
1






c
2




]


.







(
13
)













The matrix M of equation 13 depends only on [a


1


, . . . a


n


], [b


1


. . . b


n


], and the sinusoid frequency ω. As a result, it may be computed ahead of time. When the parameters c


1


and c


2


become available, the coefficients of the FIR filter described by equation 12 may be computed with the single real matrix multiply










M


[




c
1






c
2




]


.




(
14
)













This method for forming the signal s


380


is extremely efficient because it uses real arithmetic, computes the signal s


380


using only a 2-tap FIR filter, and computes the filter coefficients from the [c


1


,c


2


] parameters using a single real 2×2 matrix multiply.




If the model of equation 1 is generalized so that several sinusoids


1


v . . .


p


v with frequencies


1


ω . . .


p


ω are present and each has its own pair of parameters


i


c


1


and


i


c


2


, an individual cancellation signal


i


s can be computed for each


i


v. The signals


1


s . . .


p


s can all be added to the input u


360


to remove the p sinusoids from the output y


350


.




Identifier and Residual Generator Design




If all of the parameter vectors [a


1


, . . . a


n


], [b


1


. . . b


n


], and [c


1


,c


2


] are known, the compensation filter is all that is necessary to compensate for periodic disturbances. However, parameter vectors [c


1


,c


2


] are rarely known. By way of example, the case where vectors [a


1


. . . a


n


], [b


1


. . . b


n


] are known, [c


1


,c


2


] are not and input and output data for the system described by the model of equation 1 are given, the [c


1


,c


2


] parameters should be identifiable. The parameters are identified using only real arithmetic, and are efficient to implement in real time.




In one embodiment consistent with the Compensation Filter Design description above, the residual generator


300


and Identifier


310


are described for a single sinusoid signal v


370


and the delay j=2. One skilled in the art may extend the design to multiple sinusoids and other values of j.




The residual generator


300


contains data that models the plant


340


. The residual generator


300


is an estimator that takes as inputs signals y


350


, and u


360


, and with the modeling data of the plant removes the Input/Output behavior of the plant, leaving only the estimated disturbances. The disturbances are modeled as signal x


390


, which is the output of the residual generator


300


.




A signal x


390


is computed from the signals u


360


and y


350


via the expression








x




k




=y




k




+a




1




y




k−1




+a




2




y




k−2




. . . +a




n




y




k−n




−b




1




u




k−1




−b




2




u




k−2




. . . −b




n




u




k−n


  (15)






Equation 15 defines the residual generator


300


. The residual generator (


300


) is an FIR filter with two inputs, signal u


360


and signal y


350


, and one output, signal v


390


. Hence, it is stable and may be implemented with real arithmetic.




The identifier


310


takes the signal x


390


from the residual generator


300


and creates parameters for the compensation signal s


380


. These parameters are provided to the compensation filter


320


, which combines them with model disturbance signal v


370


and cancels the disturbance by injecting compensation signal s


380


into the plant


340


. Thus, in one embodiment the Identifier


310


can be modeled as follows:




By substituting equation 15 into equation 1 equation 16 is obtained:








x




k




=c




1




v




k−1




+c




2




v




k−2




+e




k


  (16)






By defining







r=[c




1




,c




2


]′ and


g




k




=[v




k−1




,v




k−2


]  (17)




where, [c


1


,c


2


]′ signifies the transpose of [c


1


,c


2


], equation 16 becomes








x




k




=g




k




r+e




k


  (18)






The estimate of the parameter vector r at time k is defined to be {circumflex over (r)}


k


. The identifier


310


uses the signals x


390


and v


370


to compute {circumflex over (r)} such that {circumflex over (r)} is a good estimate of r. In one embodiment, the Least-Mean-Square (LMS) adaptive identification law is








{circumflex over (r)}




k+1




={circumflex over (r)}




k




+εg′




k


(


x




k




−g




k




{circumflex over (r)}




k


)  (19)






Here ε is an adjustable adaptation gain. If several signals


1


v . . .


p


v are present, equation 16 may be expressed as








x




k


=


1




c




1




1




v




k−1


+


1




c




2




1




v




k−2


+ . . . +


p




c




1




p




v




k−1


+


p




c




2




p




v




k−2




+e




k


  (20)






The definitions in equation 17 then become








r=




1




c




1


,


1




c




2


, . . . ,


p




c




1


,


p




c




2


and


g




k


=[


1




v




k−1


,


1




v




k−2


, . . . ,


p




v




k−1


,


p




v




k−2


]  (2I )






By substituting equation 21 into equation 20, the expression in equation 18 results and the adaptation law represented by equation 19 still applies. Modification for different delay values associated with


i


v is similarly direct. In addition, a separate


i


ε can be set for each pair of parameters being identified.




V-signal Generator and Variable Rotation Rate Systems





FIG. 5

shows a spinning media system


500


implementing one embodiment of the disturbance compensator


500


described above. The disturbance compensator is coupled to a controller


520


. The controller


520


controls the reading head


530


. The reading head


530


, however, could be any media reading device such as a laser or optical pick-up (OPU) for compact disk (CD), CD-ROM and digital video disk (DVD) systems, or a magnetic head for hard disk drives or other magnetic storage media. The head


530


reads data at a point on the media platter


540


having radial position r


550


and angular position θ


560


. In addition, media platter


540


spins at an angular velocity V


θ




570


. In hard disk drive systems as diskussed above, V


θ




570


is fixed. However, in systems such as CDs, CD-ROMs and DVDs, V


θ


is variable. In such devices, the frequency of rotation slows down to maintain a constant linear bit rate as an optical pick-up (OPU) follows a spiral track from the inside of the disk to the outside of the disk. Hence, the frequencies at which RRO occur vary depending upon the position of the OPU over the disk. However, the shifting of the frequencies over the radius of the disk is known, allowing adaptive RRO compensation to be applied. Disturbance compensator


510


includes a v-signal generator that compensates for a variable V


θ


as shown in FIG.


6


.





FIG. 6

shows one embodiment of a v-signal generator


600


that outputs a model disturbance signal v


640


which would be injected into a disturbance compensator such as the one shown in FIG.


3


. Model disturbance signal v


640


, as described in detail above, represents a sinusoid having a frequency related to the angular velocity V


θ




620


of a spinning disk, such as a CD, CD-ROM or DVD system or magnetic media such as a hard disk.




The v-signal generator 600 takes as inputs radial position r


630


, angular position θ


610


, and angular velocity V


θ




620


. The model disturbance signal v


640


may be computed from any of the inputs or any combination thereof. For example, in a fixed rotation rate system, the angular velocity V


θ




620


and angular position θ


610


are sufficient to generate model disturbance signal v


640


. In another embodiment, in a variable rotation rate system, the radial position r


630


and angular position θ


610


are sufficient to generate model disturbance signal v


640


.




In one embodiment, instead of generating sinusoids for model disturbance signal v,


640


from a look-up table, the sinusoids may be generated by oscillators. The parameters for the oscillators that control their frequencies may be obtained from a look-up table or computed from polynomial functions related to the radial position r


630


of the OPU. If tables are used to update the oscillator's values, then the disk surface may be divided into radial zones. Within these zones, constant fixed parameters or interpolated values may be used. Furthermore, the M matrix of equations 13 and 14 above which depend upon the frequency response of the plant may be obtained at run time. The values of the parameters of the M matrix may be read from tables or generated from polynomial or other functions. Thus, adaptive feed forward RRO compensation described at length above may be applied to systems with either fixed or variable rotation rates.




Sharing Signals and Components With Controller Selectors




The use of signals to select the best controller from a number of candidates is described in the patent application “Adaptation to Unmeasured Variables” referenced above. This description shows how signals used by controller selectors can be generated by modifications of the periodic disturbance compensator described here.




In one embodiment the output of the residual generator


300


expressed in equation 16 is used in the LMS identification law expressed in equation 19. A key expression of equation 19 is (x


k


−g


k


{circumflex over (r)}


k


). By defining ê


k


(x


k


−g


k


{circumflex over (r)}


k


), the signal e


k


is estimated. If {circumflex over (r)}


k


is a good estimate for the true parameter vector then






(


x




k




−g




k




{circumflex over (r)}




k


)≡


ê




k




≅e




k


  (22)






The signal ê


k


provides a measure for how well the model defined by the parameter vectors [a


1


. . . a


n


] and [b


1


. . . b


n


] describes the input-output behavior of the actual system that is modeled with equation 1. This is precisely the kind of signal used in the controller selector architecture described in the patent application, “Adaptation to Unmeasured Variables,” referenced above.




Two possible embodiments for generating error signals from several candidate model equations are described here. The first embodiment is shown in FIG.


7


. In this embodiment, a residual generator


720


and identifier


710


are implemented for each candidate model. This architecture is applicable for candidate models that may be very different in character. For each candidate model i, a complete residual generator


720


and c parameter identifier


710


are operated. Each residual generator


720


receives signal u


740


, which is an input to the plant


770


. Signal v


750


is an input to the controller


780


. The output of the plant


770


and the controller


780


are summed with the actual error signal e


760


and provided to the residual generators


720


. Each error signal


i


e


730


is a byproduct of the residual generating


720


and identification


710


architecture. The structure for the first two candidate models is shown in the figure.




Referring to

FIG. 8

, the second proposed embodiment for signal sharing between periodic disturbance cancellation and model selection components uses only one c parameter identifier


850


. Its output is used by each estimator to form its error signal


i


e. Each residual generator


820


receives signal u


840


, which is an input to the plant


880


. Signal v


850


is an input to the controller


890


. The output of the plant


880


and the controller


890


are summed with the actual error signal e


860


and provided to the residual generators


820


. The structure for the first two candidate models is shown in FIG.


8


.




If the input-output transfer functions for all of the candidate models have approximately the same complex values when evaluated at periodic disturbance frequencies ω, then the disturbance parameters identified by each identifier


850


will all be approximately the same. In this case, the output g


k


{circumflex over (r)}k


870


of each identifier


850


is approximately the same, and only one identifier


850


is implemented. An architecture that generates several error signals using only one identifier


850


is shown in FIG.


8


.




Multi-Input Multi-Output Systems




The embodiments described above can easily be extended for multi-input multi-output (MIMO) systems. In Equation 1, each u


k


and y


k


become vectors and the parameters a


i


, b


i


, and c


i


all become matrices. The same architecture still applies and the algorithms described here can be directly extended to accommodate such MIMO systems.




The adaptation method expressed by equation 19 is just one of a number of different methods that may be applied to identify the c


i


parameters on-line. These include projection algorithms, gradient algorithms, and recursive least squares algorithms as well as others.




The method described to form the cancellation signal s


k




380


from the c


i


parameters is a particularly efficient way to do so. It is not the only way, however. Any method that generates the sinusoidal cancellation signal s


k


from the c


i


parameters can be used to successfully solve the problem.




The examples given for the generation of error signals for use by controller selection schemes remain relevant if any of the extensions and generalizations described above are applied to solve a periodic disturbance cancellation problem.




The foregoing has described an Adaptive Feed-Forward Compensation Scheme. It is contemplated that changes and modifications may be made by one of ordinary skill in the art, to the materials and arrangements of elements of the present system without departing from the scope of the system.



Claims
  • 1. A method of minimizing periodic disturbances in a plant having an input and output signal, said method comprising:receiving the input and output signal of the plant by a residual generator; providing a disturbance signal in the residual generator; receiving the disturbance signal by an identifier; and providing parameters describing the disturbance signal in the identifier.
  • 2. The method as claimed in claim 1, said method further comprising:receiving the parameters by a compensation filter; providing a compensation signal in the compensation filter; and adding the compensation signal to the plant input signal.
  • 3. The method as claimed in claim 2, said method further comprising:outputting a model disturbance signal from a signal generator; and receiving the model disturbance signal in the identifier, compensation filter, and plant.
  • 4. The method as claimed in claim 3, wherein generating a model disturbance signal further comprises providing one or more inputs to the signal generator.
  • 5. The method as claimed in claim 4, wherein the input is the angular velocity of a disk rotated by the plant.
  • 6. The method as claimed in claim 4, wherein the input is the angular position of a head on a disk rotated by the plant.
  • 7. The method as claimed in claim 4, wherein the input is the radial position of a head on a disk rotated by the plant.
  • 8. The method as claimed in claim 1, said method further comprising receiving the parameters by one or more compensation filters.
  • 9. The method as claimed in claim 1, said method further comprising receiving the parameters by one or more model selection components.
  • 10. The method as claimed in claim 1 wherein the filter comprises data modeling the plant.
  • 11. A system for minimizing periodic disturbances in an electronic system, said system comprising:a residual generator comprising a first input and second input; an identifier electronically coupled to the residual generator and configured to accept a model disturbance signal; and a compensation filter electronically coupled to the identifier and configured to accept a model disturbance signal.
  • 12. The system as claimed in claim 11 wherein the first filter input is electronically coupled to a plant input.
  • 13. The system as claimed in claim 12 wherein the compensation filter generates a compensation signal electronically coupled to the plant input.
  • 14. The system as claimed in claim 11 wherein the second filter input is electronically coupled to a plant output.
  • 15. The system as claimed in claim 11 wherein the identifier further comprises plant modeling data.
  • 16. The system as claimed in claim 11 wherein the filter provides a disturbance signal.
  • 17. The system as claimed in claim 11 wherein the identifier provides parameters for the compensation filter.
  • 18. The system as claimed in claim 11 further comprising:a plant having a first and second input and an output; and a controller having an input and output wherein the controller input is electronically coupled to the plant output and the controller output is electronically coupled to the first plant input.
  • 19. The system as claimed in claim 18 further comprising a signal generator having one or more inputs, wherein the signal generator provides the model disturbance signal to the identifier, the second plant input, and the compensation filter.
  • 20. The system as claimed in claim 19, wherein one signal generator input is the angular velocity of a disk rotated by the plant.
  • 21. The system as claimed in claim 19, wherein one signal generator input is the angular position of a head on a disk rotated by the plant.
  • 22. The system as claimed in claim 19, wherein the input is the radial position of a head on a disk rotated by the plant.
  • 23. The system as claimed in claim 11 wherein the parameters are provided to one or more compensation filters.
  • 24. The system as claimed in claim 11 wherein the parameters are provided to one or more model selection components.
  • 25. A computer-readable medium having stored thereon a plurality of instructions, said plurality of instructions when executed by a computer, cause said computer to perform the method of:receiving an input signal and an output signal of a plant by a residual generator; providing a disturbance signal in the residual generator; receiving the disturbance signal by an identifier; and providing parameters describing the disturbance signal in the identifier.
  • 26. The computer-readable medium of claim 25 having stored thereon additional instructions, said additional instructions when executed by a computer, cause said computer to further perform the method of:receiving the parameters by a compensation filter; providing a compensation signal in the compensation filter; and adding the compensation signal to the plant input signal.
  • 27. The computer-readable medium of claim 26 having stored thereon additional instructions, said additional instructions when executed by a computer, cause said computer to further perform the method of:outputting a model disturbance signal from a signal generator; and receiving the model disturbance signal in the identifier, compensation filter, and plant.
  • 28. The computer-readable medium of claim 27 having stored thereon additional instructions, said additional instructions when executed by a computer, cause said computer to further perform the method of providing one or more inputs to the signal generator.
  • 29. The computer-readable medium of claim 28 having stored thereon additional instructions, said additional instructions when executed by a computer, cause said computer to further perform the method of inputting into the signal generator, the angular velocity of a disk rotated by the plant.
  • 30. The computer-readable medium of claim 28 having stored thereon additional instructions, said additional instructions when executed by a computer, cause said computer to further perform the method of inputting into the signal generator, the angular position of a head on a disk rotated by the plant.
  • 31. The computer-readable medium of claim 28 having stored thereon additional instructions, said additional instructions when executed by a computer, cause said computer to further perform the method of inputting into the signal generator, the radial position of a head on a disk rotated by the plant.
  • 32. The computer-readable medium of claim 25 having stored thereon additional instructions, said additional instructions when executed by a computer, cause said computer to further perform the method of receiving the parameters by one or more compensation filters.
  • 33. The computer-readable medium of claim 25 having stored thereon additional instructions, said additional instructions when executed by a computer, cause said computer to further perform the method of receiving the parameters by one or more model selection components.
  • 34. The computer-readable medium of claim 25 having stored thereon additional instructions, said additional instructions when executed by a computer, cause said computer to further perform the method of providing a model of the plant in the filter.
US Referenced Citations (15)
Number Name Date Kind
4714988 Hiroi et al. Dec 1987 A
5233586 Morisada Aug 1993 A
5347447 Kiji et al. Sep 1994 A
5402400 Hamada et al. Mar 1995 A
5608586 Sri-Jayantha et al. Mar 1997 A
5729514 Horigome et al. Mar 1998 A
5757641 Minto May 1998 A
5784272 Schootstra et al. Jul 1998 A
5995316 Stich Nov 1999 A
6208949 Eatwell Mar 2001 B1
6278898 Shah Aug 2001 B1
6347017 Carlson Feb 2002 B1
6404581 Shah Jun 2002 B1
6417983 Yatsu Jul 2002 B1
6459663 Hayami Oct 2002 B1
Non-Patent Literature Citations (4)
Entry
Abdelillah Youssouf and Michel Kinnaert. “Observer Based Residual Generator for Singular Systems.” Proceedings of the 35th Conference of Decision and Control, Kobe, Japan. Dec. 1996.*
Youbin Peng, Abdelillah Youssouf, Philippe Arte, and Michel Kinnaert. “A Complete Procedure for Residual Generation and Evaluation with Application to a Heat Exchanger.” IEEE Transactions on Control Systems TEchnology, Vol 5, No 6. Nov. 1997.*
Alexei H. Sacks, Marc Bodson & William Messner, “Advanced Methods For Repeatable Runout Compensation”, Data Storage Systems Center, Carnegic Mellon University, Pittsburgh, PA, 15213--3890, USA.
Carl Kempf, William Messner, Masayoshi Tomizuka, & Roberto Horowitz, “Comparison Of Four Discrete-Time Repetitive Control Algorithms”, pp. 48-54, Dec. 1993.