Fall detection scheme using FFS

For a disk drive involving a disk; a head; and control circuitry having a servo control system operable to actuate the head, the control circuitry may be configured to determine a magnitude of acceleration readings, the acceleration readings involving at least three degrees of freedom, wherein when a magnitude of the acceleration readings is less than a first threshold, the control circuitry confirms a free fall, wherein when the magnitude is between the first and second threshold, the control circuitry confirms a tilt drop. During the tilt drop and the free fall, the control circuitry is further configured to actuate the head to park and monitor the shock impact.

BACKGROUND

FIG. 1shows a prior art disk format2comprising a number of servo tracks4defined by concentric servo sectors60-6Nrecorded around the circumference of each servo track, wherein data tracks are defined relative to the servo tracks4. Each servo sector6, comprises a preamble8for storing a periodic pattern, which allows proper gain adjustment and timing synchronization of the read signal, and a sync mark10for storing a special pattern used to synchronize to a servo data field12. The servo data field12stores coarse head positioning information, such as a servo track address, used to position the head over a target data track during a seek operation. Each servo sector6, further comprises groups of servo bursts14(e.g., A, B, C and D bursts), which comprise a number of consecutive transitions recorded at precise intervals and offsets with respect to a data track centerline. The groups of servo bursts14provide fine head position information used for centerline tracking while accessing a data track during write/read operations.

In the related art, there are free fall sensors (FFS) that are operable to detect a free fall event in response to an acceleration occurring in the disk drive due to the disk drive undergoing a free fall. The disk drive may undergo a free fall, for example, when a user drops the device containing the disk drive. During the free fall, a frequency response of the acceleration signal can be measured, and action can be taken depending on the frequency response. When a free fall is detected, the head is moved off the disk and parked in the ramp to protect against damage.

As disk drives are implemented in smaller and more mobile devices, such as mobile phones and tablets, the possibility of false positives increases for free fall detection. Such mobile devices may be used more vigorously in gaming, exercise or running situations, in comparison to laptops and desktops. If the head is parked during such situations, then the device may be inadvertently disabled by a false trigger of the free fall detection system, even though the mobile device is not in free fall and is being used legitimately. The quality of the free fall detection therefore needs modification to provide timely triggers to initiate the head parking and to reduce the trigger based on false positives (e.g., gaming motion, walking motion, etc.).

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

Some example embodiments described herein involve apparatuses and methods for a new free fall detection scheme to be used in an acceleration sensor or accelerometer equipped (e.g., three axis accelerometer, gyroscope, etc.) disk drive that is embedded in a mobile device, such as a tablet or mobile phone. In contrast to the related art, example embodiments involve a multi-mode detection scheme that includes free fall, tilt drop, and gaming mode detection to distinguish the different types of motion that could occur in a mobile device environment. In this manner, minor falls or tilts (e.g. <1-2 cm) and movement related to legitimate use (e.g., running, gaming, etc.) can be handled without triggering a false positive.

In the free fall mode detection, the mobile device can be configured to detect and confirm weightless free falls. Weightless free falls are a common and dangerous type of fall. To detect and confirm a weightless free fall, an accelerometer that measures at least three degrees of freedom can be utilized, such that magnitude of the acceleration outputs drop to 0 and stay near 0 during the falls. Such free falls can happen at any time during the usage of the device.

In the tilt drop mode detection, sensor outputs may vary at different sensor locations, supporting edges, tilt angles, and so on. One example of a tilt drop motion is when the mobile device is initially positioned at a tilted upright angle and then falls off from the position toward the table surface. The mobile device may fall around a supporting edge, wherein free-fall like fast motions may be unlikely before the tilt drop. During a tilt drop or a free fall, the control circuitry can be configured to park the head before the impact to the device occurs.

In the gaming mode detection, the mobile device can be configured to detect gaming mode motions, which can involve motions where the user is using the mobile device in a physical activity, such as playing a mobile game, jogging, etc. The three modes of detection can be based on thresholds of the magnitudes of the acceleration outputs, as described with respect toFIG. 3B.

FIG. 2Ashows a disk drive according to an example embodiment of the present inventive concept, having a disk16, a head18, and control circuitry20including a servo control system operable to actuate the head18over the disk16. The disk16includes embedded servo sectors320-32Nthat define a plurality of servo tracks34. The control circuitry20executes the flow diagram ofFIG. 2B. The operations inFIG. 2Bmay be implemented, for example, in the hard drive firmware. When the hard disk drive is in operation, the head is flying over the disk. Acceleration readings from one or more sensors are provided to the control circuitry (22). The control circuitry can then determine the magnitude of the acceleration based on the acceleration readings (24). If a first threshold is crossed, the control circuitry may configure the disk drive to enter free fall mode (26). If the magnitude of the acceleration did not cross the first threshold, and is in between the first threshold and a second threshold, then the control circuitry may configure the disk drive to enter tilt drop mode (28). The control circuitry may be configured to confirm if the device has entered the tilt drop or the free fall mode, and park the head upon confirming the mode (30).

