Servo circuit

Abstract: A servo circuit having a speed detection circuit (2) for detecting a real speed from a position signal (Ps) derived from an object (1) under servo control; a speed error detection circuit (3) for generating an error signal (ΔV) representing an error between a target speed (Vc) and the real speed (Vr); a position error detection circuit (4) for generating a position error signal (ΔP) from the position signal (Ps); a switching unit (5) for switching connection of the servo object (1) to the speed error detection circuit (3) or to the position error detection circuit (4); and a main processing unit (6) for controlling the switching of the switching unit (5). Near the target position, speed control by the speed error detection circuit (3) is switched to position control by the position error detection circuit (4). The main processing unit (6) measures the intervals between the position signals (ps) and based on the measured value changes the detection gain of a speed detection gain adjustment unit (2a) in the speed detection circuit (2).

Description: The present invention relates to a servo circuit for controlling the positioning of an object under servo control (hereinafter referred to as a "servo object") to a target position by speed control and then position control. Wide use is being made of servo positioning circuits for the positioning of magnetic heads on tracks of magnetic disk devices. In such servo positioning circuits, there is a desire for a technique enabling stable positioning even at high speeds. Speed control is performed by supplying to a voice coil motor the difference between a target speed controlled by a difference counter decremented by a track crossing pulse and a speed signal prepared from a differential signal obtained from a position signal and a current detection signal. In the preparation of the control speed, with a high speed seek (movement), the number of position signals per unit time is high, and along with this there are many differential signals generated, so the gap between the speed signal prepared by the circuit and the actual speed is not that large. However, when the speed becomes low, the number of differential signals per unit time falls and the gap with the actual speed increases. To cover for this, the current detection signal is being added to, but no great improvement can be expected from this. That is, the maximum speed has been rising more and more in recent years so as to enable high speed seek operations, but the amount of adding of the current detection signal cannot be increased along with the speed. The reason is that during a high speed seek operation, the current detection signal is not required, so it is not possible to to add a large enough amount as to have an impact on the high speed seek operation. This difference with the actual speed during low speed operation is particularly a problem in a deceleration process. A problem has arisen of a fall in the following characteristic of the servo object at the time of completion of deceleration. Therefore, a possibility has arisen of occurrence of overshooting or undershooting due to relaxation of the magnetic flux of the voice coil motor, effects of weight of the voice coil motor in the seek direction, air flow due to rotation of the magnetic disk, or other outside disturbances. The present invention has as its object the reduction of the gap between the prepared speed signal and actual speed and improvement of the following characteristic in the time for completion of deceleration. The present invention realizes this object by providing a servo circuit having a speed detection means for detecting a real speed from a position signal transferred from a servo object under servo control; a speed error detection circuit for generating an error between a target speed and the real speed; a position error detection means for generating a position error signal based on the position signal; a switching means for switching connection of the servo object to the speed error detection means or the position error detection means; and a main processing means for generating the target speed in accordance with position signals from the servo object and controlling the switching of the switching means, wherein a speed detection gain adjustment unit is provided in the speed detection means, characterised in that the main processing means is arranged to measure the intervals between the position signals and changes the detection gain of the speed detection gain adjustment unit, in accordance with the measured values of the intervals. A servo circuit according to the preamble of Claim 1 is known from EP-A-0 272 076. Figure 1, Fig. 2, and Figs. 3A and 3B are explanatory views of the prior art; Figs. 4A and 4B are views explaining the principle of the present invention; Fig. 5 is a constitutional view of an embodiment of the present invention; Fig. 6 is a constitutional view of a speed detection circuit of the constitution of Fig. 5; Fig. 7 is a flow chart of the seek processing of an embodiment of the present invention; and Fig. 8 is an explanatory view of the operation of an embodiment of the present invention. Before describing the preferred embodiments, a more detailed explanation will be given of the prior art. Figure 1 and Fig. 2 are explanatory views of the prior art. In Fig. 1, reference numeral 1 is a servo object, which has a voice coil motor 1a, servo head 1b moved by the voice coil motor 1a, and a position signal preparing circuit 1c for preparing the position signal Ps from the signal read by the servo head 1b. Reference numeral 2 is a speed detection circuit, which detects a real speed Vr from the position signal Ps and the later mentioned detection current ic, and reference numeral 3 is a speed error detection circuit, which generates a speed difference ΔV between the later mentioned target speed Vc and the real speed Vr. Reference numeral 4 is a position error detection circuit, which generates a position error signal ΔP from the position signal Ps and the detection current ic and performs position control, and reference numeral 5 is a power amplifier and switching unit, which has a changeover switch and power amplifier and switches connections of the speed error detection circuit 3 or position error detection circuit 4 to the servo object 1 by a coarse (speed control)/fine (position control) switching signal. Reference numeral 6 is a main processing unit, which is constituted by a microprocessor and which generates a target speed curve Vc in accordance with the amount of movement and also monitors the position of the servo object 1 by the later mentioned track crossing pulses to generate a signal for switching from coarse control (speed control) to fine control (position control) in the vicinity of the target position. Reference numeral 7 is a control current detection circuit, which detects the control current Is of the power amplifier 5 and generates a detection current signal ic, and reference numeral 8 is a track crossing pulse generating circuit, which generates track crossing pulses from the position signal Ps and outputs them to the main processing unit 6. When the number of tracks to move (amount of movement) is given, the main processing unit 6 generates a target speed Vc in accordance with the number of tracks to move, drives the voice coil motor 1a by speed control, and, when reaching near the target position, switches the switching unit 5 to the position control side and performs position control on the voice coil motor 1a for positioning at the desired track. The speed detection circuit 2, as shown in Fig. 2, has an amplifier 20 for amplifying the detection current ic, a differential circuit 21 for integrating the position signal Ps and generating a speed component; an offset adjustment circuit 23, and an amplifier 24 for adding these outputs and amplifying the same and can be initially adjusted in gain by operating adjustment resistors r1 and r2. In this way, speed control is performed by supplying to the voice coil motor 1a, as a speed error signal ΔV, the difference between a target speed controlled by difference counter decremented by a track crossing pulse and a speed signal Vr prepared from a differential signal of a position signal Ps and a current detection signal as shown in Fig. 3A. The prepared speed signal Vr is initially set so as to show the correct value by variable resistors r1 and r2. In the preparation of the speed, with a high speed seek (movement), the number of position signals Ps per unit time is high, as shown in Fig. 3A, and along with this there are many differential signals generated, so the gap between the speed signal Vr prepared by the circuit and the actual speed is not that large. As shown in Fig. 3B, however, when the speed becomes low, the number of differential signals per unit time falls and the gap with the actual speed increases. To cover for this, the current detection signal ic is being added to, but no great improvement can be expected from this. That is, the maximum speed has been rising more and more in recent years so as to enable high speed seek operations, but the amount of adding of the current detection signal ic cannot be increased along with the speed. The reason is that during a high speed seek operation, the current detection signal ic is not required, so it is not possible to to add a large enough amount as to have an impact on the high speed seek operation. This difference with the actual speed during low speed operation is particularly a problem in a deceleration process. A problem has arisen of a fall in the following performance in the period of completion of deceleration. Therefore, a possibility has arisen of occurrence of overshooting or undershooting due to relaxation of the magnetic flux of the voice coil motor, effects of weight of the voice coil motor in the seek direction, air flow due to rotation of the magnetic disk, or other outside disturbances. Therefore, the present invention has as its object the reduction of the gap between the prepared speed signal and actual speed and improvement of the following characteristic of the servo object at the time of completion of deceleration. The servo positioning circuit according to the present invention will now be explained in detail. Figures 4A and 4B are views explaining the principle of the present invention. The present invention provides a servo circuit having a speed detection circuit 2 for detecting a real speed Vr from a position signal Ps from an object 1 under servo control; a speed error detection circuit 3 for generating an error ΔV between a target speed Vc and the real speed Vr; a position error detection circuit 4 for generating a position error signal ΔP from the position signal Ps; a switching unit 5 for switching connection of the servo object 1 to the speed error detection circuit 3 or the position error detection circuit 4; and a main processing unit 6 for controlling the switching of the switching unit 5, in the vicinity of the target position, speed control by the speed error detection circuit 3 being switched to position control by the position error detection circuit 4, wherein provision is made of a speed detection gain adjustment unit 2a in the speed detection circuit 2, and the main processing unit 6 measures the intervals T1 between the position signals and based on the measured value changes the detection gain G of the speed detection gain adjustment unit 2a. The interval T1 between position signals shows the actual speed. When the actual speed is faster than the scheduled speed, the prepared speed signal becomes too slow compared with the actual speed signal, while when the actual speed is slower than the scheduled speed, the prepared speed signal becomes too fast compared with the actual speed signal. Therefore, the prepared speed signal is corrected by changing the speed detection gain in accordance with the interval between position signals, that is, the actual speed. Figure 5 is a constitutional view of an embodiment of the present invention, and Fig. 6 is a constitutional view of a speed detection circuit of the constitution of Fig. 5. In the figures, elements the same as those shown in Fig. 1, Fig. 2, and Figs. 4A and 4B are shown by the same symbols. In Fig. 5, reference numeral 6a is a gain table, which stores the differential gain G according to the time difference (speed difference) ΔT. The differential gain G, assuming that the measured value of the interval of the track pulses is Tn and the predetermined value of a scheduled speed is Td and that ΔT = Tn - Td, is set to be proportional to ΔT so that if ΔT is positive, since the actual speed is slower than the scheduled speed, the gain is made small (Go-β) so that the prepared speed signal is be made slower (smaller), while if ΔT is negative, the gain is made large (Go+β). Reference numeral 6b is a difference counter, which is set with a difference value d which is decremented with each detection of a track crossing pulse, and which shows the remaining difference. Reference numeral 6c is a timer, which measures the intervals of the track crossing pulses. In Fig. 6, reference numerals 24 and 25 are multiplication type digital/analog converters DAC (D/A converters), which multiply a current gain G1 of the main processing unit 6 with the detected current from the amplifiers 20 and a differential gain G of the main processing unit 6 with the speed signal of the differential circuit 21 and output the results. DAC's 24 and 25 constitute a speed detection gain adjustment unit 2a. In this case, the detection current ic corresponds to the speed signal. Figure 7 is a flow chart of the seek processing of an embodiment of the present invention. Figure 8 is an explanatory view of the operation of an embodiment of the present invention. Referring to the figures, [1] The main processing unit (hereinafter referred to as the "MPU") 6 calculates a difference d in accordance with the track position and the current track position specified by an upper unit and sets it in the difference counter 6b. Next, the MPU 6 judges if the difference d is greater than twice a first difference d1. If the difference d is larger than twice the first difference d1, the first difference d1 is a period of deceleration. During the period of deceleration, control by measurement of the track crossing pulses is possible, so the control proceeds to step [2]. If it is not larger, then the deceleration period is short and the above control is meaningless, so the control proceeds to step [6]. [2] Next, the MPU 6 starts the speed control. That is, the MPU 6 orders coarse control (speed control), so the voice coil motor 1a is controlled in speed by the speed error signal ΔV of the speed error detection circuit 3. Further, in the speed detection circuit 2, the real speed Vr according to the set gain (G0) is produced. The MPU 6 monitors the track crossing pulses of the track crossing pulse generating circuit 8 and when detecting a track crossing pulse, refreshes the content of the difference counter 6b to (d-1). Further, the target speed curve is modified in accordance with the content of the difference counter 6b. The MPU 6 then judges if the content of the difference counter 6b is the scheduled first difference d1 at the start of the measurement and if not d1, returns to the detection of the track crossing pulses. [3] If the content of the difference counter 6b is d1, then the MPU 6 is made to start the timer 6c. Then, the MPU 6 monitors the track crossing pulses and if it detects a track crossing pulse, refreshes the difference counter 6b to (d-1) and stops the timer 6. [4] The MPU 6 reads the measured value Tn of the timer 6c and resets the timer 6c at each time. Then, the MPU 6 calculates the time differences ΔT with the predetermined value Td of the scheduled speeds of the various differences from [Tn - Td). Further, the MPU 6 refers to the gain table using ΔT as the key to find the differential gain G. If ΔT is positive, Tn>Td and the actual speed is slow, so a small (Go-β) differential gain is obtained to make the prepared speed signal Vr small, while if the opposite case, a large (Go+β) differential gain is obtained to make the prepared speed signal Vr large. The thus obtained differential gain G is set to the D/A converter 25 of the speed detection circuit 2 by the MPU 6. [5] Next, the MPU 6 investigates if the content of the difference counter 6b is the second difference d2 at the end of the measurement and if not d2, returns to step [3] to continue the measurement. If d2, the control proceeds to step [7] to stop the measurement. [6] On the other hand, at step [1], if the difference d is larger than twice the first difference d1, the same speed control as in step [2] is started. [7] The MPU 6 monitors the track crossing pulses and if it detects a track crossing pulse, refreshes the content of the difference d of the difference counter 6b to (d-1). [8] The MPU 6 then judges if the content of the difference counter 6b is "0" and if not "0", returns to step [7]. If the content of the difference counter 6b is "0", the vicinity of the target position has been reached. The MPU 6 then investigates the real speed Vr of the speed detection circuit 2 and judges if the real speed Vr is near zero of a fixed slice. [9] If the real speed Vr is near zero under a fixed slice, the MPU 6 waits for a certain time T and then switches the coarse/fine switching signal to fine. By this, the switching unit 5 switches to the fine (position control) side, and the voice coil motor 1a is controlled in position by the position error signal ΔP of the position error detection circuit 4. In this way, as shown in Fig. 8, during deceleration, in the interval from the difference value d1 at the scheduled start of the measurement to the difference value d2 of the end of the measurement, the interval (time) Tn of the track crossing pulses is measured. The difference ΔT with the values Td of the various differences preset is taken and the differential gain G determined. If ΔT is positive, the measured value Tn becomes larger than the set value Td and the actual speed is slower, so the differential term gain G is reduced by that difference. Conversely, if smaller than Td, the actual speed is faster, so the differential term gain G is raised by that difference. This control is performed n number of times (five times in Fig.8) from the first difference d1 to the second difference d2 so as to perform trial runs several times and set an averaged, appropriate gain. Further, the differences d1 and d2 are preferably close to the end of the deceleration. In the above embodiment, n number of times of measurement and gain settings were performed during the differences d1 and d2, but once is also sufficient. Further, compare the added n number of times of measurement values with a scheduled setting to obtain the difference. Further, in addition to the differential gain G, the current detection gain G1 may be made to change according to the measured value. Also, the gain table 6a need not be used, but calculation used to find the gain. Further, an explanation was made of a magnetic disk apparatus as an example of the servo object, but the invention may be applied to other apparatuses as well. As explained above, according to the present invention, the interval between position signals is measured and the speed detection gain changed based on the measured value, so there is little gap between the prepared speed signal and actual speed even during deceleration and it is possible to improve the following characteristic at the time of completion of deceleration. In particular, overshooting or undershooting due to relaxation of the magnetic flux of the voice coil motor, effects of weight in the seek direction, air flow due to rotation of the magnetic disk, or other outside disturbances is reduced, the maximum speed increased, and problem-free deceleration realized even with high speed operation.

