US20010033454A1 - Rotational acceleration correction in a disc drive - Google Patents
Rotational acceleration correction in a disc drive Download PDFInfo
- Publication number
- US20010033454A1 US20010033454A1 US09/770,422 US77042201A US2001033454A1 US 20010033454 A1 US20010033454 A1 US 20010033454A1 US 77042201 A US77042201 A US 77042201A US 2001033454 A1 US2001033454 A1 US 2001033454A1
- Authority
- US
- United States
- Prior art keywords
- controller
- disc drive
- gains
- gain
- limit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000001133 acceleration Effects 0.000 title claims abstract description 47
- 238000012937 correction Methods 0.000 title claims description 31
- 238000000034 method Methods 0.000 claims description 44
- 230000008859 change Effects 0.000 claims description 6
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 230000003750 conditioning effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 33
- 238000004364 calculation method Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 15
- 230000001052 transient effect Effects 0.000 description 8
- 230000035939 shock Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000000696 magnetic material Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/48—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
- G11B5/54—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head into or out of its operative position or across tracks
- G11B5/55—Track change, selection or acquisition by displacement of the head
- G11B5/5521—Track change, selection or acquisition by displacement of the head across disk tracks
- G11B5/5582—Track change, selection or acquisition by displacement of the head across disk tracks system adaptation for working during or after external perturbation, e.g. in the presence of a mechanical oscillation caused by a shock
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B21/00—Head arrangements not specific to the method of recording or reproducing
- G11B21/02—Driving or moving of heads
- G11B21/10—Track finding or aligning by moving the head ; Provisions for maintaining alignment of the head relative to the track during transducing operation, i.e. track following
- G11B21/106—Track finding or aligning by moving the head ; Provisions for maintaining alignment of the head relative to the track during transducing operation, i.e. track following on disks
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/48—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
- G11B5/58—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following
- G11B5/596—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following for track following on disks
- G11B5/59627—Aligning for runout, eccentricity or offset compensation
Definitions
- the invention relates to disc drive storage systems using accelerometers.
- the invention relates to correction for rotational acceleration in a disc drive storage system.
- Disc drives have problems when rotational shock or vibration forces are applied.
- the rotational shock can move a read/write head away from the center of the desired track on a disc. This can cause either an error or a delay in transferring data.
- the use of an accelerometer for correction reduces problems encountered with rotational vibration.
- a disc drive includes a shock evaluator or sensing circuit with resettable threshold shock values to account for changes in operating conditions.
- a disc drive includes an acceleration responsive sensor that is sampled at a different sampling rate than the position error signal.
- Disc drives particularly those used in battery-powered portable computers, have significant electrical power constraints that preclude solving these problems using larger or faster controllers that draw excessive amounts of power.
- a method and an apparatus are needed, within the power constraints of a disc drive, to correct for rotational vibration while avoiding unduly delaying performance of servo control calculations.
- a method and apparatus are also needed that avoid overcorrecting for transient rotational events.
- the circuit includes a servo controller that controls a positioning motor for the head as a function of servo data from the head.
- the circuit also includes a rotational vibration (RV) controller that also controls the positioning motor for the head as a function of an output of an accelerometer and multiple sets of adjustable gains “g i ” in the rotational vibration controller.
- RV rotational vibration
- the accelerometer output indicates vibration and is coupled to the RV controller.
- the accelerometer output is compared to an acceleration threshold stored in the controller. If the acceleration is greater than the threshold, then a conditional branch is made to provide rotational vibrational correction to the positioning motor.
- the controller updates one set of the adjustable controller gains “g i ” within a computational time limit after a first execution of servo controller code.
- the controller preferably updates a second set of the adjustable controller gains “gi” within the computational time limit after a second execution of servo controller code.
- FIG. 1 illustrates an embodiment of a disc drive including a processor adapted to perform rotational acceleration correction
- FIG. 2 illustrates a block diagram of an embodiment of a disc drive including a processor adapted to perform rotational acceleration correction
- FIG. 3 illustrates a flow chart of performing rotational acceleration correction in a processor
- FIG. 4 illustrates a flow chart of performing rotational acceleration correction including a gain step limit in a processor
- FIG. 5 illustrates exemplary timing of gain corrections interleaved with servo calculations in a processor.
- an embodiment of a disc drive 100 includes a processor 140 that performs rotational acceleration correction as a function of an accelerometer output 156 from an accelerometer 157 .
- Disc drive 100 includes a disc pack 126 having storage surfaces 106 that are typically layers of magnetic material.
- the disc pack 126 includes a stack of multiple discs.
- a read/write head assembly 112 includes a read/write transducer 110 for each stacked disc.
- Disc pack 126 is spun or rotated as shown by arrow 107 to allow read/write head assembly 112 to access different rotational locations for data on the storage surfaces 106 on the disc pack 126 .
- Read/write head assembly 112 is actuated to move radially, relative to the disc pack 126 , as shown by arrow 122 to access different radial locations for data on the storage surfaces 106 of disc pack 126 .
- the actuation of read/write head assembly 112 is provided by a voice coil motor 118 .
- Voice coil motor 118 includes a rotor 116 that pivots on axle 120 and an arm 114 that actuates the read/write head assembly 112 .
- Accelerometer 157 is preferably mounted in disc drive 100 . Accelerometer 157 is closely mechanically coupled to the disc drive 100 so that it experiences substantially the same acceleration as the disc drive 100 . Alternatively, accelerometer 157 can be mounted external to the disc drive 100 , provided that the close mechanical coupling is maintained. Accelerometer 157 is oriented such that accelerometer 157 experiences rotational acceleration that is similar to the rotational acceleration experienced by disc drive 100 due to rotational acceleration of the disc drive 100 . Accelerometer 157 provides acceleration data that is used by a circuit at location 130 in controlling the position of read/write transducer 110 .
- a portion 132 of the circuit at location 130 that controls the rotational actuation of the read/write head assembly 112 is broken out and illustrated schematically on the right side of FIG. 1.
- One or more of the read/write transducers 110 provide data indicating a sensed actuator position 2 (track) on line 134 to a demodulator 136 .
- Demodulator 136 demodulates the sensed actuator position 2 , putting the position data in a digital form that is coupled along line 138 to processor 140 .
- Processor 140 includes RAM 142 and ROM 144 and generates a signal on line 146 for controlling the voice coil motor 118 .
- the signal on line 146 is amplified by power amplifier 148 .
- Power amplifier 148 provides an output current I that couples along line 150 to the voice coil motor 118 and controls the rotational or mechanical position 2 M of read/write head assembly 112 .
- the current I includes a correction current as explained in more detail below in connection with the example illustrated in FIG. 2.
- Processor 140 includes a setpoint input 152 that receives reference data, typically from a CPU of an associated personal computer, indicating a desired actuator position 2 d .
- ROM 144 stores instructions for a voice coil motor controller process or algorithm that controls the read/write head position 2 M so that data can be read or written on the desired (setpoint) track on the storage surfaces 106 of disc pack 126 .
- the processor 140 includes instructions stored in ROM 144 for a process or algorithm that provides acceleration correction for the read/write head assembly 112 using the accelerometer 157 .
- the processor 140 provides an output on line 146 that is corrected for the effects of rotational acceleration sensed by the accelerometer 157 .
- the rotational acceleration correction is described in more detail below in connection with examples illustrated in FIGS. 2 - 5 .
- the function of processor 140 under normal or natural operating conditions is to provide closed loop “servo” control of the positioning of the voice coil motor 118 so that data on the disc pack 126 can be read or written.
- the processor 140 can also perform a servo filtered-X algorithm for rotational acceleration corrections when needed without interrupting the normal servo functions for excessively long time intervals.
- the filtered X algorithm calibrates a set of gains based on the amplitude and phase relationship between the acceleration and the position error signal (PES) experienced by the servo system.
- the rotational acceleration correction can be performed automatically when the levels of acceleration and/or a position error signal (PES) are above thresholds where such correction is indicated.
- portion 132 of the disc drive controller can be implemented as a single integrated circuit or it can be implemented in several integrated circuits or include discrete circuit components or software in any combination, depending on the application.
- Portion 132 of the disc drive controller can transmit and receive data for the user on line 158 , or data for the user can be handled by a different portion of the disc drive circuitry, depending on the needs of the application.
- FIG. 2 illustrates a first embodiment of a disc drive controller 170 using an accelerometer 172 to provide rotational vibration feedforward (RVFF) control.
- RVFF rotational vibration feedforward
- This RVFF control corrects for vibration disturbances of the position of a read/write head 176 on a storage disc 177 .
- the accelerometer 172 is mechanically coupled to the disc drive and experiences substantially the same vibrational disturbances that are experienced by read/write head 176 and positioning motor 174 .
- Controller 170 includes a servo controller 190 that provides a current I 1 to summing junction 193 .
- Controller 170 also includes a rotational vibration feedforward (RVFF) controller 191 that provides a current 12 to summing junction 193 .
- Summing junction 193 provides a current I 1 +I 2 along line 192 to a positioning motor 174 which positions the read/write head 176 on the surface of storage disc 177 .
- the read/write head 176 senses its position or track on the magnetic storage disc 177 .
- Read/write head 176 electrically couples along line 179 to a demodulator circuit 178 .
- Demodulator circuit 178 demodulates the sensed position and provides a demodulated output indicating a sensed read/write head position ⁇ on line 180 .
- Demodulator circuit 178 also provides data read from the disc 177 along line 181 to a computer system connected to the disc drive.
- the sensed read/write head position ⁇ on line 180 is coupled to a summing junction 182 .
- the summing junction 182 also receives a signal indicating a desired head position ⁇ d on line 184 from a computer system connected to the disc drive.
- the summing junction 182 generates a position error signal (PES) 186 that represents the algebraic difference ( ⁇ d ⁇ ).
- PES position error signal
- the servo controller 190 , the read/write head 176 , and the positioning motor 174 together comprise a servo system, which is a closed-loop control system that controls the position of the read/write head 176 .
- the rotational vibration (RV) controller 191 has multiple sets 200 , 202 of adjustable controller gains “g i ”, i.e. G 1 , G 2 . . . GN.
- a “set” of controller gains comprises one or more gains.
- the controller gains “g i ” are adjusted to change the characteristics of the RV controller 191 as needed to provide for correction (current I 2 ) when there is rotational acceleration.
- An RV update circuit 192 performs calculations for rotational acceleration correction in real time. In other words, RV update circuit 192 performs calculations for transient rotational acceleration correction while the transient disturbance is taking place.
- servo controller 190 performs servo calculations to position the head 176 with current I 1 to the desired rotational position indicated by the input on line 184 , which can be time variant.
- the servo controller 190 and the RV update circuit 192 place simultaneous and conflicting demands for processor time on the processor 170 .
- This conflict is overcome in a workable way by an algorithm that divides or splits up the controller gains or taps “g i ” into smaller groups or sets 200 , 202 of controller gains “g i ” and performing the smaller sets at different times that are spaced apart.
- Slices of code, or processor instructions, that update the smaller sets 200 are executed in a way that is interleaved in time with execution of slices of code for the servo controller 190 . This interleaving of code slices is illustrated in more detail in FIG. 5.
- the algorithm performs the update or calibration computation in sets. Fore example, five taps can be calculated in one set during one time slice, and five taps can be calculated in another set during a subsequent time slice. This is somewhat complicated by the fact that there is a desire to calibrate the gain taps on current information and only when the PES and acceleration levels are above the required thresholds. Having a first set calibrated does not necessarily imply that a second set will also be calibrated, however, the calibration sets take place so often that the effects tend to even out and all gains are calibrated successfully.
- a conditional branch is executed in code to update a set in update circuit 192 .
- Only one of the sets 200 , 202 of controller gains “g i ” is updated with each conditional branch. This spreads out the time used for calculating updated controller gains so that it does not preempt or interrupt the calculations of servo controller 190 for too long a period of time.
- the calculation of controller gains “g i ” by update circuit 192 is broken up into smaller sets 200 , 202 that are interleaved in time with the calculations of servo controller 190 . Both types of calculations are thus completed in real time without interfering with one another.
- the accelerometer 172 provides an accelerometer output 188 that indicates rotational vibration to RV update circuit 192 .
- the accelerometer 172 senses acceleration about a Z-axis that is approximately parallel with an axis of rotation of the read/write head 176 .
- the RV update circuit 192 compares the accelerometer output 188 to an acceleration threshold stored in the controller at memory 198 .
- the RV update circuit 192 also compares the position error signal (PES) on line 186 to a PES threshold stored in the controller at memory 198 . If the accelerometer output 188 exceeds the acceleration threshold at 198 and the PES on line 186 exceeds the PES threshold at memory 198 , then RV update circuit executes a conditional branch.
- the slice of code executed in the conditional branch generates an update of one of the sets 200 or 202 of controller gains. This is explained in more detail in FIGS. 3 - 4 .
- the update circuit 192 updates one set 200 of the adjustable controller gains “g i ” within a computational time limit after a first conditional branch. After a second or subsequent conditional branch, the update circuit updates the second set 202 of adjustable controller gains.
- two sets of controller gains are illustrated. It will be understood by those skilled in the art, however, that 3 , 4 , 5 , or an arbitrary number M of sets could be used to meet the computational time limit needs in a particular disc drive application.
- Controller 170 generates currents I 1 and I 2 that are summed at summing junction 193 to form current I that is coupled to voice coil motor 174 .
- Current I includes a current component I 1 that due to servo control and also includes a correction current component I 2 that corrects for rotational vibration.
- Voice coil motor 174 provides a torque T that positions the read/write head 176 according to both current components. The read/write head 176 stays well centered on the desired track and data can be read and written on the storage disc 177 without excessive error or delay due to transient rotational acceleration disturbances.
- RV update circuit 192 preferably stores a preset gain step limit at 204 .
- the RV update circuit 192 limits adjustable controller gain change “g 1 ⁇ g I ⁇ 1 ” by the preset gain step limit. This gain step limit avoids overcorrecting for large rotational accelerations and avoids errors in the position of the read/write head 176 during and after these large rotational accelerations. The controller is thus able to reject the undesired effects of large rotational shocks or other transient noise events.
- Update circuit 192 preferably updates the adjustable controller gains “g i ” based on amplitude and phase relationships between the accelerometer output 188 and the PES on line 186 .
- the adjustable controller gains “g i ” are updated substantially according to Equation 1.
- Equation 1 k is a sequence number of the conditional branch. A conditional branch may occur frequently when there is lot vibration, or may occur very infrequently when there is little or no vibration.
- Const is a constant and H 1 is a function representing the acceleration output 188 passed through a model (algorithm) representing characteristics of the positioning motor 174 . Equation 1 is executed once per tap “i” of the filtered X algorithm. The tap “i” is one of the numbered gains in a set. When a larger number of taps is used, the overall feedforward system generally operates better. An increased number of taps, however, increases calculation time.
- Equation 1 is explained in more detail below in connection with the flow chart illustrated in FIG. 3.
- adjustable controller gains “g i ” are updated substantially according to Equation 2.
- Equation 2 provides the added benefit of limiting the difference in gain calibration levels between different sets of gains.
- F is a function whose value is equal in amplitude to that of gain_step_limit and has the same polarity as the computed product. In this way, the maximum single step change in the individual gains is limited to a positive or a negative gain_step_limit. This provides rejection of spurious inputs and also limits the rate of reaction to sudden changes in vibration characteristics such as amplitude and frequency content. Equation 2 is explained in more detail below in connection with the flow chart illustrated in FIG. 4.
- FIG. 3 illustrates a general flow chart performing rotational acceleration correction in a disc drive.
- the process illustrated in FIG. 3 can perform the corrections such as those shown in Equation 1 for a disc drive such as those illustrated in FIGS. 1 or 2 , for example.
- processing starts at start 220 when a conditional branch is executed.
- Conditional branches are assigned sequential numbers “K” so that different sets of controller gains can be selected for updating at decision point 222 depending on the number K of the conditional branch.
- K the number of controller gains
- sets are selected based on whether K is odd (not evenly divisible by 2) or even (evenly divisible by 2).
- a counter “i” is initially set to “n” at process block 232 .
- the counter “i” is tested at decision point 234 to determine if it is counted down yet to “n/2”. If the counter “i” has not been counted down that far yet, then the process proceeds along line 236 (marked NO) to process block 238 .
- the number K will be odd and processing will proceed from decision point 222 along line 250 .
- the counter “i” is initially set to “n/2” at process block 252 .
- the counter “i” is tested at decision point 254 to determine if it is counted down yet to “0”. If the counter “i” has not been counted down that far yet, then the process proceeds along line 256 (marked N) to process block 258 .
- FIG. 4 illustrates a general flow chart performing rotational acceleration correction in a disc drive.
- the process illustrated in FIG. 4 can perform the corrections such as those shown in Equation 2 for a disc drive such as those illustrated in FIGS. 1 or 2 , for example.
- the process illustrated in FIG. 4 is similar to the process illustrated in FIG. 3.
- the reference numerals used in FIG. 4 that are the same as reference numerals used in FIG. 3 identify the same or similar processes.
- the process shown in FIG. 4 performs a calculation along the lines of Equation 2 in process blocks 238 A, 238 B and 258 A, 258 B, while the process illustrated in FIG. 3 performs calculations along the lines of Equation 1 in process blocks 238 , 258 .
- FIG. 4 performs a calculation along the lines of Equation 2 in process blocks 238 A, 238 B and 258 A, 258 B, while the process illustrated in FIG. 3 performs calculations along the lines of Equation 1 in process blocks 238 , 258 .
- process blocks 238 A, 258 A perform all of the functions listed in Equation 2 except for the gain_step_limit.
- Process blocks 238 B and 258 B perform the function of gain_step_limit in Equation 2.
- the gain step limit limits the amount of change (g i (k) ⁇ g i (k ⁇ 1) in a gain tap to a predetermined limit. This arrangement helps prevent overcorrecting when there is a large rotational disturbance.
- the processes illustrated in FIG. 4 are generally the same as those described above in connection with FIG. 3.
- FIGS. 3 and 4 can be executed in software, hardware, or a combination of software and hardware.
- FIG. 5 is a timing diagram that schematically illustrates timing relationships between interleaved slices of code that are executed in performing servo controller functions and gain update functions.
- a first waveform 280 illustrates servo data that is received from the head, such as might be present, for example, on line 138 in FIG. 1 or line 180 in FIG. 2.
- a second waveform 282 illustrates a data ready interrupt that indicates that the servo data is ready for use.
- a third waveform 284 indicates time intervals during which code for a servo controller, such as servo controller 190 in FIG. 2 is executing. After each execution of code for the servo controller, there is an interval of time T 1 when code for the servo controller is not executing, and there is computational time available for use.
- the length of the time interval T 1 sets a computational time limit (CTL) which limits the amount of computation that can be interleaved between two successive executions of servo controller code. Updating all of the taps in the gains for rotational vibration correction takes an amount of time that exceeds the computational time limit (CTL).
- CTL computational time limit
- the gains are thus divided up into two sets 1 and 2.
- a fourth waveform 286 illustrates a time interval 288 during which the first set 1 of gains are updated and a time interval 290 during which the second set 2 of gains are updated.
- the slices of processor time 288 , 290 are interleaved with slices of processor time 284 that are used for servo controller computations. Time overruns beyond the computational time limit T 1 can cause an interrupt for the next data wedge, and multisamp computation can be pushed out in time, and a significant error in servo performance results. In some disc drives, however, a shorter computational time limit may be required, and three or more sets of adjustable gains can be used to meet the shorter time limit.
- a controller 130 , 170 that controls a positioning motor ( 118 , 174 ) for the head ( 110 , 176 ) includes multiple sets ( 200 , 202 ) of adjustable controller gains “g i ” for rotational vibration correction.
- An accelerometer output ( 156 , 188 ) indicating vibration is coupled to the controller ( 130 , 170 ).
- the accelerometer output ( 156 , 188 ) is compared to an acceleration threshold (at 198 ) stored in the controller ( 130 , 170 ).
- the controller ( 130 , 170 ) generates conditional branching ( 220 ) as a function of the comparison.
- the controller ( 130 , 170 ) updates one set ( 200 ) of the adjustable controller gains “g i ” within a computational time limit (T 1 ) after a first conditional branch ( 220 ).
- the controller ( 130 , 170 ) preferably updates a second set ( 202 ) of the adjustable controller gains “gi” within the computational time limit (T 1 ) after a second conditional branch ( 220 ).
Landscapes
- Moving Of The Head To Find And Align With The Track (AREA)
- Moving Of Head For Track Selection And Changing (AREA)
Abstract
Description
- This application claims priority of U.S. Provisional Application No. 60/180,755, filed Feb. 7, 2000 by Dustin M. Cvancara for “Improved Calibration of Filtered X-Gains with respect to Computational Time Limitations and the Rejection of Transient Events.” This application is also a continuation of International Application No. PCT/US01/______ (Atty docket S01.13-0649/STL9498PC), filed on even date herewith by Seagate Technology LLC for “Rotational Acceleration Correction in a Disc Drive” which in turn claims priority of the aforementioned U.S. Provisional Application.
- The invention relates to disc drive storage systems using accelerometers. In particular, the invention relates to correction for rotational acceleration in a disc drive storage system.
- Disc drives have problems when rotational shock or vibration forces are applied. The rotational shock can move a read/write head away from the center of the desired track on a disc. This can cause either an error or a delay in transferring data. The use of an accelerometer for correction, however, reduces problems encountered with rotational vibration.
- The use of accelerometers in disc drives is known. In U.S. Pat. Nos. 6,018,431 & 5,923,487 Carlson et al., for example, a disc drive includes a shock evaluator or sensing circuit with resettable threshold shock values to account for changes in operating conditions. In U.S. Pat. No. 5,663,847 Abramovitch, a disc drive includes an acceleration responsive sensor that is sampled at a different sampling rate than the position error signal.
- It is difficult, however, for the head-positioning servo controller to complete computations associated with using an accelerometer without excessively delaying computations associated with responding to servo positioning command inputs from an associated computer system. Further, when the disc drive experiences rather large transient rotational shocks, the vibration correction calculations can tend to overcorrect and cause significant errors in the performance of the servo controller functions.
- Disc drives, particularly those used in battery-powered portable computers, have significant electrical power constraints that preclude solving these problems using larger or faster controllers that draw excessive amounts of power.
- A method and an apparatus are needed, within the power constraints of a disc drive, to correct for rotational vibration while avoiding unduly delaying performance of servo control calculations. A method and apparatus are also needed that avoid overcorrecting for transient rotational events.
- Disclosed is a method and circuit that correct for rotational vibration disturbances of a head position in a disc drive. The circuit includes a servo controller that controls a positioning motor for the head as a function of servo data from the head. The circuit also includes a rotational vibration (RV) controller that also controls the positioning motor for the head as a function of an output of an accelerometer and multiple sets of adjustable gains “gi” in the rotational vibration controller.
- The accelerometer output indicates vibration and is coupled to the RV controller. The accelerometer output is compared to an acceleration threshold stored in the controller. If the acceleration is greater than the threshold, then a conditional branch is made to provide rotational vibrational correction to the positioning motor.
- The controller updates one set of the adjustable controller gains “gi” within a computational time limit after a first execution of servo controller code. The controller preferably updates a second set of the adjustable controller gains “gi” within the computational time limit after a second execution of servo controller code.
- Additional features and benefits will become apparent with a careful review of the following drawings and the corresponding detailed description.
- FIG. 1 illustrates an embodiment of a disc drive including a processor adapted to perform rotational acceleration correction;
- FIG. 2 illustrates a block diagram of an embodiment of a disc drive including a processor adapted to perform rotational acceleration correction;
- FIG. 3 illustrates a flow chart of performing rotational acceleration correction in a processor;
- FIG. 4 illustrates a flow chart of performing rotational acceleration correction including a gain step limit in a processor; and
- FIG. 5 illustrates exemplary timing of gain corrections interleaved with servo calculations in a processor.
- In FIG. 1., an embodiment of a
disc drive 100 includes aprocessor 140 that performs rotational acceleration correction as a function of anaccelerometer output 156 from anaccelerometer 157.Disc drive 100 includes adisc pack 126 havingstorage surfaces 106 that are typically layers of magnetic material. Thedisc pack 126 includes a stack of multiple discs. A read/writehead assembly 112 includes a read/writetransducer 110 for each stacked disc.Disc pack 126 is spun or rotated as shown byarrow 107 to allow read/writehead assembly 112 to access different rotational locations for data on thestorage surfaces 106 on thedisc pack 126. - Read/write
head assembly 112 is actuated to move radially, relative to thedisc pack 126, as shown byarrow 122 to access different radial locations for data on thestorage surfaces 106 ofdisc pack 126. Typically, the actuation of read/writehead assembly 112 is provided by avoice coil motor 118.Voice coil motor 118 includes arotor 116 that pivots onaxle 120 and anarm 114 that actuates the read/writehead assembly 112. - Accelerometer157 is preferably mounted in
disc drive 100. Accelerometer 157 is closely mechanically coupled to thedisc drive 100 so that it experiences substantially the same acceleration as thedisc drive 100. Alternatively,accelerometer 157 can be mounted external to thedisc drive 100, provided that the close mechanical coupling is maintained. Accelerometer 157 is oriented such thataccelerometer 157 experiences rotational acceleration that is similar to the rotational acceleration experienced bydisc drive 100 due to rotational acceleration of thedisc drive 100. Accelerometer 157 provides acceleration data that is used by a circuit atlocation 130 in controlling the position of read/writetransducer 110. - A
portion 132 of the circuit atlocation 130 that controls the rotational actuation of the read/writehead assembly 112 is broken out and illustrated schematically on the right side of FIG. 1. One or more of the read/writetransducers 110 provide data indicating a sensed actuator position 2 (track) online 134 to ademodulator 136.Demodulator 136 demodulates the sensedactuator position 2, putting the position data in a digital form that is coupled alongline 138 toprocessor 140.Processor 140 includesRAM 142 andROM 144 and generates a signal online 146 for controlling thevoice coil motor 118. The signal online 146 is amplified bypower amplifier 148.Power amplifier 148 provides an output current I that couples alongline 150 to thevoice coil motor 118 and controls the rotational ormechanical position 2 M of read/writehead assembly 112. The current I includes a correction current as explained in more detail below in connection with the example illustrated in FIG. 2.Processor 140 includes asetpoint input 152 that receives reference data, typically from a CPU of an associated personal computer, indicating a desiredactuator position 2 d.ROM 144 stores instructions for a voice coil motor controller process or algorithm that controls the read/writehead position 2 M so that data can be read or written on the desired (setpoint) track on thestorage surfaces 106 ofdisc pack 126. - The
processor 140 includes instructions stored inROM 144 for a process or algorithm that provides acceleration correction for the read/writehead assembly 112 using theaccelerometer 157. Theprocessor 140 provides an output online 146 that is corrected for the effects of rotational acceleration sensed by theaccelerometer 157. The rotational acceleration correction is described in more detail below in connection with examples illustrated in FIGS. 2-5. The function ofprocessor 140 under normal or natural operating conditions is to provide closed loop “servo” control of the positioning of thevoice coil motor 118 so that data on thedisc pack 126 can be read or written. Theprocessor 140 can also perform a servo filtered-X algorithm for rotational acceleration corrections when needed without interrupting the normal servo functions for excessively long time intervals. The filtered X algorithm calibrates a set of gains based on the amplitude and phase relationship between the acceleration and the position error signal (PES) experienced by the servo system. The rotational acceleration correction can be performed automatically when the levels of acceleration and/or a position error signal (PES) are above thresholds where such correction is indicated. - It will be understood by those skilled in the art that the
processor 140 can execute other support functions for thedisc drive 100 as well.Portion 132 of the disc drive controller can be implemented as a single integrated circuit or it can be implemented in several integrated circuits or include discrete circuit components or software in any combination, depending on the application.Portion 132 of the disc drive controller can transmit and receive data for the user online 158, or data for the user can be handled by a different portion of the disc drive circuitry, depending on the needs of the application. - FIG. 2 illustrates a first embodiment of a
disc drive controller 170 using anaccelerometer 172 to provide rotational vibration feedforward (RVFF) control. This RVFF control corrects for vibration disturbances of the position of a read/write head 176 on astorage disc 177. As illustrated bybroken line 171, theaccelerometer 172 is mechanically coupled to the disc drive and experiences substantially the same vibrational disturbances that are experienced by read/write head 176 andpositioning motor 174. -
Controller 170 includes aservo controller 190 that provides a current I1 to summingjunction 193.Controller 170 also includes a rotational vibration feedforward (RVFF)controller 191 that provides a current 12 to summingjunction 193. Summingjunction 193 provides a current I1+I2 alongline 192 to apositioning motor 174 which positions the read/write head 176 on the surface ofstorage disc 177. - The read/
write head 176 senses its position or track on themagnetic storage disc 177. Read/write head 176 electrically couples alongline 179 to ademodulator circuit 178.Demodulator circuit 178 demodulates the sensed position and provides a demodulated output indicating a sensed read/write head position θ online 180.Demodulator circuit 178 also provides data read from thedisc 177 alongline 181 to a computer system connected to the disc drive. The sensed read/write head position θ online 180 is coupled to a summingjunction 182. The summingjunction 182 also receives a signal indicating a desired head position θd online 184 from a computer system connected to the disc drive. The summingjunction 182 generates a position error signal (PES) 186 that represents the algebraic difference (θd−θ). Theservo controller 190, the read/write head 176, and thepositioning motor 174 together comprise a servo system, which is a closed-loop control system that controls the position of the read/write head 176. - The rotational vibration (RV)
controller 191 hasmultiple sets 200, 202 of adjustable controller gains “gi”, i.e. G1, G2 . . . GN. A “set” of controller gains comprises one or more gains. The controller gains “gi” are adjusted to change the characteristics of theRV controller 191 as needed to provide for correction (current I2) when there is rotational acceleration. AnRV update circuit 192 performs calculations for rotational acceleration correction in real time. In other words,RV update circuit 192 performs calculations for transient rotational acceleration correction while the transient disturbance is taking place. At the same time, however,servo controller 190 performs servo calculations to position thehead 176 with current I1 to the desired rotational position indicated by the input online 184, which can be time variant. Theservo controller 190 and theRV update circuit 192 place simultaneous and conflicting demands for processor time on theprocessor 170. This conflict is overcome in a workable way by an algorithm that divides or splits up the controller gains or taps “gi” into smaller groups or sets 200, 202 of controller gains “gi” and performing the smaller sets at different times that are spaced apart. Slices of code, or processor instructions, that update thesmaller sets 200 are executed in a way that is interleaved in time with execution of slices of code for theservo controller 190. This interleaving of code slices is illustrated in more detail in FIG. 5. - Instead of processing all of the taps during the same time slice, in response to the same acceleration and PES levels, the algorithm performs the update or calibration computation in sets. Fore example, five taps can be calculated in one set during one time slice, and five taps can be calculated in another set during a subsequent time slice. This is somewhat complicated by the fact that there is a desire to calibrate the gain taps on current information and only when the PES and acceleration levels are above the required thresholds. Having a first set calibrated does not necessarily imply that a second set will also be calibrated, however, the calibration sets take place so often that the effects tend to even out and all gains are calibrated successfully.
- A conditional branch is executed in code to update a set in
update circuit 192. Only one of thesets 200, 202 of controller gains “gi” is updated with each conditional branch. This spreads out the time used for calculating updated controller gains so that it does not preempt or interrupt the calculations ofservo controller 190 for too long a period of time. The calculation of controller gains “gi” byupdate circuit 192 is broken up intosmaller sets 200, 202 that are interleaved in time with the calculations ofservo controller 190. Both types of calculations are thus completed in real time without interfering with one another. - The
accelerometer 172 provides anaccelerometer output 188 that indicates rotational vibration toRV update circuit 192. Theaccelerometer 172 senses acceleration about a Z-axis that is approximately parallel with an axis of rotation of the read/write head 176. TheRV update circuit 192 compares theaccelerometer output 188 to an acceleration threshold stored in the controller atmemory 198. TheRV update circuit 192 also compares the position error signal (PES) online 186 to a PES threshold stored in the controller atmemory 198. If theaccelerometer output 188 exceeds the acceleration threshold at 198 and the PES online 186 exceeds the PES threshold atmemory 198, then RV update circuit executes a conditional branch. The slice of code executed in the conditional branch generates an update of one of thesets 200 or 202 of controller gains. This is explained in more detail in FIGS. 3-4. - The
update circuit 192 updates oneset 200 of the adjustable controller gains “gi” within a computational time limit after a first conditional branch. After a second or subsequent conditional branch, the update circuit updates the second set 202 of adjustable controller gains. In this example, two sets of controller gains are illustrated. It will be understood by those skilled in the art, however, that 3, 4, 5, or an arbitrary number M of sets could be used to meet the computational time limit needs in a particular disc drive application. -
Controller 170 generates currents I1 and I2 that are summed at summingjunction 193 to form current I that is coupled tovoice coil motor 174. Current I includes a current component I1 that due to servo control and also includes a correction current component I2 that corrects for rotational vibration.Voice coil motor 174 provides a torque T that positions the read/write head 176 according to both current components. The read/write head 176 stays well centered on the desired track and data can be read and written on thestorage disc 177 without excessive error or delay due to transient rotational acceleration disturbances. -
RV update circuit 192 preferably stores a preset gain step limit at 204 . TheRV update circuit 192 limits adjustable controller gain change “g1−gI−1” by the preset gain step limit. This gain step limit avoids overcorrecting for large rotational accelerations and avoids errors in the position of the read/write head 176 during and after these large rotational accelerations. The controller is thus able to reject the undesired effects of large rotational shocks or other transient noise events. -
Update circuit 192 preferably updates the adjustable controller gains “gi” based on amplitude and phase relationships between theaccelerometer output 188 and the PES online 186. In one preferred arrangement, the adjustable controller gains “gi” are updated substantially according toEquation 1. - g i(k)=g i(k−1 )+const*PES(k)*H 1(k,i)
Equation 1 - In
Equation 1, k is a sequence number of the conditional branch. A conditional branch may occur frequently when there is lot vibration, or may occur very infrequently when there is little or no vibration. “Const” is a constant and H1 is a function representing theacceleration output 188 passed through a model (algorithm) representing characteristics of thepositioning motor 174.Equation 1 is executed once per tap “i” of the filtered X algorithm. The tap “i” is one of the numbered gains in a set. When a larger number of taps is used, the overall feedforward system generally operates better. An increased number of taps, however, increases calculation time. If sets of gains are used, the calculation time at each conditional branch is reduced, and the rate of gain convergence is only slightly reduced usingEquation 1. The slowing of the rate of gain convergence is beneficial since it helps limit the effects of transient noise or one-time shock inputs.Equation 1 is explained in more detail below in connection with the flow chart illustrated in FIG. 3. - In another preferred arrangement, adjustable controller gains “gi” are updated substantially according to
Equation 2. - g i(k)=g i(k−1)+F{const*PES(k)*H i(k,i), gain — step — limit}
Equation 2 - In
Equation 2, k is a sequence number of the conditional branch, const is a constant, H1 is the acceleration output passed through a model (algorithm) representing characteristics of the positioning motor and gain_step_limit is a gain step limit stored in the controller.Equation 2 provides the added benefit of limiting the difference in gain calibration levels between different sets of gains. F is a function whose value is equal in amplitude to that of gain_step_limit and has the same polarity as the computed product. In this way, the maximum single step change in the individual gains is limited to a positive or a negative gain_step_limit. This provides rejection of spurious inputs and also limits the rate of reaction to sudden changes in vibration characteristics such as amplitude and frequency content.Equation 2 is explained in more detail below in connection with the flow chart illustrated in FIG. 4. - FIG. 3 illustrates a general flow chart performing rotational acceleration correction in a disc drive. The process illustrated in FIG. 3 can perform the corrections such as those shown in
Equation 1 for a disc drive such as those illustrated in FIGS. 1 or 2, for example. In FIG. 3, processing starts atstart 220 when a conditional branch is executed. Conditional branches are assigned sequential numbers “K” so that different sets of controller gains can be selected for updating atdecision point 222 depending on the number K of the conditional branch. In the example illustrated in FIG. 3, there are only two sets of controller gains, and sets are selected based on whether K is odd (not evenly divisible by 2) or even (evenly divisible by 2). It will be understood that there can be a larger number P of sets of controller gains that is larger than 2, in which case sets of controller gains can be sequentially selected for updating based on a counter which counts from 1 to P. - If the number K is found to be an odd number at
decision point 222, then processing proceeds generally along theright side 228 of FIG. 3 to update the first set of controller gains or taps i=1 up to i=(n/2) illustrated schematically at 224. If the number K is found to be an even number at 222, then processing proceeds generally along theleft side 230 of FIG. 3 to update the second set of controller gains or taps i=(n/2)+1 up to I=n as illustrated schematically at 226. - After the
left side 230 has been selected atdecision point 222, a counter “i” is initially set to “n” atprocess block 232. Next, the counter “i” is tested atdecision point 234 to determine if it is counted down yet to “n/2”. If the counter “i” has not been counted down that far yet, then the process proceeds along line 236 (marked NO) to process block 238.Process block 238 performs a calculation like that shown inEquation 1 with i=n on the first pass. The counter i is then decremented, i.e., i=i−1, atprocess block 240 and program flow returns alongline 242 todecision point 234. The process continues to loop around the path 234-236-238-240-242-234 until the counter “i” is decremented to i=n/2. Then, program flow exits the loop at 244 and goes to process block 246. Atprocess block 246, the conditional branch number K is incremented, K=K+1, and the program flow leaves gain updating to return to servo processing atprocess block 248. The next time there is an conditional branch to process block 220, the number K will be odd and processing will proceed fromdecision point 222 alongline 250. - After the
right side 228 has been selected atdecision point 222, the counter “i” is initially set to “n/2” atprocess block 252. Next, the counter “i” is tested atdecision point 254 to determine if it is counted down yet to “0”. If the counter “i” has not been counted down that far yet, then the process proceeds along line 256 (marked N) to process block 258.Process block 258 performs a calculation like that shown inEquation 1 with i=n/2 on the first pass. The counter i is then decremented, i.e., I=i−1, atprocess block 260 and program flow returns alongline 262 todecision point 254. The process continues to loop around the path 254-256-258-260-262-254 until the counter “i” is decremented to i=0. Then, program flow exits the loop at 264 and goes to process block 246. Atprocess block 246, the conditional branch number K is incremented, K=K+1, and the program flow leaves gain updating to return to servo processing atprocess block 248. - FIG. 4 illustrates a general flow chart performing rotational acceleration correction in a disc drive. The process illustrated in FIG. 4 can perform the corrections such as those shown in
Equation 2 for a disc drive such as those illustrated in FIGS. 1 or 2, for example. The process illustrated in FIG. 4 is similar to the process illustrated in FIG. 3. The reference numerals used in FIG. 4 that are the same as reference numerals used in FIG. 3 identify the same or similar processes. The process shown in FIG. 4 performs a calculation along the lines ofEquation 2 in process blocks 238A, 238B and 258A, 258B, while the process illustrated in FIG. 3 performs calculations along the lines ofEquation 1 in process blocks 238, 258. In FIG. 4, process blocks 238A, 258A perform all of the functions listed inEquation 2 except for the gain_step_limit. Process blocks 238B and 258B perform the function of gain_step_limit inEquation 2. The gain step limit limits the amount of change (gi(k)−gi(k−1) in a gain tap to a predetermined limit. This arrangement helps prevent overcorrecting when there is a large rotational disturbance. In other respects, the processes illustrated in FIG. 4 are generally the same as those described above in connection with FIG. 3. - It will be understood by those skilled in the art that the steps illustrated in FIGS. 3 and 4 can be executed in software, hardware, or a combination of software and hardware.
- FIG. 5 illustrates exemplary timing of gain corrections calculated within a computational time limit CTL=T1 and interleaved with servo calculations in a processor such as
processor 170 described in connection with FIG. 2 orprocessor 140 described in connection with FIG. 1. FIG. 5 is a timing diagram that schematically illustrates timing relationships between interleaved slices of code that are executed in performing servo controller functions and gain update functions. - In FIG. 5, a
first waveform 280 illustrates servo data that is received from the head, such as might be present, for example, online 138 in FIG. 1 orline 180 in FIG. 2. Asecond waveform 282 illustrates a data ready interrupt that indicates that the servo data is ready for use. Athird waveform 284 indicates time intervals during which code for a servo controller, such asservo controller 190 in FIG. 2 is executing. After each execution of code for the servo controller, there is an interval of time T1 when code for the servo controller is not executing, and there is computational time available for use. The length of the time interval T1 sets a computational time limit (CTL) which limits the amount of computation that can be interleaved between two successive executions of servo controller code. Updating all of the taps in the gains for rotational vibration correction takes an amount of time that exceeds the computational time limit (CTL). The gains are thus divided up into twosets fourth waveform 286 illustrates atime interval 288 during which thefirst set 1 of gains are updated and atime interval 290 during which thesecond set 2 of gains are updated. - The slices of
processor time processor time 284 that are used for servo controller computations. Time overruns beyond the computational time limit T1 can cause an interrupt for the next data wedge, and multisamp computation can be pushed out in time, and a significant error in servo performance results. In some disc drives, however, a shorter computational time limit may be required, and three or more sets of adjustable gains can be used to meet the shorter time limit. - In summary, a method and circuit are disclosed that correct for rotational vibration disturbances of a position (θ) of a head (110, 176) in a disc drive (100). A controller (130, 170) that controls a positioning motor (118, 174) for the head (110, 176) includes multiple sets (200, 202) of adjustable controller gains “gi” for rotational vibration correction.
- An accelerometer output (156, 188) indicating vibration is coupled to the controller (130, 170). The accelerometer output (156, 188) is compared to an acceleration threshold (at 198) stored in the controller (130, 170). The controller (130, 170) generates conditional branching (220) as a function of the comparison.
- The controller (130, 170) updates one set (200) of the adjustable controller gains “gi” within a computational time limit (T1) after a first conditional branch (220). The controller (130, 170) preferably updates a second set (202) of the adjustable controller gains “gi” within the computational time limit (T1) after a second conditional branch (220).
- It is to be understood that even though numerous characteristics and advantages of various embodiments of the present invention have been set forth in the foregoing description, together with details of the structure and function of various embodiments of the invention, this disclosure is illustrative only, and changes may be made in detail, especially in matters of structure and arrangement of parts within the principles of the present invention to the full extent indicated by the broad general meaning of the terms in which the appended claims are expressed. The examples of algorithms illustrated can be modified for various applications within the scope of the invention. Although the preferred embodiments described herein are directed to disc drives, it will be appreciated by those skilled in the art that the teachings of the present invention can be applied to other systems where accelerometers are used, without departing from the scope and spirit of the present invention.
Claims (16)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/770,422 US6414813B2 (en) | 2000-02-07 | 2001-01-26 | Rotational acceleration correction in a disc drive |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18075500P | 2000-02-07 | 2000-02-07 | |
PCT/US2001/002677 WO2001057854A2 (en) | 2000-02-07 | 2001-01-26 | Rotational acceleration correction in a disc drive |
US09/770,422 US6414813B2 (en) | 2000-02-07 | 2001-01-26 | Rotational acceleration correction in a disc drive |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2001/002677 Continuation WO2001057854A2 (en) | 2000-02-07 | 2001-01-26 | Rotational acceleration correction in a disc drive |
Publications (2)
Publication Number | Publication Date |
---|---|
US20010033454A1 true US20010033454A1 (en) | 2001-10-25 |
US6414813B2 US6414813B2 (en) | 2002-07-02 |
Family
ID=22661647
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/770,422 Expired - Lifetime US6414813B2 (en) | 2000-02-07 | 2001-01-26 | Rotational acceleration correction in a disc drive |
Country Status (3)
Country | Link |
---|---|
US (1) | US6414813B2 (en) |
AU (1) | AU2001233037A1 (en) |
WO (1) | WO2001057854A2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1662348A1 (en) * | 2004-11-30 | 2006-05-31 | Fanuc Ltd | Rotary shaft control apparatus |
US10473949B2 (en) | 2017-01-30 | 2019-11-12 | Semiconductor Components Industries, Llc | Systems and methods for an optical image stabilizer system |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10084860T1 (en) * | 1999-07-23 | 2002-08-01 | Seagate Technology Llc | Fault rejection for disk drives using an adaptive feedforward servo with accelerometer |
WO2002031827A2 (en) * | 2000-10-13 | 2002-04-18 | Seagate Technology Llc | Suspension sense capability for windage control |
US20030220751A1 (en) * | 2002-05-22 | 2003-11-27 | Toh Michael Joo Chiang | Method and apparatus to verify disc drive vibrational performance |
US7265931B2 (en) * | 2003-06-05 | 2007-09-04 | Matsushita Electric Industrial Co., Ltd. | Apparatus to reject disk drive disturbance |
US20040246833A1 (en) * | 2003-06-05 | 2004-12-09 | Ehrlich Richard M. | Disk drive system model for determining a threshold to perform disturbance rejection |
US20040257693A1 (en) * | 2003-06-05 | 2004-12-23 | Ehrlich Richard M. | Disk drive disturbance rejection using accelerometer and/or back-EMF measurements |
US20040246617A1 (en) * | 2003-06-05 | 2004-12-09 | Ehrlich Richard M. | Disk drive disturbance rejection using spindle motor speed |
US7088546B2 (en) * | 2003-06-05 | 2006-08-08 | Matsushita Electric Industrial Co., Ltd. | Method to reject disk drive disturbance |
JP2005129172A (en) * | 2003-10-24 | 2005-05-19 | Matsushita Electric Ind Co Ltd | Impact protective device for hard disk drive |
US6937423B1 (en) * | 2004-02-06 | 2005-08-30 | Western Digital Technologies, Inc. | Reducing effects of rotational vibration in disk drive |
US7177113B1 (en) * | 2005-08-03 | 2007-02-13 | Hitachi Global Storage Technologies Netherlands B.V. | Magnetic recording disk drive with switchable rotational vibration cancellation |
JP2007095119A (en) | 2005-09-27 | 2007-04-12 | Hitachi Global Storage Technologies Netherlands Bv | Disk device and control method of same |
US7525753B1 (en) | 2005-10-18 | 2009-04-28 | Maxtor Corporation | Reducing seek wind-up in a disk drive using early acceleration feedforward signal |
US7423833B1 (en) | 2005-12-13 | 2008-09-09 | Marvell International Ltd. | Servo loop employing correction vector from a secondary disturbance sensor to minimize correlation between servo loop error and disturbance sensor output |
US7375916B2 (en) | 2006-03-17 | 2008-05-20 | Hitachi Global Storage Technologies Netherlands B.V. | Magnetic recording disk drive with multiple feedforward controllers for rotational vibration cancellation |
US7580217B2 (en) * | 2007-01-02 | 2009-08-25 | Hitachi Global Storage Technologies Netherlands B.V. | Disk drive with hybrid analog-digital acceleration feedforward control system and method for rejecting rotational vibration |
US7768738B2 (en) * | 2007-11-13 | 2010-08-03 | Sensor Platforms, Inc. | Mitigating the effects of disturbances of a disk drive |
US7633704B2 (en) * | 2008-04-28 | 2009-12-15 | Seagate Technology Llc | Regulating tuning rate of adaptive filter coefficients for feed-forward disturbance rejection in a servo control loop |
US7852588B1 (en) | 2008-06-23 | 2010-12-14 | Western Digital Technologies, Inc. | Disk drive adjusting gain of shock detector relative to resonant frequency amplitude |
US7595953B1 (en) | 2008-07-22 | 2009-09-29 | Hitachi Global Storage Technologies Netherlands B.V. | Magnetic recording disk drive with switchable compensation for mechanical and electrical disturbances |
US20100079906A1 (en) * | 2008-09-29 | 2010-04-01 | Wile Donald T | Adaptive Feed Forward Rotational Vibration Compensation During a SEEK Operation |
US8179626B1 (en) | 2009-12-04 | 2012-05-15 | Western Digital Technologies, Inc. | Adaptive shock detection |
US8896955B1 (en) | 2010-08-31 | 2014-11-25 | Western Digital Technologies, Inc. | Adaptive track follow control |
KR20120035423A (en) * | 2010-10-05 | 2012-04-16 | 삼성전자주식회사 | Disk drive and method for writing disk drive |
US8634158B1 (en) | 2011-11-16 | 2014-01-21 | Western Digital Technologies, Inc. | Disk drive generating feed-forward actuator compensation based on a speaker driver signal |
US8737013B2 (en) | 2011-11-16 | 2014-05-27 | Western Digital Technologies, Inc. | Disk drive selecting disturbance signal for feed-forward compensation |
US8947819B1 (en) | 2012-08-28 | 2015-02-03 | Western Digital Technologies, Inc. | Disk drive implementing hysteresis for primary shock detector based on a more sensitive secondary shock detector |
US9111575B1 (en) | 2014-10-23 | 2015-08-18 | Western Digital Technologies, Inc. | Data storage device employing adaptive feed-forward control in timing loop to compensate for vibration |
US9747936B1 (en) | 2016-08-24 | 2017-08-29 | Western Digital Technologies, Inc. | Data storage device filtering sensor signal to optimize shock and thermal pop detection |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5426545A (en) * | 1991-05-09 | 1995-06-20 | Sidman; Michael D. | Active disturbance compensation system for disk drives |
US5299075A (en) * | 1992-06-04 | 1994-03-29 | Hewlett-Packard Company | Apparatus and method for shock attenuation in a disk recording and/or reproduction system using variable gain acceleration sensor |
US5491394A (en) | 1993-08-20 | 1996-02-13 | Maxtor Corporation | Acceleration sensing write disable system utilizing actuator arm coil |
US5696645A (en) | 1993-10-22 | 1997-12-09 | Maxtor Corporation | Apparatus for protecting memory devices from external shock forces by using an integrating band pass filter |
JP3415288B2 (en) | 1993-11-09 | 2003-06-09 | 株式会社東芝 | Information recording / reproducing device |
US5521772A (en) | 1993-11-30 | 1996-05-28 | International Business Machines Corporation | Disk drive with accerleration rate sensing |
US5389850A (en) | 1994-02-04 | 1995-02-14 | Maxtor Corporation | Rotational shock sensor |
US5663847A (en) * | 1995-03-27 | 1997-09-02 | Abramovitch; Daniel Y. | Rejection of disturbances on a disk drive by use of an accelerometer |
US6046878A (en) * | 1997-04-30 | 2000-04-04 | Seagate Technology, Inc. | Object positioning using discrete sliding mode control with variable parameters |
US5923487A (en) * | 1997-06-05 | 1999-07-13 | Maxtor Corporation | Integrated shock sensing device |
US5856895A (en) | 1997-07-02 | 1999-01-05 | Seagate Technology, Inc. | Internal accelerometer for improved servo performance and shock sensing on high performance disc drive heads |
US6064540A (en) * | 1998-03-30 | 2000-05-16 | International Business Machines Corporation | Active control for stabilizing a servo-controlled actuator system |
-
2001
- 2001-01-26 WO PCT/US2001/002677 patent/WO2001057854A2/en active Application Filing
- 2001-01-26 AU AU2001233037A patent/AU2001233037A1/en not_active Abandoned
- 2001-01-26 US US09/770,422 patent/US6414813B2/en not_active Expired - Lifetime
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1662348A1 (en) * | 2004-11-30 | 2006-05-31 | Fanuc Ltd | Rotary shaft control apparatus |
US20060113947A1 (en) * | 2004-11-30 | 2006-06-01 | Fanuc Ltd | Rotary shaft control apparatus |
US7196489B2 (en) | 2004-11-30 | 2007-03-27 | Fanuc Ltd | Rotary shaft control apparatus |
US10473949B2 (en) | 2017-01-30 | 2019-11-12 | Semiconductor Components Industries, Llc | Systems and methods for an optical image stabilizer system |
Also Published As
Publication number | Publication date |
---|---|
US6414813B2 (en) | 2002-07-02 |
AU2001233037A1 (en) | 2001-08-14 |
WO2001057854A3 (en) | 2002-02-21 |
WO2001057854A2 (en) | 2001-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6414813B2 (en) | Rotational acceleration correction in a disc drive | |
US7265934B2 (en) | Head position control method, head position control device, and disk device | |
US5602689A (en) | Digital servo control system for use in disk drives, including sample integrity tester for reducing effects of spurious sampled position values | |
US5325247A (en) | Digital multi-rate notch filter for sampled servo digital control system | |
US6101058A (en) | Method of implementing a linear discrete-time state-space servo control system on a fixed-point digital signal processor in a disc drive | |
US6545835B1 (en) | Method and apparatus for RRO learning before and after shipping to cancel RRO in a disk drive | |
US6831809B2 (en) | Rotary recording apparatus and method of controlling the apparatus | |
US6721122B2 (en) | Disk drive unit and control method for same | |
US20030231423A1 (en) | Data storage device, control device, off-track control method, and control method | |
CN101114496A (en) | Head position control method, head position control device and disk device | |
EP1840883A2 (en) | Head positioning control method, head positioning control device and disk apparatus | |
US6728061B2 (en) | Head position control method, control device for disk device and disk device | |
US20010003497A1 (en) | Control method and control device for a disk storage device | |
JPH08255023A (en) | Method and unit for positioning control and head positioning device using the unit | |
US11875821B2 (en) | Disk device | |
JP4864841B2 (en) | Positioning control system and positioning control method | |
US7808737B2 (en) | Magnetic disk drive | |
JP3779668B2 (en) | Disk storage device and head positioning control method | |
US7460331B2 (en) | Seek control method, seek control device and medium storage device | |
JP2790570B2 (en) | Disk recording and playback device | |
JP2001512881A (en) | Disk drive with robust track following servo controller | |
CA2312044C (en) | Digital servo control system for use in disk drives | |
JP2621665B2 (en) | Head positioning control method | |
JPH06139731A (en) | Head position correcting method for disk device | |
Pang et al. | Singular perturbation control for vibration rejection in HDDs with a PZT active suspension |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SEAGATE TECHNOLOGY LLC, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CVANCARA, DUSTIN M.;REEL/FRAME:011764/0760 Effective date: 20010118 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, AS COLLATERAL AGENT, NEW YORK Free format text: SECURITY AGREEMENT;ASSIGNOR:SEAGATE TECHNOLOGY LLC;REEL/FRAME:013177/0001 Effective date: 20020513 Owner name: JPMORGAN CHASE BANK, AS COLLATERAL AGENT,NEW YORK Free format text: SECURITY AGREEMENT;ASSIGNOR:SEAGATE TECHNOLOGY LLC;REEL/FRAME:013177/0001 Effective date: 20020513 |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, AS COLLATERAL AGENT, NEW YORK Free format text: SECURITY INTEREST;ASSIGNOR:SEAGATE TECHNOLOGY LLC;REEL/FRAME:013516/0015 Effective date: 20020513 |
|
CC | Certificate of correction | ||
FEPP | Fee payment procedure |
Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: SEAGATE TECHNOLOGY LLC, CALIFORNIA Free format text: RELEASE OF SECURITY INTERESTS IN PATENT RIGHTS;ASSIGNOR:JPMORGAN CHASE BANK, N.A. (FORMERLY KNOWN AS THE CHASE MANHATTAN BANK AND JPMORGAN CHASE BANK), AS ADMINISTRATIVE AGENT;REEL/FRAME:016958/0328 Effective date: 20051130 |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT Free format text: SECURITY AGREEMENT;ASSIGNORS:MAXTOR CORPORATION;SEAGATE TECHNOLOGY LLC;SEAGATE TECHNOLOGY INTERNATIONAL;REEL/FRAME:022757/0017 Effective date: 20090507 Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATE Free format text: SECURITY AGREEMENT;ASSIGNORS:MAXTOR CORPORATION;SEAGATE TECHNOLOGY LLC;SEAGATE TECHNOLOGY INTERNATIONAL;REEL/FRAME:022757/0017 Effective date: 20090507 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: SEAGATE TECHNOLOGY INTERNATIONAL, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 Owner name: MAXTOR CORPORATION, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 Owner name: SEAGATE TECHNOLOGY LLC, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 Owner name: SEAGATE TECHNOLOGY HDD HOLDINGS, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 |
|
AS | Assignment |
Owner name: THE BANK OF NOVA SCOTIA, AS ADMINISTRATIVE AGENT, Free format text: SECURITY AGREEMENT;ASSIGNOR:SEAGATE TECHNOLOGY LLC;REEL/FRAME:026010/0350 Effective date: 20110118 |
|
AS | Assignment |
Owner name: SEAGATE TECHNOLOGY LLC, CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 Owner name: EVAULT INC. (F/K/A I365 INC.), CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 Owner name: SEAGATE TECHNOLOGY US HOLDINGS, INC., CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 Owner name: SEAGATE TECHNOLOGY INTERNATIONAL, CAYMAN ISLANDS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 |
|
FPAY | Fee payment |
Year of fee payment: 12 |