In the example embodiment ofFIG. 2A, the disk16comprises embedded servo sectors320-32Nthat define a plurality of servo tracks34. The control circuitry20processes read signals36from the head18for feedback in controlling the head while implementing the flow diagram ofFIG. 2B. The control circuitry20generates a control signal38applied to a voice coil motor (VCM)40which rotates an actuator arm42about a pivot in order to actuate the head18to load the head to fly over the disk and to unload the head and park the head on a ramp.

Terms such as “first”, “second”, “third”, etc. are used for labeling purposes and are not meant to be limiting to any particular order. For example, in another example implementation by the control circuitry20, the control circuitry can utilize an additional warning mode before entering the free fall mode26when the magnitude of acceleration readings are beyond a first threshold. This first threshold can be configured depending on the desired implementation of the device to account for variance of measurements from the sensors. When this threshold is exceeded, then the control circuitry may proceed to entering the free fall mode26if the magnitude readings are below a second threshold. Additionally, a gaming mode may be initiated if the magnitude does not exceed the tilt drop mode or free fall mode thresholds, as described in further detail below.

FIG. 3Aillustrates a state diagram in accordance with an example embodiment. In a first normal state (300), the control circuitry is configured to allow the disk drive to operate normally while monitoring the acceleration from the sensors of the device. When the acceleration magnitude exceeds a warning threshold or changes from a nominal state, then the state can proceed to a warning qualification state (301) to determine if further detection is needed. If no further detection is needed, then the warning is disqualified, wherein the state can revert back to the normal state. The warning qualification state can determine if further detection is needed based on various attributes (e.g., time elapsed for the acceleration readings), depending on the desired implementation.

If further detection is needed, then the warning is qualified and the control circuitry can proceed to the free fall detection mode (302-1) to check for a free fall. The check for a free fall can be conducted based on one or more attributes, such as the magnitude of the outputs of the acceleration sensors with respect to a threshold. If a free fall is detected and confirmed over a period of time, then the control circuitry can configure the disk drive to park the head (304). If no free fall is detected or confirmed, the control circuitry can enter a gaming mode (303) wherein the control circuitry checks for tilt drop and free fall while permitting the device to perform normally. If no motion is detected after a period of time (e.g., 0.5 seconds or in accordance with a desired implementation) during the gaming mode, then the control circuitry can revert back to the normal state (300).

During the gaming mode (303), the magnitude of the acceleration sensor outputs are monitored to check for free falls (302-1) or enter a tilt drop mode (302-2) if excessive motion is detected. The tilt drop detection can be based on one or more attributes, such as the magnitude of the outputs of the acceleration sensors with respect to another threshold, or if the integration based on the difference between the magnitude and 1 g is positive, as described below. Tilt drop can be detected, for example, if the magnitude exceeds the threshold for the gaming mode and doesn't exceed the threshold for free fall detection, or if the integration based on the difference between the magnitude and 1 g is positive, as described below. If a tilt drop is detected, the control circuitry can be configured to park the head (304). Otherwise, the control circuitry can be configured to revert back to the normal state (300) or the gaming mode state (303), depending on the desired implementation.

When a tilt or free fall is detected and confirmed over a period of time (304), the control circuitry is configured to park the head and monitor the ensuing shock impact (305). The period of time can be chosen based on the configuration of the device and the desired implementation, and should be a time period that is sufficient for confirming a fall yet short enough to allow time for the head to park before an impact event. The impact will result in a frequency response by the outputs of the acceleration sensors, which will gradually dissipate to normal. When the impact is normal (e.g., the magnitude of the acceleration readings have reverted to 1 g), then the control circuitry loads the head back to the media (306), whereupon the control circuitry enters the gaming mode (303) before reverting to the normal mode (300).

FIG. 3Billustrates an example of the magnitude measurements based on acceleration sensor output, in accordance with an example embodiment. The control circuitry may navigate the various states in the state diagram ofFIG. 3Abased on the magnitude measurements as illustrated inFIG. 3B. The thresholds can be based on the Vector Sum (VS) of the outputs of the acceleration sensors. VS represents the magnitude of the vector addition of X, Y, Z-axis accelerations and can be formulated, for example, as VS=sqrt(X^2±Y^2±Z^2). The slope of the output of the accelerations sensors can also be utilized instead of the magnitude, depending on the desired implementation; however, the characteristics of the tilt drop may be more difficult to characterize in a slope based implementation.