Claims: A servo circuit for controlling the positioning of a servo object (1) under servo control to a target position by switching from speed control to position control in the vicinity of the target position, comprising: a speed detection means (2) for detecting a real speed based on a position signal (P s ) transferred from the servo object; a speed error detection means (3) for generating an error (ΔV) between a target speed and the real speed; a position error detection means (4) for generating a position error signal (ΔP) based on the position signal (P s ); a switching means (5) for switching connection of the servo object (1) to the speed error detection means (3) or the position error detection means (4); and a main processing means (6) for generating the target speed (V c ) in accordance with the position signal (P s ) from the servo object (1) and controlling the switching of the switching means; wherein a speed detection gain adjustment unit (2a) is provided in the speed detection means (2), characterised in that the main processing means (6) is arranged to measure the intervals (T n ) between the position signals (P s ), and changes the detection gain (G) of the speed detection gain adjustment unit (2a) in accordance with the measured values of the intervals (T n ). A servo circuit as claimed in claim 1, wherein said main processing means (6) comprises a gain table (6a) storing the differential gain (G) defined in proportional to the speed difference between the actual speed and the target speed, the actual speed being obtained by the interval (T n ) between position signals (P s ), and the target speed being prepared by the main processing means (6). A servo circuit as claimed in claim 1 or 2, wherein said main processing means further comprises a difference counter (6b) set with a difference value (d) which is decremented with each detection of a track crossing pulse, and showing the remaining difference. A servo circuit as claimed in claim 1, 2 or 3, wherein said main processing means (6) further comprises a timer (6c) measuring the intervals (T n ) of the track crossing pulses. A servo circuit as claimed in claim 1, wherein said speed detection means further comprises an amplifier (20) for amplifying a detection current (i c ), and a differential circuit (21) for differentiating the position signal (Ps) and obtaining a speed signal. A servo circuit as claimed in claim 1 or 5, wherein said speed detection gain adjustment unit (2a) comprises two multiplication type digital/analog converters (24,25), one multiplication type digital/analog converter (24) being input a first gain (G₁) of the main processing means (6) with the detection current (ic), and the other multiplication type digital/analog converter (25) being input a second gain (G₂) of the main processing means (6) with the speed signal of the differential circuit.

Inventors: HASHIMOTO SHUICHI, HASHIMOTO, SHUICHI
Applicants: FUJITSU LTD, FUJITSU LIMITED
Application year: 1990
Main classification: G11B21
IPC codes: G05D3, H02P25, G11B5, G11B21