When the mobile device is not undergoing any particular motion, VS will be substantially close to 1 g with some degree of variance for measurement error or nominal movement. During a free fall or a tilt fall, VS will approach 0. During the gaming mode, where the user is conducting operational motions such as playing a game or running, the VS will move up and down around 1 g. VS based thresholds can be implemented regardless of the orientation of the mobile device.

Weightless free falls tend to have a stronger sensor signature compared to other general falls. The VS in a free fall drops to 0 rather quickly and stays near 0. Two different thresholds can be utilized in the FFS detection. For example, when VS<Free Fall Threshold, the free fall detection algorithm can be executed; when VS is between the Free Fall Threshold and the General Fall Threshold, the tilt drop detection algorithm can be executed.

In an example implementation, the control circuitry can enter the gaming mode when VS>1.15 g. The intensity of the gaming motion can be determined by integrating (VS^2−1) after entering the gaming mode. The control circuitry can then maintain the gaming mode when the integration is >0.

Based on the design requirement and the acceleration sensor location, the FFS detection can be made more sensitive to detect the tilt drops. Without the history of the motion, it may be hard to distinguish tilt drops from normal user operational motions. Thus, integration saves the “motion history” to reduce the likelihood of false triggers.

Tilt drops tend to fall around a supporting edge and tend not to have large motions before the tilt drops. So when the mobile device is in the gaming mode, the tilt drop detection can be disabled, depending on the desired implementation. Further, because the tilt drops tend to fall around a supporting edge, sensor placement away from the supporting edge may aid in ensuring that the tilt drop can be detected. Free fall detection is not affected by the gaming mode.

The gaming mode can be exited if VS is, for example within a range of 0.72 g-1.2 g for 500 ms. Other ranges can be utilized depending on the desired implementation and the type of device. Thus, the gaming mode can significantly reduce false triggers, without sacrificing the protection for real free falls.

FIGS. 4A to 4Dillustrate example state changes based on acceleration readings, in accordance with an example embodiment. With reference toFIG. 3Afor the state graphs ofFIGS. 4A to 4D, the zero state represents the normal state300, the first state represents the warning qualification state301, the second state represents either the free fall detection mode302-1or the tilt drop detection mode302-2, the third state represents the gaming mode303, the fourth state represents the parking of the head304, the fifth state represents the head remaining parked while monitoring the shock impact305, and the sixth state represents the loading of the head back to the media306.

The integration graphs ofFIGS. 4A to 4Dare based on the difference between the acceleration magnitude and 1 g and the integration values are used to indicate the motion history of the device to prevent false triggers. For example, integration can be measured as integration=integration+(VS^2−1) or some variation thereof depending on the desired implementation.FIGS. 4A to 4Dillustrate example implementations of the integration measurements depending on the situation. The integration may start to decrease sharply during a fall and may increase when the acceleration magnitude exceeds a threshold (e.g., when the user is moving the device while conducting some activity).

FIG. 4Aillustrates the flow of the state changes based on the acceleration magnitude for a free fall. As illustrated inFIG. 4A, during the free fall of the mobile device, the magnitude of the accelerometer readings quickly go to zero. From the acceleration readings, the control circuitry can enter into the warning qualification state301at400to determine if the device is entering a free fall mode, a tilt drop mode or a gaming mode. In the example ofFIG. 4A, the control circuitry determines that the device is in free fall mode after a 15 ms qualifier, so the free fall detection mode302-1is entered at401to detect a free fall. After confirmation that the device is in free fall by observing the acceleration magnitude over a 40 ms time interval, the head is then parked304at402before the impact event. The parking may take up to 70 ms to conduct, so the confirmation timing of the fall detection may be adjusted depending on the device and the desired implementation to ensure that the head is parked before an impact occurs. Upon impact to the device as shown at403, the head remains parked and the acceleration magnitude is observed305until the acceleration magnitude stabilizes back towards 1 g. When the magnitude stabilizes, the head can be unloaded306and the device can enter gaming mode303for some time as shown at404, whereupon the control circuitry can configure the device to revert back to normal mode300as shown at405.

FIG. 4Billustrates the flow of the state changes for detecting tilt drops, in accordance with an example embodiment. As illustrated inFIG. 4B, the magnitude of the sensor output may not necessarily go to zero in a tilt drop as shown at406. In the example as illustrated inFIG. 4B, when VS<0 the integration can be measured as integration=integration+(max(VS,0.5 g))^2−1. In this example implementation, if the integration is roughly −10 as shown at411, then the control circuitry enters the tilt drop detection mode302-2. Once the tilt drop is confirmed over a period of time (e.g., 15 ms) at407, the control circuitry parks the head304, which can take up to 70 ms as shown a408. The head remains parked as shown at410during the impact409until the oscillation of the magnitude begins to stabilize. Once the oscillation stabilizes, the control circuitry enters the gaming mode303, whereupon the control circuitry can subsequently enter the normal state300afterwards.

FIG. 4Cillustrates the flow of the state changes for detecting the gaming mode, in accordance with an example embodiment. The gaming mode303can be used to reduce false triggers for the fall detection. As illustrated inFIG. 4C, the magnitude oscillates around the 1 g mark. In the example implementation shown inFIG. 4C, the threshold is set at 1.2 g, so that if VS>1.2 g, then integration=integration+(VS^2−1)*2, otherwise, integration=integration+(VS^2−1). When the integration is greater than zero as illustrated in the integration graph, then the control circuitry enters the gaming mode303as shown at412.

FIG. 4Dillustrates the flow of the state changes for a free fall detection while gaming motions are occurring, in accordance with an example embodiment. When movement beyond a nominal threshold is detected, the control circuitry enters the warning qualification state301at413. Because the integration is greater than zero as shown at420, the control circuitry enters the gaming mode303after a confirmation (e.g. 15 ms) as shown at414. During the gaming mode, the magnitude oscillates around 1 g. In the example ofFIG. 4D, the user drops the device during use, which causes the magnitude to sharply decrease to zero. As the magnitude decreases towards zero, the control circuitry detects and confirms the free fall302-1at415, and parks the head before the impact at416. Upon impact to the device, the head remains parked and acceleration magnitude is observed305as shown at417until the acceleration magnitude stabilizes back towards 1 g. When the magnitude stabilizes, the head can be unloaded306as shown at418and the device can enter gaming mode303for some time as shown at419, whereupon the control circuitry can configure the device to revert back to normal mode300. The time period that the device enters the gaming mode303after the head is loaded305can be set by initializing the integration to a positive value. In the example ofFIG. 4D, the integration is initialized to 2000 after the head is loaded as shown at421.

FIG. 5illustrates a flow diagram of an example embodiment of the present inventive concept. The flow begins at500, wherein the magnitude of the acceleration readings may be monitored. The magnitude may be a vector sum of all of the acceleration readings. The magnitude is continuously measured until the measurements exceed a warning threshold, whereupon the flow continues to501. At501, a check is performed to determine if the magnitude is less than a first threshold. If so (Y), then the flow proceeds to503to confirm that the device is in free fall over a period of time and determine from the confirmation whether to park the head at505or to revert back to monitoring at500.

Otherwise (N), the flow proceeds to502, wherein a check is performed to determine if the magnitude is between the first threshold and a second threshold. If so (Y), then the flow proceeds to confirm that the device is undergoing a tilt drop over a period of time determine from the confirmation whether to park the head at505or to revert back to monitoring at500. The confirmation can also involve checking the integration to determine whether the integration is negative. If the magnitude is not between the first and second threshold (N) and motion is detected, then the flow may execute a gaming mode process507during which the flow reverts back to500to monitor the magnitude of the acceleration readings. During the gaming mode process, the flow at502may be disabled while there is motion occurring at the device so that only free fall detection is executed, as explained inFIGS. 3A and 4C. The flow at502may be re-executed when the motion returns back to nominal readings (e.g. around 1 g) or after a period of time elapses (e.g., 500 ms).

When a tilt drop or a free fall is detected, the flow proceeds to505to park the head and monitor the impact. When the impact occurs, the frequency response of the magnitude may be measured. When the magnitude measurements stabilize (e.g., return to within a range of 1 g), the flow proceeds to load the head at506, and execute a gaming mode process at507.

FIG. 6illustrates a flow diagram of a gaming mode process507in accordance with an example embodiment. At601, when the gaming mode process is executed, the tilt drop detection is disabled. At602, the magnitude of the acceleration readings is monitored and the integration is calculated. At603, if the integration is positive (Y) then the gaming mode is maintained and the flow proceeds to601to keep the tilt drop detection disabled. If the integration is not positive (N) then the flow proceeds to604to re-enable the tilt drop detection and exit the gaming mode process after a period of time elapses. The period of time can be set depending on the desired implementation (e.g., based on the device configuration, preset at 500 ms, etc.)

Any suitable control circuitry may be employed to implement the flow diagrams in the example embodiments of the present invention, such as any suitable integrated circuit or circuits. For example, the control circuitry may be implemented within a read channel integrated circuit, or in a component separate from the read channel, such as a disk controller, or certain actions described above may be performed by a read channel and others by a disk controller. In one example embodiment, the read channel and disk controller are implemented as separate integrated circuits, and in an alternative example embodiment they are fabricated into a single integrated circuit or system on a chip (SOC). In addition, the control circuitry may include a suitable preamp circuit implemented as a separate integrated circuit, integrated into the read channel or disk controller circuit, or integrated into an SOC.

In one example embodiment, the control circuitry comprises a microprocessor executing instructions, the instructions being operable to cause the microprocessor to perform the actions of the flow diagrams described herein. In some embodiments, certain actions may be omitted, combined, and/or performed in a different order than shown here. The instructions may be stored in any computer-readable medium. In one example embodiment, they may be stored on a non-volatile semiconductor memory external to the microprocessor, or integrated with the microprocessor in a SOC. In another example embodiment, the instructions are stored on the disk media and read into a volatile semiconductor memory when the disk drive is powered on. In yet another example embodiment, the control circuitry comprises suitable logic circuitry, such as state machine circuitry.

One example embodiment involves a disk drive comprising: a disk; a head; and control circuitry comprising a servo control system operable to actuate the head, the control circuitry configured to: determine a magnitude of acceleration readings, the acceleration readings involving at least three degrees of freedom, wherein when a magnitude of the acceleration readings is less than a first threshold, the control circuitry detects and confirms a free fall, wherein when the magnitude is between the first and second threshold, the control circuitry detects and confirms a tilt drop. During the tilt drop and the free fall, the control circuitry is further configured to actuate the head to park and monitor the shock impact. When the impact is over (e.g., based on the stabilization of the magnitude, such as the magnitude being within a range of 1 g), the control circuitry is further configured to load the head to media and proceed to a gaming mode. The control circuitry is configured to remain in the gaming mode until a period of time elapses.

Another example embodiment involves a control circuitry configured to: determine a magnitude of acceleration readings, the acceleration readings involving at least three degrees of freedom, wherein when a magnitude of the acceleration readings is less than a first threshold, the control circuitry detects and confirms a free fall, wherein when the magnitude is between the first and second threshold, the control circuitry detects and confirms a tilt drop. During the tilt drop and the free fall, the control circuitry is further configured to actuate the head of a disk drive to park and monitor the shock impact. When the impact is over (e.g., based on the stabilization of the magnitude, such as the magnitude being within a range of 1 g), the control circuitry is further configured to load the head to media and proceed to a gaming mode. The control circuitry is configured to remain in the gaming mode until a period of time elapses.

Another example embodiment involves a device, comprising: a disk; a head; one or more acceleration sensors, and control circuitry comprising a servo control system operable to actuate the head, the control circuitry configured to: determine a magnitude of acceleration readings from the one or more acceleration sensors, the acceleration readings involving at least three degrees of freedom, wherein when a magnitude of the acceleration readings is less than a first threshold, the control circuitry detects and confirms a free fall, wherein when the magnitude is between the first and second threshold, the control circuitry detects and confirms a tilt drop. During the tilt drop and the free fall, the control circuitry is further configured to actuate the head to park and monitor the shock impact. When the impact is over (e.g., based on the stabilization of the magnitude, such as the magnitude being within a range of 1 g), the control circuitry is further configured to load the head to media and proceed to a gaming mode. The control circuitry is configured to remain in the gaming mode until a period of time elapses. The one or more acceleration sensors may be positioned away from a tilt edge of the device at a distance towards the center of the device such that the one or more acceleration sensors record measurements from all of the at least three degrees of freedom when the device undergoes a tilt drop from the tilt edge. The device may involve a mobile device, such as a tablet or a mobile phone, or may also be a laptop.

Another example embodiment involves a method, comprising: determining a magnitude of acceleration readings, the acceleration readings involving at least three degrees of freedom, wherein when a magnitude of the acceleration readings is less than a first threshold, detecting and confirming a free fall, wherein when the magnitude is between the first threshold and a second threshold, detecting and confirming a tilt drop. During the tilt drop and the free fall, the method further includes actuating the head of the disk drive to park and monitoring the shock impact. When the impact is over (e.g., based on the stabilization of the magnitude, such as the magnitude being within a range of 1 g), the method further includes loading the head to media and remaining in a gaming mode until a period of time elapses.