US20090240462A1 - System and Method for Capturing an Event in MEMS Inertial Sensors - Google Patents

System and Method for Capturing an Event in MEMS Inertial Sensors Download PDF

Info

Publication number
US20090240462A1
US20090240462A1 US12/408,532 US40853209A US2009240462A1 US 20090240462 A1 US20090240462 A1 US 20090240462A1 US 40853209 A US40853209 A US 40853209A US 2009240462 A1 US2009240462 A1 US 2009240462A1
Authority
US
United States
Prior art keywords
event
memory
acceleration data
capturing
acceleration
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.)
Abandoned
Application number
US12/408,532
Inventor
James M. Lee
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Analog Devices Inc
Original Assignee
Analog Devices Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Analog Devices Inc filed Critical Analog Devices Inc
Priority to US12/408,532 priority Critical patent/US20090240462A1/en
Assigned to ANALOG DEVICES, INC. reassignment ANALOG DEVICES, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: LEE, JAMES M.
Publication of US20090240462A1 publication Critical patent/US20090240462A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01PMEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
    • G01P15/00Measuring acceleration; Measuring deceleration; Measuring shock, i.e. sudden change of acceleration
    • G01P15/18Measuring acceleration; Measuring deceleration; Measuring shock, i.e. sudden change of acceleration in two or more dimensions
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01PMEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
    • G01P1/00Details of instruments
    • G01P1/12Recording devices
    • G01P1/127Recording devices for acceleration values
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01PMEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
    • G01P15/00Measuring acceleration; Measuring deceleration; Measuring shock, i.e. sudden change of acceleration
    • G01P15/02Measuring acceleration; Measuring deceleration; Measuring shock, i.e. sudden change of acceleration by making use of inertia forces using solid seismic masses
    • G01P15/08Measuring acceleration; Measuring deceleration; Measuring shock, i.e. sudden change of acceleration by making use of inertia forces using solid seismic masses with conversion into electric or magnetic values
    • G01P15/0891Measuring acceleration; Measuring deceleration; Measuring shock, i.e. sudden change of acceleration by making use of inertia forces using solid seismic masses with conversion into electric or magnetic values with indication of predetermined acceleration values
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • G11B19/04Arrangements for preventing, inhibiting, or warning against double recording on the same blank or against other recording or reproducing malfunctions
    • G11B19/041Detection or prevention of read or write errors
    • G11B19/043Detection or prevention of read or write errors by detecting a free-fall condition

Definitions

  • the invention generally relates to MEMS inertial sensors and, more particularly, the invention relates to capturing an event in MEMS inertial sensors.
  • MEMS inertial sensor devices e.g., accelerometers or gyroscopes
  • MEMS inertial mass formed with one or more fixed, non-moving structures.
  • the inertial mass may be suspended in a plane above a substrate and movable with respect to the substrate.
  • the movable structure and the fixed structures form a capacitor having a capacitance that changes when the movable structure moves relative to the fixed structures in response to applied forces, such as along a predetermined axis of the device, e.g., x-, y- and z-axes.
  • inertial sensors may be used for monitoring the interaction of users with electronic devices, such as gaming devices, cell phones, personal digital assistants, etc.
  • One or more inertial sensors in the devices may sense a movement above a particular threshold or a change in orientation.
  • the sensors usually cooperate with a central computer or microprocessor that both coordinates their function and responds to specific types of detected movement.
  • the microprocessor or controller periodically or continuously monitors the acceleration data from the inertial sensor to determine a state or condition of the device.
  • the microprocessor may cause systems within the device to respond in a specified manner. For example, if the sensor(s) sense a tap by the user (e.g., similar to a mouse click), the device's microprocessor may then initiate a response, such as turning on the device.
  • the microprocessor may not capture important motion data. For example, data collected right before and after the trigger event oftentimes may be useful, but may not be fully captured. For instance, a user may pick up and move a device in a selected manner.
  • the microprocessor may detect the movement in one second and then instruct the device to start saving data, causing an even further delay. In this case, the device may not capture the first second of motion plus any delay in receiving the instructions. In certain instances, such as gesture recognition, this valuable information may be lost.
  • a method of capturing an event in a MEMS accelerometer stores acceleration data in memory, detects a trigger event based on the acceleration data, and modifies a configuration of the memory so that a specified amount of the acceleration data is saved.
  • a MEMS event capturing system includes an inertial sensor having sensor circuitry and event capturing circuitry implemented with the sensor circuitry.
  • the event capturing circuitry includes memory capable of storing acceleration data received from the inertial sensor and a detection module operatively coupled with the memory that detects a trigger event.
  • the event capturing circuitry further includes a management module operatively coupled with the memory and the detection module that modifies the memory's storage configuration when the trigger event is detected.
  • the specified amount of acceleration data may be stored before the detected trigger event.
  • the method may further include processing the specified amount of the acceleration data in order to recognize the event.
  • the event may be a gesture.
  • modifying a configuration of the memory may include varying an amount of the acceleration data stored.
  • modifying a configuration of the memory may include modifying the configuration from a stream buffer to a first-in-first-out buffer.
  • detecting a trigger event may also include capturing an acceleration bias, measuring acceleration at a predetermined period of time, calculating a change in acceleration using the measured acceleration and the acceleration bias, and comparing the change in acceleration to a threshold to detect the trigger event.
  • the system may further include a microprocessor operatively coupled with the event capturing circuitry.
  • the microprocessor may be capable of processing the acceleration data in order to recognize an event, which may be a gesture.
  • the inertial sensor may be formed on a die, and the sensor circuitry and event capturing circuitry may be formed on or in the same die.
  • the sensor circuitry and event capturing circuitry may be formed on or in a first die, and the inertial sensor may be formed on or in another die that is in communication with the first die.
  • the inertial sensor may be an accelerometer or a gyroscope.
  • the memory may be capable of storing a fixed amount or a variable amount of acceleration data received from the inertial sensor.
  • Illustrative embodiments of the invention may be implemented as a computer program product having a computer usable medium with computer readable program code thereon.
  • the computer readable code may be read and utilized by a computer system in accordance with conventional processes.
  • FIG. 1 schematically shows a simplified view of a sensor system in accordance with illustrative embodiments of the invention
  • FIG. 2 schematically shows an event capturing system in accordance with illustrative embodiments of the invention
  • FIG. 3 shows a process of capturing an event in a MEMS accelerometer according to embodiments of the present invention.
  • FIG. 4 shows a process of detecting activity in a MEMS accelerometer according to embodiments of the present invention.
  • Various embodiments of the present invention provide a system and method for capturing an event, such as a specific movement or gesture, in inertial sensor systems. This is accomplished with an event capturing system that detects a trigger event and then modifies the memory's configuration based on the trigger event so that a specified amount of acceleration data is saved or preserved in the memory.
  • the trigger event is detected with a detection module comprising digital logic and state machines coupled with the inertial sensor.
  • the event capturing system, with its detection module may be coupled with one or more sensors to effectively manage different conditions of the device without interaction with the device's central computer or microprocessor (excluding the sensor's interaction with the microprocessor during its initial configuration).
  • the inertial sensor does receive some initial input from the microprocessor, such as initial configurations or settings, e.g., threshold values, which may be set manually by the user or automatically.
  • initial configurations or settings e.g., threshold values
  • Embedding the detection functionality with the event capturing system may more effectively automate power management since only the sensor and the event capturing system may need to be powered, rather than the device's microprocessor.
  • the sensor is an accelerometer
  • the functionality may be embedded in the accelerometer circuitry. Details of illustrative embodiments are discussed below.
  • various embodiments may include a sensor system 2 having one or more inertial sensors 4 that communicate with a central computer or microprocessor 6 through some interconnection medium 8 .
  • the sensor system 2 may also include one or more event capturing systems 10 in communication with the inertial sensor(s) 4 .
  • the inertial sensor(s) 4 may produce data values, e.g., motion data related to the detected movement of an object, which may be transmitted to the microprocessor 6 via interconnection 8 and/or the event capturing system 10 through the event capturing system's interface 12 , as discussed in more detail below.
  • FIG. 1 shows two inertial sensors 4 with one event capturing system 10 , one sensor 4 may be used with one or more event capturing systems 10 and/or two or more inertial sensors 4 may be used with one or more event capturing systems 10 .
  • FIG. 2 schematically shows a block diagram of an event capturing system 10 in accordance with illustrative embodiments of the invention.
  • the event capturing system 10 may include an interface 12 for communicating with external devices, such as the inertial sensor(s) 4 (e.g., for receiving data produced by the sensors and sending data to the sensors) or the microprocessor 6 , and a detection module 14 for processing the data values received and detecting whether certain types of events have occurred (e.g., a trigger event, such as an activity event, a tap/double tap event, a free fall event, etc.).
  • the event capturing system 10 may also include memory 16 for storing or collecting the data values received from the external devices and the data values processed by the detection module 14 .
  • the event capturing system 10 may also include a management module 18 that may modify the memory's storage configuration when the event is detected by the detection module 14 .
  • the functionality of the event capturing system 10 is discussed in greater detail below with regard to embodiments of its implementation.
  • the management module 18 may also include other functionality, such as the capability to modify the sensor's configuration, coordinate the functionality of the detection module 14 , and coordinate the functionality of the sensor(s) 4 and a sensor management system with the device's microprocessor 6 .
  • This additional functionality of the management module 18 is discussed in more detail in co-pending applications entitled ACTIVITY DETECTION IN MEMS ACCELEROMETERS, attorney docket number 2550/C35, and MANAGEMENT SYSTEM FOR MEMS INERTIAL SENSORS, attorney docket number 2550/C38, which are filed on the same day as the present application, and which are incorporated by reference herein in their entirety.
  • FIG. 3 shows a process of capturing an event in a MEMS accelerometer.
  • the process begins at step 30 , which establishes or sets a trigger event.
  • the trigger event may be a specified activity level or threshold (e.g., sensor movement greater than 1 g.), freefall motion, a tap, and/or a double tap.
  • the trigger event may be set to one trigger event or one or more trigger events selected from a list of events.
  • the trigger event(s) may be manually selected by the user or automatically set, such as a default trigger event.
  • the management module 18 may establish or modify the existing trigger event(s) depending on various detected states of the device.
  • one or more inertial sensors 4 produce data values, which are then collected or stored in memory 16 .
  • the detection module 14 operatively coupled to the memory 16 , may process the data values received and detect that a trigger event has occurred (step 50 ).
  • the trigger event may be activity, and the detection module 14 may detect that the MEMS device is active or moving, as described in more detail below with regard to FIG. 4 .
  • the detection module 14 may inform the management module 18 that a trigger event has occurred.
  • the management module 18 may then modify the configuration of the memory 16 in step 60 .
  • the memory 16 may initially store or collect the data values received in a stream buffer mode or type of configuration.
  • a stream buffer contains a specified amount of the most recent data received, depending on the size of the buffer's memory (e.g., a minute's worth of the most recent data).
  • the oldest data is written over or removed and replaced with the newest data received.
  • the memory 16 may temporarily collect or store a limited amount of data, and then gradually throw it out if a trigger event is not detected and the data is thus unneeded.
  • the management module 18 may modify the memory's 16 configuration so that a certain amount of older data is not written over and may be preserved for later processing, e.g., a certain amount before and/or after the trigger event. For example, the management module 18 may instruct or switch the memory 16 from a stream buffer mode to a first-in-first-out (FIFO) buffer mode or type of configuration. As well known to those skilled in the art, a FIFO buffer does not allow newer data to be saved when the buffer is full, so older data is preserved. The amount of data saved from one configuration to another may be a fixed or a variable amount of data.
  • the amount of data to be saved may be set automatically or manually and may be the same amount of data before and after the trigger event (e.g., 30 seconds before and after the trigger event) or different amounts of data before and after the trigger event (e.g., 25 seconds before and 50 seconds after the trigger event).
  • the management module 18 may contain the instructions or information on the parameters and length of time to be saved. In some embodiments, this may be implemented by the management module 18 resetting a pointer in the FIFO buffer to a selected point in time before the trigger event and then setting a byte count to instruct the FIFO buffer to collect or save a certain amount of data.
  • the memory 16 may initially be collecting or saving one minute worth of data in a stream buffer mode.
  • the memory 16 contains one minute of data before the trigger event.
  • the management module 18 may modify the configuration of the memory 16 to a FIFO buffer mode, reset the FIFO pointer to forty seconds before the trigger event, and have the byte count set so that the FIFO collects forty seconds more worth of data after the trigger event. If a smaller or larger amount of data is desired, then the management module 18 may change the byte count so that more or less data is collected or stored.
  • the management module 18 modifies the memory's storage configuration so that a specified amount of motion data is saved in memory 16 .
  • the data optionally may be processed or analyzed in step 70 , e.g., by the microprocessor 6 or the detection module 14 .
  • the captured data may remain in memory 16 or some of the data, or even all, may be flushed or removed from the memory 16 .
  • the configuration of the memory 16 may be returned to a stream buffer mode where it may collect or store data until another trigger event is detected.
  • the detection module 14 may detect a data ready event, which signals that there is some data in the memory 16 .
  • the detection module 14 may detect an overrun or watermark event in the memory 16 , which may signal that the memory 16 is becoming full and newer data may be lost.
  • one trigger event may be activity, and the detection module 14 may detect that the MEMS device is active or moving.
  • FIG. 4 shows a process of detecting activity that may be performed by the event capture system's 10 detection module 14 according to illustrative embodiments of the present invention.
  • the detection module 14 may include a computational component and a comparator (not shown) as discussed further below.
  • the process begins at step 80 , which decides whether to start looking for activity.
  • the detection module 14 may start to look for activity automatically at designated times, (e.g., when the device is turned on or at periodic intervals) or manually, (e.g., when the user actively initiates a request such as tapping on a device screen).
  • the management module 18 may instruct the detection module 14 to start to look for activity once inactivity is detected (inactivity detection is discussed in greater detail in co-pending applications entitled ACTIVITY DETECTION IN MEMS ACCELEROMETERS, attorney docket number 2550/C35, and MANAGEMENT SYSTEM FOR MEMS INERTIAL SENSORS, attorney docket number 2550/C38, which are filed on the same day as the present application, and which are incorporated by reference herein in their entirety).
  • an acceleration offset or bias may be captured upon the start of looking for activity. This may be accomplished by having the detection module 14 capture a snap-shot of the current acceleration or orientation of the device and digitally store the value as the acceleration bias in memory 16 .
  • the acceleration of the device may be measured by the sensor(s) 4 and the data values stored in memory 16 .
  • the acceleration may be measured on one or more axes of the device (e.g., x-, y-, and/or z-axis), which may be determined automatically or manually (e.g., set by the user).
  • the accelerometer may sample the acceleration data at a data rate.
  • the management module 18 may determine the sensor's 4 data rate depending on the current detected state of the device by the detection module 14 . For example, the accelerometer sample rate may be set to a desired “awake” mode or more frequent sampling rate when activity is detected or monitored by the detection module 14 .
  • the accelerometer sample rate may be set to a desired “sleep” mode or more infrequent sampling rate when inactivity is detected/monitored.
  • the management module 18 may set a default value for the sensor's 4 sample rate, e.g., sleep mode sampling rate, awake mode sampling rate, or some other sampling rate, until the detection module 14 determines the current detected state of the device. Although one mode is discussed for when activity or inactivity is detected/monitored, the management module 18 may set two or more different modes during a given state of the device.
  • the detection module 14 calculates the change in acceleration and verifies whether that change is greater than or equal to a threshold.
  • the detection module 14 may determine the change in acceleration by calculating the difference between the current measured acceleration and the digitally stored acceleration bias using the computational component.
  • the detection module 14 may then compare an absolute value of the change in acceleration to a threshold value using the comparator.
  • the detection module 14 performs these calculations and the measured acceleration values, the calculated difference and the threshold value may be stored in the memory 16 .
  • the threshold may be set automatically or manually and may be the same or different for different axes. If the change in acceleration is less than the threshold, then the process returns to step 100 where the acceleration may be measured again. If the change in acceleration is greater than or equal to the threshold, then the process proceeds to step 120 , where activity is detected.
  • the detection module 14 When activity is detected by the detection module 14 , it may inform the management module 18 of the current detected state of the device. The management module 18 may then modify the memory's 16 configuration so that it saves a selected amount of data, e.g., a certain amount before and/or after the trigger event, as discussed above. In addition, or alternatively, the management module 18 may send instructions or parameters to the inertial sensor(s) 4 via the interface 12 as discussed above (e.g., setting sampling rates), and may send instructions back to the detection module 14 , e.g., start to look for inactivity. Thus, the detection module 14 may optionally start to look for inactivity once activity is detected.
  • FIG. 4 discusses detecting activity, other embodiments may use other techniques for detecting activity trigger events.
  • other embodiments may use other techniques for detecting a trigger event, and the trigger event may include other events than activity as discussed above.
  • the trigger event may be free fall detection, tap/double tap detection, event ready detection, watermark detection, etc.
  • discussion of detecting a specific trigger event is exemplary and not intended to limit the scope of various embodiments of the invention.
  • the management module 18 may set parameters in the detection module 14 and/or the sensor(s) 4 along with, or instead of, the memory 16 .
  • inertial sensors 4 such as accelerometers are discussed above, principles of illustrative embodiments may apply to other inertial sensors or sensor devices, such as MEMS gyroscopes and MEMS pressure sensors or microphones. Accordingly, discussion of inertial sensors is exemplary and not intended to limit the scope of various embodiments of the invention.
  • the detection module 14 and/or the management module 18 may be a single integrated unit having the discussed functionality, and/or a plurality of interconnected, separate functional devices. Reference to a “module” therefore is for convenience and not intended to limit its implementation. Moreover, the various functionalities within the detection module 14 and/or the management module 18 may be implemented in any number of ways, such as by means of one or more application specific integrated circuits or digital signal processors, or the discussed functionality may be implemented in software.
  • certain motion detection may be determined independently of one another and/or concurrently. In some embodiments, certain motion detection (e.g., activity detection) may be dependent upon detecting other types of motion (e.g., detecting inactivity) and vise-versa.
  • Various embodiments may provide efficient management of a MEMS accelerometer by allowing the trigger event detection to be performed by the event capturing system 10 , which is coupled to the inertial sensor(s) 4 , without interaction with the device's microprocessor 6 .
  • the event capturing system 10 coordinates the inertial sensor's functions and responds to specific types of detected movement.
  • benefits may be realized, such as achieving maximal power savings since only the sensor 4 and event capturing system 10 may need to be powered, rather than the device's microprocessor 6 .
  • event capturing circuitry may be implemented as part of the sensor-specific circuitry.
  • the sensor is an accelerometer
  • all or part of event capturing circuitry may be integrated with the accelerometer or sensor circuitry.
  • the event capturing circuitry may include the activity detection function, which may be embedded in the accelerometer for power control of the end device.
  • the event capturing circuitry may detect an acceleration above a particular threshold or a change in orientation and transmit such motion data to other circuitry for further processing.
  • Sensor-specific circuitry that includes the event capturing circuitry may be on the same chip or die as the sensor itself, or on a different chip or die.
  • the sensor-specific circuitry with the event capturing circuitry may be implemented on an application specific integrated circuit (ASIC), while the sensor may be on a sensor chip with no circuitry (other than pads for wirebonding with the ASIC). Both the ASIC and sensor chip may be within a single package, or in separate packages.
  • ASIC application specific integrated circuit
  • Embodiments may be implemented as a computer program product for use with a computer system.
  • Such implementation may include a series of computer instructions fixed either on a tangible medium, such as a computer readable medium (e.g., a diskette, CD-ROM, ROM, or fixed disk) or transmittable to a computer system, via a modem or other interface device, such as a communications adapter connected to a network over a medium.
  • the medium may be either a tangible medium (e.g., optical or analog communications lines) or a medium implemented with wireless techniques (e.g., microwave, infrared or other transmission techniques).
  • the series of computer instructions may embody all or part of the functionality previously described herein with respect to the method and system.
  • Such computer instructions may be written in a number of programming languages for use with many computer architectures or operating systems.
  • embodiments may be implemented in a procedural programming language (e.g., “C”) or an object oriented programming language (e.g., “C++”).
  • Alternative embodiments of the invention may be implemented as pre-programmed hardware elements, other related components, or as a combination of hardware and software components.
  • Such instructions may be stored in any memory device, such as semiconductor, magnetic, optical or other memory devices, and may be transmitted using any communications technology, such as optical, infrared, microwave, or other transmission technologies.
  • a computer program product may be distributed as a removable medium with accompanying printed or electronic documentation (e.g., shrink wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the network (e.g., the Internet or World Wide Web).
  • some embodiments of the invention may be implemented as hardware, software (e.g., a computer program product), or a combination of both software and hardware.

Abstract

A method of capturing an event in a MEMS accelerometer stores acceleration data in memory, detects a trigger event based on the acceleration data, and modifies a configuration of the memory so that a specified amount of the acceleration data is saved. A MEMS event capturing system includes an inertial sensor having sensor circuitry and event capturing circuitry implemented with the sensor circuitry. The event capturing circuitry includes memory capable of storing acceleration data received from the inertial sensor and a detection module operatively coupled with the memory that detects a trigger event. The event capturing circuitry also includes a management module operatively coupled with the memory and the detection module that modifies the memory's storage configuration when the trigger event is detected.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This patent application claims priority to U.S. Provisional Patent Application No. 61/038,594 filed Mar. 21, 2008, entitled ACTIVITY DETECTION IN MEMS ACCELEROMETERS, U.S. Provisional Patent Application No. 61/049,590 filed May 1, 2008, entitled MANAGEMENT SYSTEM AND METHOD FOR MEMS INERTIAL SENSORS, and U.S. Provisional Patent Application No. 61/078,923 filed Jul. 8, 2008, entitled SYSTEM AND METHOD FOR CAPTURING AN EVENT IN MEMS INERTIAL SENSORS, each disclosure of which is incorporated by reference herein in its entirety.
  • This patent application is also related to U.S. patent application entitled ACTIVITY DETECTION IN MEMS ACCELEROMETERS having Attorney Docket Number 2550/C35 and U.S. patent application entitled MANAGEMENT SYSTEM FOR MEMS INERTIAL SENSORS having Attorney Docket Number 2550/C38, which are filed on the same day as the present application, each disclosure of which is incorporated by reference herein in its entirety.
  • FIELD OF THE INVENTION
  • The invention generally relates to MEMS inertial sensors and, more particularly, the invention relates to capturing an event in MEMS inertial sensors.
  • BACKGROUND OF THE INVENTION
  • A variety of different applications use sensor systems to detect the movement of an underlying object. Sensors employing microelectromechanical systems (MEMS) devices are increasingly used in such applications due to their relatively small size and their capability to detect relatively small changes in the measured item. MEMS inertial sensor devices, e.g., accelerometers or gyroscopes, typically employ a movable, inertial mass formed with one or more fixed, non-moving structures. For example, in a MEMS accelerometer, the inertial mass may be suspended in a plane above a substrate and movable with respect to the substrate. The movable structure and the fixed structures form a capacitor having a capacitance that changes when the movable structure moves relative to the fixed structures in response to applied forces, such as along a predetermined axis of the device, e.g., x-, y- and z-axes.
  • Currently, among other things, inertial sensors may be used for monitoring the interaction of users with electronic devices, such as gaming devices, cell phones, personal digital assistants, etc. One or more inertial sensors in the devices may sense a movement above a particular threshold or a change in orientation. The sensors usually cooperate with a central computer or microprocessor that both coordinates their function and responds to specific types of detected movement.
  • Typically, the microprocessor or controller periodically or continuously monitors the acceleration data from the inertial sensor to determine a state or condition of the device. Upon detection of a specific type of movement, the microprocessor may cause systems within the device to respond in a specified manner. For example, if the sensor(s) sense a tap by the user (e.g., similar to a mouse click), the device's microprocessor may then initiate a response, such as turning on the device. In this scenario, however, the microprocessor may not capture important motion data. For example, data collected right before and after the trigger event oftentimes may be useful, but may not be fully captured. For instance, a user may pick up and move a device in a selected manner. The microprocessor may detect the movement in one second and then instruct the device to start saving data, causing an even further delay. In this case, the device may not capture the first second of motion plus any delay in receiving the instructions. In certain instances, such as gesture recognition, this valuable information may be lost.
  • SUMMARY OF THE INVENTION
  • In accordance with one embodiment of the invention, a method of capturing an event in a MEMS accelerometer stores acceleration data in memory, detects a trigger event based on the acceleration data, and modifies a configuration of the memory so that a specified amount of the acceleration data is saved.
  • In accordance with another embodiment of the invention, a MEMS event capturing system includes an inertial sensor having sensor circuitry and event capturing circuitry implemented with the sensor circuitry. The event capturing circuitry includes memory capable of storing acceleration data received from the inertial sensor and a detection module operatively coupled with the memory that detects a trigger event. The event capturing circuitry further includes a management module operatively coupled with the memory and the detection module that modifies the memory's storage configuration when the trigger event is detected.
  • In some embodiments, the specified amount of acceleration data may be stored before the detected trigger event. The method may further include processing the specified amount of the acceleration data in order to recognize the event. The event may be a gesture. In the system or method, modifying a configuration of the memory may include varying an amount of the acceleration data stored. Alternatively, or in addition, modifying a configuration of the memory may include modifying the configuration from a stream buffer to a first-in-first-out buffer. In the system or method, detecting a trigger event may also include capturing an acceleration bias, measuring acceleration at a predetermined period of time, calculating a change in acceleration using the measured acceleration and the acceleration bias, and comparing the change in acceleration to a threshold to detect the trigger event. The system may further include a microprocessor operatively coupled with the event capturing circuitry. The microprocessor may be capable of processing the acceleration data in order to recognize an event, which may be a gesture. In the system or method, the inertial sensor may be formed on a die, and the sensor circuitry and event capturing circuitry may be formed on or in the same die. The sensor circuitry and event capturing circuitry may be formed on or in a first die, and the inertial sensor may be formed on or in another die that is in communication with the first die. The inertial sensor may be an accelerometer or a gyroscope. The memory may be capable of storing a fixed amount or a variable amount of acceleration data received from the inertial sensor.
  • Illustrative embodiments of the invention may be implemented as a computer program product having a computer usable medium with computer readable program code thereon. The computer readable code may be read and utilized by a computer system in accordance with conventional processes.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The foregoing and advantages of the invention will be appreciated more fully from the following further description thereof with reference to the accompanying drawings wherein:
  • FIG. 1 schematically shows a simplified view of a sensor system in accordance with illustrative embodiments of the invention;
  • FIG. 2 schematically shows an event capturing system in accordance with illustrative embodiments of the invention;
  • FIG. 3 shows a process of capturing an event in a MEMS accelerometer according to embodiments of the present invention; and
  • FIG. 4 shows a process of detecting activity in a MEMS accelerometer according to embodiments of the present invention.
  • DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
  • Various embodiments of the present invention provide a system and method for capturing an event, such as a specific movement or gesture, in inertial sensor systems. This is accomplished with an event capturing system that detects a trigger event and then modifies the memory's configuration based on the trigger event so that a specified amount of acceleration data is saved or preserved in the memory. In some embodiments, the trigger event is detected with a detection module comprising digital logic and state machines coupled with the inertial sensor. The event capturing system, with its detection module, may be coupled with one or more sensors to effectively manage different conditions of the device without interaction with the device's central computer or microprocessor (excluding the sensor's interaction with the microprocessor during its initial configuration). For instance, the inertial sensor does receive some initial input from the microprocessor, such as initial configurations or settings, e.g., threshold values, which may be set manually by the user or automatically. Embedding the detection functionality with the event capturing system may more effectively automate power management since only the sensor and the event capturing system may need to be powered, rather than the device's microprocessor. For example, if the sensor is an accelerometer, the functionality may be embedded in the accelerometer circuitry. Details of illustrative embodiments are discussed below.
  • As shown in FIG. 1, various embodiments may include a sensor system 2 having one or more inertial sensors 4 that communicate with a central computer or microprocessor 6 through some interconnection medium 8. The sensor system 2 may also include one or more event capturing systems 10 in communication with the inertial sensor(s) 4. The inertial sensor(s) 4 may produce data values, e.g., motion data related to the detected movement of an object, which may be transmitted to the microprocessor 6 via interconnection 8 and/or the event capturing system 10 through the event capturing system's interface 12, as discussed in more detail below. Although FIG. 1 shows two inertial sensors 4 with one event capturing system 10, one sensor 4 may be used with one or more event capturing systems 10 and/or two or more inertial sensors 4 may be used with one or more event capturing systems 10.
  • FIG. 2 schematically shows a block diagram of an event capturing system 10 in accordance with illustrative embodiments of the invention. The event capturing system 10 may include an interface 12 for communicating with external devices, such as the inertial sensor(s) 4 (e.g., for receiving data produced by the sensors and sending data to the sensors) or the microprocessor 6, and a detection module 14 for processing the data values received and detecting whether certain types of events have occurred (e.g., a trigger event, such as an activity event, a tap/double tap event, a free fall event, etc.). The event capturing system 10 may also include memory 16 for storing or collecting the data values received from the external devices and the data values processed by the detection module 14. The event capturing system 10 may also include a management module 18 that may modify the memory's storage configuration when the event is detected by the detection module 14. The functionality of the event capturing system 10 is discussed in greater detail below with regard to embodiments of its implementation.
  • The management module 18 may also include other functionality, such as the capability to modify the sensor's configuration, coordinate the functionality of the detection module 14, and coordinate the functionality of the sensor(s) 4 and a sensor management system with the device's microprocessor 6. This additional functionality of the management module 18 is discussed in more detail in co-pending applications entitled ACTIVITY DETECTION IN MEMS ACCELEROMETERS, attorney docket number 2550/C35, and MANAGEMENT SYSTEM FOR MEMS INERTIAL SENSORS, attorney docket number 2550/C38, which are filed on the same day as the present application, and which are incorporated by reference herein in their entirety.
  • FIG. 3 shows a process of capturing an event in a MEMS accelerometer. The process begins at step 30, which establishes or sets a trigger event. For example, the trigger event may be a specified activity level or threshold (e.g., sensor movement greater than 1 g.), freefall motion, a tap, and/or a double tap. The trigger event may be set to one trigger event or one or more trigger events selected from a list of events. The trigger event(s) may be manually selected by the user or automatically set, such as a default trigger event. Alternatively, or in addition, the management module 18 may establish or modify the existing trigger event(s) depending on various detected states of the device.
  • In step 40, one or more inertial sensors 4 produce data values, which are then collected or stored in memory 16. The detection module 14, operatively coupled to the memory 16, may process the data values received and detect that a trigger event has occurred (step 50). For example, the trigger event may be activity, and the detection module 14 may detect that the MEMS device is active or moving, as described in more detail below with regard to FIG. 4.
  • Once a trigger event is detected by the detection module 14, the detection module 14 may inform the management module 18 that a trigger event has occurred. The management module 18 may then modify the configuration of the memory 16 in step 60. For example, the memory 16 may initially store or collect the data values received in a stream buffer mode or type of configuration. As well known to those skilled in the art, a stream buffer contains a specified amount of the most recent data received, depending on the size of the buffer's memory (e.g., a minute's worth of the most recent data). When storing data to a stream buffer that is full, the oldest data is written over or removed and replaced with the newest data received. In this way, the memory 16 may temporarily collect or store a limited amount of data, and then gradually throw it out if a trigger event is not detected and the data is thus unneeded.
  • When a trigger event is detected, the management module 18 may modify the memory's 16 configuration so that a certain amount of older data is not written over and may be preserved for later processing, e.g., a certain amount before and/or after the trigger event. For example, the management module 18 may instruct or switch the memory 16 from a stream buffer mode to a first-in-first-out (FIFO) buffer mode or type of configuration. As well known to those skilled in the art, a FIFO buffer does not allow newer data to be saved when the buffer is full, so older data is preserved. The amount of data saved from one configuration to another may be a fixed or a variable amount of data. The amount of data to be saved may be set automatically or manually and may be the same amount of data before and after the trigger event (e.g., 30 seconds before and after the trigger event) or different amounts of data before and after the trigger event (e.g., 25 seconds before and 50 seconds after the trigger event). The management module 18 may contain the instructions or information on the parameters and length of time to be saved. In some embodiments, this may be implemented by the management module 18 resetting a pointer in the FIFO buffer to a selected point in time before the trigger event and then setting a byte count to instruct the FIFO buffer to collect or save a certain amount of data.
  • For instance, the memory 16 may initially be collecting or saving one minute worth of data in a stream buffer mode. In this scenario, once a trigger event is detected, the memory 16 contains one minute of data before the trigger event. Continuing with this example, if forty seconds worth of data before and after the trigger event is desired, the management module 18 may modify the configuration of the memory 16 to a FIFO buffer mode, reset the FIFO pointer to forty seconds before the trigger event, and have the byte count set so that the FIFO collects forty seconds more worth of data after the trigger event. If a smaller or larger amount of data is desired, then the management module 18 may change the byte count so that more or less data is collected or stored. In this way, the management module 18 modifies the memory's storage configuration so that a specified amount of motion data is saved in memory 16. Once the data is captured in the memory 16, the data optionally may be processed or analyzed in step 70, e.g., by the microprocessor 6 or the detection module 14. The captured data may remain in memory 16 or some of the data, or even all, may be flushed or removed from the memory 16. The configuration of the memory 16 may be returned to a stream buffer mode where it may collect or store data until another trigger event is detected.
  • In addition to trigger events, other events may be detected by the detection module 14, which may occur before and/or after the trigger event and which may cause other events or processes to occur within the event capturing system 10 or the sensor system 2. For example, the detection module 14 may detect a data ready event, which signals that there is some data in the memory 16. After a trigger event, the detection module 14 may detect an overrun or watermark event in the memory 16, which may signal that the memory 16 is becoming full and newer data may be lost.
  • As mentioned above, one trigger event may be activity, and the detection module 14 may detect that the MEMS device is active or moving. FIG. 4 shows a process of detecting activity that may be performed by the event capture system's 10 detection module 14 according to illustrative embodiments of the present invention. Thus, in some embodiments, the detection module 14 may include a computational component and a comparator (not shown) as discussed further below. The process begins at step 80, which decides whether to start looking for activity. The detection module 14 may start to look for activity automatically at designated times, (e.g., when the device is turned on or at periodic intervals) or manually, (e.g., when the user actively initiates a request such as tapping on a device screen). Alternatively, or in addition, the management module 18 may instruct the detection module 14 to start to look for activity once inactivity is detected (inactivity detection is discussed in greater detail in co-pending applications entitled ACTIVITY DETECTION IN MEMS ACCELEROMETERS, attorney docket number 2550/C35, and MANAGEMENT SYSTEM FOR MEMS INERTIAL SENSORS, attorney docket number 2550/C38, which are filed on the same day as the present application, and which are incorporated by reference herein in their entirety).
  • In step 90, an acceleration offset or bias may be captured upon the start of looking for activity. This may be accomplished by having the detection module 14 capture a snap-shot of the current acceleration or orientation of the device and digitally store the value as the acceleration bias in memory 16.
  • In step 100, the acceleration of the device may be measured by the sensor(s) 4 and the data values stored in memory 16. The acceleration may be measured on one or more axes of the device (e.g., x-, y-, and/or z-axis), which may be determined automatically or manually (e.g., set by the user). The accelerometer may sample the acceleration data at a data rate. The management module 18 may determine the sensor's 4 data rate depending on the current detected state of the device by the detection module 14. For example, the accelerometer sample rate may be set to a desired “awake” mode or more frequent sampling rate when activity is detected or monitored by the detection module 14. Similarly, the accelerometer sample rate may be set to a desired “sleep” mode or more infrequent sampling rate when inactivity is detected/monitored. When the detection module 14 has yet to determine activity and/or inactivity, the management module 18 may set a default value for the sensor's 4 sample rate, e.g., sleep mode sampling rate, awake mode sampling rate, or some other sampling rate, until the detection module 14 determines the current detected state of the device. Although one mode is discussed for when activity or inactivity is detected/monitored, the management module 18 may set two or more different modes during a given state of the device.
  • In step 110, the detection module 14 calculates the change in acceleration and verifies whether that change is greater than or equal to a threshold. The detection module 14 may determine the change in acceleration by calculating the difference between the current measured acceleration and the digitally stored acceleration bias using the computational component. The detection module 14 may then compare an absolute value of the change in acceleration to a threshold value using the comparator. The detection module 14 performs these calculations and the measured acceleration values, the calculated difference and the threshold value may be stored in the memory 16. The threshold may be set automatically or manually and may be the same or different for different axes. If the change in acceleration is less than the threshold, then the process returns to step 100 where the acceleration may be measured again. If the change in acceleration is greater than or equal to the threshold, then the process proceeds to step 120, where activity is detected.
  • When activity is detected by the detection module 14, it may inform the management module 18 of the current detected state of the device. The management module 18 may then modify the memory's 16 configuration so that it saves a selected amount of data, e.g., a certain amount before and/or after the trigger event, as discussed above. In addition, or alternatively, the management module 18 may send instructions or parameters to the inertial sensor(s) 4 via the interface 12 as discussed above (e.g., setting sampling rates), and may send instructions back to the detection module 14, e.g., start to look for inactivity. Thus, the detection module 14 may optionally start to look for inactivity once activity is detected.
  • Although FIG. 4 discusses detecting activity, other embodiments may use other techniques for detecting activity trigger events. In addition, other embodiments may use other techniques for detecting a trigger event, and the trigger event may include other events than activity as discussed above. For example, the trigger event may be free fall detection, tap/double tap detection, event ready detection, watermark detection, etc. Thus, discussion of detecting a specific trigger event is exemplary and not intended to limit the scope of various embodiments of the invention. In addition, the management module 18 may set parameters in the detection module 14 and/or the sensor(s) 4 along with, or instead of, the memory 16.
  • Although inertial sensors 4 such as accelerometers are discussed above, principles of illustrative embodiments may apply to other inertial sensors or sensor devices, such as MEMS gyroscopes and MEMS pressure sensors or microphones. Accordingly, discussion of inertial sensors is exemplary and not intended to limit the scope of various embodiments of the invention.
  • Among other implementations, the detection module 14 and/or the management module 18 may be a single integrated unit having the discussed functionality, and/or a plurality of interconnected, separate functional devices. Reference to a “module” therefore is for convenience and not intended to limit its implementation. Moreover, the various functionalities within the detection module 14 and/or the management module 18 may be implemented in any number of ways, such as by means of one or more application specific integrated circuits or digital signal processors, or the discussed functionality may be implemented in software.
  • In some embodiments of the present invention, certain motion detection (e.g., activity/inactivity detection) may be determined independently of one another and/or concurrently. In some embodiments, certain motion detection (e.g., activity detection) may be dependent upon detecting other types of motion (e.g., detecting inactivity) and vise-versa.
  • Various embodiments may provide efficient management of a MEMS accelerometer by allowing the trigger event detection to be performed by the event capturing system 10, which is coupled to the inertial sensor(s) 4, without interaction with the device's microprocessor 6. In this way, the event capturing system 10 coordinates the inertial sensor's functions and responds to specific types of detected movement. By embedding the functionality in the event capturing system 10, benefits may be realized, such as achieving maximal power savings since only the sensor 4 and event capturing system 10 may need to be powered, rather than the device's microprocessor 6.
  • All or part of the functionality of the event capturing system 10 may be implemented in event capturing circuitry, which may be implemented as part of the sensor-specific circuitry. For example, if the sensor is an accelerometer, then all or part of event capturing circuitry may be integrated with the accelerometer or sensor circuitry. For instance, the event capturing circuitry may include the activity detection function, which may be embedded in the accelerometer for power control of the end device. The event capturing circuitry may detect an acceleration above a particular threshold or a change in orientation and transmit such motion data to other circuitry for further processing. Sensor-specific circuitry that includes the event capturing circuitry may be on the same chip or die as the sensor itself, or on a different chip or die. As another example, the sensor-specific circuitry with the event capturing circuitry may be implemented on an application specific integrated circuit (ASIC), while the sensor may be on a sensor chip with no circuitry (other than pads for wirebonding with the ASIC). Both the ASIC and sensor chip may be within a single package, or in separate packages.
  • Embodiments may be implemented as a computer program product for use with a computer system. Such implementation may include a series of computer instructions fixed either on a tangible medium, such as a computer readable medium (e.g., a diskette, CD-ROM, ROM, or fixed disk) or transmittable to a computer system, via a modem or other interface device, such as a communications adapter connected to a network over a medium. The medium may be either a tangible medium (e.g., optical or analog communications lines) or a medium implemented with wireless techniques (e.g., microwave, infrared or other transmission techniques). The series of computer instructions may embody all or part of the functionality previously described herein with respect to the method and system. Those skilled in the art should appreciate that such computer instructions may be written in a number of programming languages for use with many computer architectures or operating systems. For example, embodiments may be implemented in a procedural programming language (e.g., “C”) or an object oriented programming language (e.g., “C++”). Alternative embodiments of the invention may be implemented as pre-programmed hardware elements, other related components, or as a combination of hardware and software components.
  • Furthermore, such instructions may be stored in any memory device, such as semiconductor, magnetic, optical or other memory devices, and may be transmitted using any communications technology, such as optical, infrared, microwave, or other transmission technologies. It is expected that such a computer program product may be distributed as a removable medium with accompanying printed or electronic documentation (e.g., shrink wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the network (e.g., the Internet or World Wide Web). Thus, some embodiments of the invention may be implemented as hardware, software (e.g., a computer program product), or a combination of both software and hardware.
  • Although the above discussion discloses various exemplary embodiments of the invention, it should be apparent that those skilled in the art can make various modifications that will achieve some of the advantages of the invention without departing from the true scope of the invention.

Claims (20)

1. A method of capturing an event in a MEMS accelerometer, the method comprising:
storing acceleration data in memory;
detecting a trigger event based on the acceleration data; and
modifying a configuration of the memory so that a specified amount of the acceleration data is saved.
2. The method of claim 1, wherein the specified amount of the acceleration data includes acceleration data stored before the detected trigger event.
3. The method of claim 1, further comprising:
processing the specified amount of the acceleration data in order to recognize the event.
4. The method of claim 3, wherein the event is a gesture.
5. The method of claim 1, wherein modifying a configuration of the memory includes varying an amount of the acceleration data stored.
6. The method of claim 1, wherein modifying a configuration of the memory includes modifying the configuration from a stream buffer to a first-in-first-out buffer.
7. The method of claim 1, wherein detecting a trigger event further comprises:
capturing an acceleration bias;
measuring acceleration at a predetermined period of time;
calculating a change in acceleration using the measured acceleration and the acceleration bias; and
comparing the change in acceleration to a threshold to detect the trigger event.
8. A MEMS event capturing system comprising:
an inertial sensor having sensor circuitry; and
event capturing circuitry implemented with the sensor circuitry, the event capturing circuitry including:
memory capable of storing acceleration data received from the inertial sensor;
a detection module operatively coupled with the memory that detects a trigger event; and
a management module operatively coupled with the memory and the detection module that modifies the memory's storage configuration when the trigger event is detected.
9. The MEMS system of claim 8, wherein the memory's storage configuration is modified from a stream buffer to a first-in-first-out buffer.
10. The MEMS system of claim 8, further comprising a microprocessor operatively coupled with the event capturing circuitry, the microprocessor capable of processing the acceleration data in order to recognize an event.
11. The MEMS system of claim 10, wherein the event is a gesture.
12. The MEMS system of claim 8, wherein the inertial sensor is formed on a die, and the sensor circuitry and event capturing circuitry are formed on or in the die.
13. The MEMS system of claim 8, wherein the sensor circuitry and event capturing circuitry are formed on or in a first die, and the inertial sensor is formed on or in a second die that is in communication with the first die.
14. The MEMS system of claim 8, wherein the inertial sensor includes an accelerometer or a gyroscope.
15. The MEMS system of claim 8, wherein the memory is capable of storing a fixed or a variable amount of acceleration data received from the inertial sensor.
16. A computer program product for capturing an event in a MEMS accelerometer, the computer program product comprising a computer usable medium having computer readable program code thereon, the computer readable program code comprising:
program code for storing acceleration data in memory;
program code for detecting a trigger event based on the acceleration data; and
program code for modifying a configuration of the memory so that a specified amount of the acceleration data is saved.
17. The computer program product of claim 16, wherein the specified amount of the acceleration data includes acceleration data stored before the detected trigger event.
18. The computer program product of claim 16, wherein the computer readable program code further comprises:
program code for processing the specified amount of the acceleration data in order to recognize the event.
19. The computer program product of claim 16, wherein the computer readable program code for modifying a configuration of the memory includes program code for varying an amount of the acceleration data stored.
20. The computer program product of claim 16, wherein the computer readable program code for modifying a configuration of the memory includes program code for modifying the configuration from a stream buffer to a first-in-first-out buffer.
US12/408,532 2008-03-21 2009-03-20 System and Method for Capturing an Event in MEMS Inertial Sensors Abandoned US20090240462A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/408,532 US20090240462A1 (en) 2008-03-21 2009-03-20 System and Method for Capturing an Event in MEMS Inertial Sensors

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US3859408P 2008-03-21 2008-03-21
US4959008P 2008-05-01 2008-05-01
US7892308P 2008-07-08 2008-07-08
US12/408,532 US20090240462A1 (en) 2008-03-21 2009-03-20 System and Method for Capturing an Event in MEMS Inertial Sensors

Publications (1)

Publication Number Publication Date
US20090240462A1 true US20090240462A1 (en) 2009-09-24

Family

ID=40751056

Family Applications (3)

Application Number Title Priority Date Filing Date
US12/408,532 Abandoned US20090240462A1 (en) 2008-03-21 2009-03-20 System and Method for Capturing an Event in MEMS Inertial Sensors
US12/408,536 Active 2030-07-16 US8220329B2 (en) 2008-03-21 2009-03-20 Management system for MEMS inertial sensors
US12/408,540 Active 2030-03-08 US8239160B2 (en) 2008-03-21 2009-03-20 Activity detection in MEMS accelerometers

Family Applications After (2)

Application Number Title Priority Date Filing Date
US12/408,536 Active 2030-07-16 US8220329B2 (en) 2008-03-21 2009-03-20 Management system for MEMS inertial sensors
US12/408,540 Active 2030-03-08 US8239160B2 (en) 2008-03-21 2009-03-20 Activity detection in MEMS accelerometers

Country Status (2)

Country Link
US (3) US20090240462A1 (en)
WO (3) WO2009117703A1 (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8422034B2 (en) 2010-04-21 2013-04-16 Faro Technologies, Inc. Method and apparatus for using gestures to control a laser tracker
US8467071B2 (en) 2010-04-21 2013-06-18 Faro Technologies, Inc. Automatic measurement of dimensional data with a laser tracker
US8467072B2 (en) 2011-02-14 2013-06-18 Faro Technologies, Inc. Target apparatus and method of making a measurement with the target apparatus
US8537371B2 (en) 2010-04-21 2013-09-17 Faro Technologies, Inc. Method and apparatus for using gestures to control a laser tracker
US8724119B2 (en) 2010-04-21 2014-05-13 Faro Technologies, Inc. Method for using a handheld appliance to select, lock onto, and track a retroreflector with a laser tracker
US9041914B2 (en) 2013-03-15 2015-05-26 Faro Technologies, Inc. Three-dimensional coordinate scanner and method of operation
US9164173B2 (en) 2011-04-15 2015-10-20 Faro Technologies, Inc. Laser tracker that uses a fiber-optic coupler and an achromatic launch to align and collimate two wavelengths of light
US9207309B2 (en) 2011-04-15 2015-12-08 Faro Technologies, Inc. Six degree-of-freedom laser tracker that cooperates with a remote line scanner
US9336111B1 (en) * 2010-07-30 2016-05-10 Emc Corporation System and method for data logging within a field replaceable unit
US9377885B2 (en) 2010-04-21 2016-06-28 Faro Technologies, Inc. Method and apparatus for locking onto a retroreflector with a laser tracker
US9395174B2 (en) 2014-06-27 2016-07-19 Faro Technologies, Inc. Determining retroreflector orientation by optimizing spatial fit
US9400170B2 (en) 2010-04-21 2016-07-26 Faro Technologies, Inc. Automatic measurement of dimensional data within an acceptance region by a laser tracker
US9482529B2 (en) 2011-04-15 2016-11-01 Faro Technologies, Inc. Three-dimensional coordinate scanner and method of operation
US9482755B2 (en) 2008-11-17 2016-11-01 Faro Technologies, Inc. Measurement system having air temperature compensation between a target and a laser tracker
US9638507B2 (en) 2012-01-27 2017-05-02 Faro Technologies, Inc. Measurement machine utilizing a barcode to identify an inspection plan for an object
US9686532B2 (en) 2011-04-15 2017-06-20 Faro Technologies, Inc. System and method of acquiring three-dimensional coordinates using multiple coordinate measurement devices
US9772394B2 (en) 2010-04-21 2017-09-26 Faro Technologies, Inc. Method and apparatus for following an operator and locking onto a retroreflector with a laser tracker
US20180216959A1 (en) * 2014-09-01 2018-08-02 Beijing Noitom Technology Ltd. A Combined Motion Capture System
US11324421B2 (en) 2014-09-15 2022-05-10 3M Innovative Properties Company Impairment detection with environmental considerations

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9008995B2 (en) 2008-03-21 2015-04-14 Analog Devices, Inc. Activity detection in MEMS accelerometers
WO2009117703A1 (en) * 2008-03-21 2009-09-24 Analog Devices, Inc. Activity detection in mems accelerometers
US8532956B2 (en) * 2008-10-27 2013-09-10 General Electric Company Method and system for rotation tracking of a turbomachine component
WO2011035311A1 (en) * 2009-09-21 2011-03-24 Medtronic, Inc. Waveforms for electrical stimulation therapy
ES2536702T3 (en) 2009-12-22 2015-05-27 Inventio Ag Procedure and device for determining the movement and / or position of an elevator car
DE102010028828B4 (en) * 2010-05-11 2019-07-18 Robert Bosch Gmbh Method and system for determining an idle state
DE102010029590B4 (en) * 2010-06-01 2014-07-10 Robert Bosch Gmbh Rotation rate sensor, sensor arrangement, method for operating a rotation rate sensor and method for operating a sensor arrangement
KR101204205B1 (en) * 2011-05-13 2012-11-26 삼성전기주식회사 Apparatus and method for driving inertial sensor
US9078070B2 (en) 2011-05-24 2015-07-07 Analog Devices, Inc. Hearing instrument controller
US9507399B2 (en) 2012-04-24 2016-11-29 Analog Devices, Inc. Accelerometer-controlled master power switch for electronic devices
WO2013184620A1 (en) * 2012-06-06 2013-12-12 Analog Devices, Inc. Activity detection in mems accelerometers
CN102830790A (en) * 2012-08-03 2012-12-19 青岛海信信芯科技有限公司 Mobile electronic equipment and automatic sleeping method thereof
CN103020598B (en) * 2012-12-11 2015-08-19 杭州电子科技大学 A kind ofly carry out knowledge method for distinguishing for attitude variation when people being completed to specific action
US9146605B2 (en) 2013-01-31 2015-09-29 Salutron, Inc. Ultra low power actigraphy based on dynamic threshold
US9235377B2 (en) * 2013-03-12 2016-01-12 Invensense, Inc. Multiple, per sensor configurable FIFOs in a single static random access memory (SRAM) structure
US9520036B1 (en) 2013-09-18 2016-12-13 Amazon Technologies, Inc. Haptic output generation with dynamic feedback control
CA2939633A1 (en) 2014-02-14 2015-08-20 3M Innovative Properties Company Activity recognition using accelerometer data
JP6526831B2 (en) 2014-12-30 2019-06-05 マイシート ソシエテ パル アクシオン サンプリフィエ Apparatus and system for detecting occupancy status of equipment
US10619986B2 (en) * 2016-07-26 2020-04-14 Omnitek Partners Llc Laser activated initiation devices with self-powered event detection and arming logic and false trigger protection for munitions
GB2555641A (en) * 2016-11-07 2018-05-09 Airbus Operations Ltd Actuator with brushless DC motor
DE102017102614A1 (en) * 2017-02-09 2018-08-09 Efaflex Tor- Und Sicherheitssysteme Gmbh & Co. Kg Door panel crash detection system, door panel crash detection system, and door panel crash detection method
US10532741B2 (en) * 2017-10-02 2020-01-14 Deere & Company Method of using predicted vehicle accelerations to improve roll and pitch measurement accuracy in a tracked machine
US10958542B2 (en) 2018-10-30 2021-03-23 United Technologies Corporation System for active data acquisition management in a gas turbine engine
CN110151136B (en) * 2019-05-28 2022-03-08 深圳如一探索科技有限公司 Method, device, equipment and medium for monitoring sleep state of conditional reference heart rate

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4638289A (en) * 1983-02-26 1987-01-20 Licentia Patent-Verwaltungs-Gmbh Accident data recorder
US4862394A (en) * 1987-01-28 1989-08-29 Dallas Instruments Incorporated Drop height recorder
US5388247A (en) * 1993-05-14 1995-02-07 Digital Equipment Corporation History buffer control to reduce unnecessary allocations in a memory stream buffer
US20040172167A1 (en) * 2003-02-28 2004-09-02 Stmicroelectronics S.R.L. Device for automatic detection of states of motion and rest, and portable electronic apparatus incorporating it
US20060184336A1 (en) * 2005-02-15 2006-08-17 Kolen Paul T Single/multiple axes six degrees of freedom (6 DOF) inertial motion capture system with initial orientation determination capability
US7205173B2 (en) * 2002-03-20 2007-04-17 Qinetiq Limited Method of fabricating micro-electromechanical systems
US20070169551A1 (en) * 2005-06-13 2007-07-26 Analog Devices, Inc. MEMS Sensor System with Configurable Signal Module
US20070192055A1 (en) * 2004-08-09 2007-08-16 Vodafone K.K. Measurement data collection method and portable information device
US20070255531A1 (en) * 2006-04-27 2007-11-01 Medtronic, Inc. Peak data retention of signal data in an implantable medical device
US20070296571A1 (en) * 2006-06-13 2007-12-27 Kolen Paul T Motion sensing in a wireless rf network
US20080016961A1 (en) * 2006-07-24 2008-01-24 Honeywell International Inc. Medical application for no-motion sensor
US20080252445A1 (en) * 2007-04-04 2008-10-16 Magneto Inertial Sensing Technology, Inc. Dynamically Configurable Wireless Sensor Networks
US20090012748A1 (en) * 2007-07-06 2009-01-08 Microsoft Corporation Suppressing repeated events and storing diagnostic information
US20090076765A1 (en) * 2006-03-03 2009-03-19 Garmin Ltd. Method and apparatus for estimating a motion parameter
US8217795B2 (en) * 2006-12-05 2012-07-10 John Carlton-Foss Method and system for fall detection

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6434642B1 (en) * 1999-10-07 2002-08-13 Xilinx, Inc. FIFO memory system and method with improved determination of full and empty conditions and amount of data stored
JP2001202698A (en) * 2000-01-19 2001-07-27 Pioneer Electronic Corp Audio and video reproducing device
FI119078B (en) * 2002-02-12 2008-07-15 Nokia Corp Accelerometer
JP2005241503A (en) * 2004-02-27 2005-09-08 Hitachi Metals Ltd Acceleration history recording device at time of falling and acceleration sensor device used therefor
US7176888B2 (en) * 2004-03-23 2007-02-13 Fujitsu Limited Selective engagement of motion detection
US20050212912A1 (en) * 2004-03-26 2005-09-29 Faron Huster System and method for wildlife activity monitoring
DE202005022038U1 (en) * 2004-04-30 2012-07-12 Hillcrest Laboratories, Inc. Free space pointing devices with slope compensation and improved usability
US7066004B1 (en) * 2004-09-02 2006-06-27 Sandia Corporation Inertial measurement unit using rotatable MEMS sensors
WO2006122246A2 (en) 2005-05-09 2006-11-16 Analog Devices, Inc. Accelerometer-based differential free fall detection system, apparatus, and method and disk drive protection mechanism employing same
US8079259B2 (en) * 2005-06-27 2011-12-20 Milli Sensor Systems & Actuators MEMS gyroscope with output oscillation about the normal to the plane
US7907037B2 (en) * 2006-02-04 2011-03-15 Evigia Systems, Inc. Micro-electro-mechanical module
US20090002345A1 (en) * 2006-02-22 2009-01-01 Stefan Burstrom Systems and Methods for Interacting with Position Data Representing Pen Movement on a Product
US7549334B2 (en) * 2006-04-24 2009-06-23 Milli Sensor Systems + Actuators Small angle bias measurement mechanism for MEMS instruments
US8250921B2 (en) * 2007-07-06 2012-08-28 Invensense, Inc. Integrated motion processing unit (MPU) with MEMS inertial sensing and embedded digital electronics
EP1959234A1 (en) * 2007-02-13 2008-08-20 STMicroelectronics S.r.l. Microelectromechanical gyroscope with suppression of capacitive coupling spurious signals and control method of a microelectromechanical gyroscope
EP1962054B1 (en) * 2007-02-13 2011-07-20 STMicroelectronics Srl Microelectromechanical gyroscope with open loop reading device and control method of a microelectromechanical gyroscope
EP1959233A1 (en) * 2007-02-13 2008-08-20 STMicroelectronics S.r.l. Microelectromechanical gyroscope with self-test function and control method of a microelectromechanical gyroscope
WO2009117703A1 (en) * 2008-03-21 2009-09-24 Analog Devices, Inc. Activity detection in mems accelerometers

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4638289A (en) * 1983-02-26 1987-01-20 Licentia Patent-Verwaltungs-Gmbh Accident data recorder
US4862394A (en) * 1987-01-28 1989-08-29 Dallas Instruments Incorporated Drop height recorder
US5388247A (en) * 1993-05-14 1995-02-07 Digital Equipment Corporation History buffer control to reduce unnecessary allocations in a memory stream buffer
US7205173B2 (en) * 2002-03-20 2007-04-17 Qinetiq Limited Method of fabricating micro-electromechanical systems
US20040172167A1 (en) * 2003-02-28 2004-09-02 Stmicroelectronics S.R.L. Device for automatic detection of states of motion and rest, and portable electronic apparatus incorporating it
US20070192055A1 (en) * 2004-08-09 2007-08-16 Vodafone K.K. Measurement data collection method and portable information device
US20060184336A1 (en) * 2005-02-15 2006-08-17 Kolen Paul T Single/multiple axes six degrees of freedom (6 DOF) inertial motion capture system with initial orientation determination capability
US20070169551A1 (en) * 2005-06-13 2007-07-26 Analog Devices, Inc. MEMS Sensor System with Configurable Signal Module
US20090076765A1 (en) * 2006-03-03 2009-03-19 Garmin Ltd. Method and apparatus for estimating a motion parameter
US20070255531A1 (en) * 2006-04-27 2007-11-01 Medtronic, Inc. Peak data retention of signal data in an implantable medical device
US20070296571A1 (en) * 2006-06-13 2007-12-27 Kolen Paul T Motion sensing in a wireless rf network
US20080016961A1 (en) * 2006-07-24 2008-01-24 Honeywell International Inc. Medical application for no-motion sensor
US8217795B2 (en) * 2006-12-05 2012-07-10 John Carlton-Foss Method and system for fall detection
US20080252445A1 (en) * 2007-04-04 2008-10-16 Magneto Inertial Sensing Technology, Inc. Dynamically Configurable Wireless Sensor Networks
US20090012748A1 (en) * 2007-07-06 2009-01-08 Microsoft Corporation Suppressing repeated events and storing diagnostic information

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9453913B2 (en) 2008-11-17 2016-09-27 Faro Technologies, Inc. Target apparatus for three-dimensional measurement system
US9482755B2 (en) 2008-11-17 2016-11-01 Faro Technologies, Inc. Measurement system having air temperature compensation between a target and a laser tracker
US9377885B2 (en) 2010-04-21 2016-06-28 Faro Technologies, Inc. Method and apparatus for locking onto a retroreflector with a laser tracker
US8654354B2 (en) 2010-04-21 2014-02-18 Faro Technologies, Inc. Method and apparatus for using gestures to control a laser tracker
US8537371B2 (en) 2010-04-21 2013-09-17 Faro Technologies, Inc. Method and apparatus for using gestures to control a laser tracker
US9400170B2 (en) 2010-04-21 2016-07-26 Faro Technologies, Inc. Automatic measurement of dimensional data within an acceptance region by a laser tracker
US8576380B2 (en) 2010-04-21 2013-11-05 Faro Technologies, Inc. Method and apparatus for using gestures to control a laser tracker
US10480929B2 (en) 2010-04-21 2019-11-19 Faro Technologies, Inc. Method and apparatus for following an operator and locking onto a retroreflector with a laser tracker
US10209059B2 (en) 2010-04-21 2019-02-19 Faro Technologies, Inc. Method and apparatus for following an operator and locking onto a retroreflector with a laser tracker
US9772394B2 (en) 2010-04-21 2017-09-26 Faro Technologies, Inc. Method and apparatus for following an operator and locking onto a retroreflector with a laser tracker
US8654355B2 (en) 2010-04-21 2014-02-18 Faro Technologies, Inc. Method and apparatus for using gestures to control a laser tracker
US8724119B2 (en) 2010-04-21 2014-05-13 Faro Technologies, Inc. Method for using a handheld appliance to select, lock onto, and track a retroreflector with a laser tracker
US8724120B2 (en) 2010-04-21 2014-05-13 Faro Technologies, Inc. Automatic measurement of dimensional data with a laser tracker
US8896848B2 (en) 2010-04-21 2014-11-25 Faro Technologies, Inc. Method and apparatus for using gestures to control a laser tracker
US9007601B2 (en) 2010-04-21 2015-04-14 Faro Technologies, Inc. Automatic measurement of dimensional data with a laser tracker
US8437011B2 (en) 2010-04-21 2013-05-07 Faro Technologies, Inc. Method and apparatus for using gestures to control a laser tracker
US9146094B2 (en) 2010-04-21 2015-09-29 Faro Technologies, Inc. Automatic measurement of dimensional data with a laser tracker
US8467071B2 (en) 2010-04-21 2013-06-18 Faro Technologies, Inc. Automatic measurement of dimensional data with a laser tracker
US8537375B2 (en) 2010-04-21 2013-09-17 Faro Technologies, Inc. Method and apparatus for using gestures to control a laser tracker
US8422034B2 (en) 2010-04-21 2013-04-16 Faro Technologies, Inc. Method and apparatus for using gestures to control a laser tracker
US9336111B1 (en) * 2010-07-30 2016-05-10 Emc Corporation System and method for data logging within a field replaceable unit
US10496464B1 (en) 2010-07-30 2019-12-03 EMC IP Holding Company LLC System and method for data logging within a field replacement unit
US8467072B2 (en) 2011-02-14 2013-06-18 Faro Technologies, Inc. Target apparatus and method of making a measurement with the target apparatus
US8593648B2 (en) 2011-02-14 2013-11-26 Faro Technologies, Inc. Target method using indentifier element to obtain sphere radius
US8619265B2 (en) 2011-03-14 2013-12-31 Faro Technologies, Inc. Automatic measurement of dimensional data with a laser tracker
US9164173B2 (en) 2011-04-15 2015-10-20 Faro Technologies, Inc. Laser tracker that uses a fiber-optic coupler and an achromatic launch to align and collimate two wavelengths of light
US10302413B2 (en) 2011-04-15 2019-05-28 Faro Technologies, Inc. Six degree-of-freedom laser tracker that cooperates with a remote sensor
US9494412B2 (en) 2011-04-15 2016-11-15 Faro Technologies, Inc. Diagnosing multipath interference and eliminating multipath interference in 3D scanners using automated repositioning
US10578423B2 (en) 2011-04-15 2020-03-03 Faro Technologies, Inc. Diagnosing multipath interference and eliminating multipath interference in 3D scanners using projection patterns
US9453717B2 (en) 2011-04-15 2016-09-27 Faro Technologies, Inc. Diagnosing multipath interference and eliminating multipath interference in 3D scanners using projection patterns
US9207309B2 (en) 2011-04-15 2015-12-08 Faro Technologies, Inc. Six degree-of-freedom laser tracker that cooperates with a remote line scanner
US9967545B2 (en) 2011-04-15 2018-05-08 Faro Technologies, Inc. System and method of acquiring three-dimensional coordinates using multiple coordinate measurment devices
US9448059B2 (en) 2011-04-15 2016-09-20 Faro Technologies, Inc. Three-dimensional scanner with external tactical probe and illuminated guidance
US9686532B2 (en) 2011-04-15 2017-06-20 Faro Technologies, Inc. System and method of acquiring three-dimensional coordinates using multiple coordinate measurement devices
US9482529B2 (en) 2011-04-15 2016-11-01 Faro Technologies, Inc. Three-dimensional coordinate scanner and method of operation
US10119805B2 (en) 2011-04-15 2018-11-06 Faro Technologies, Inc. Three-dimensional coordinate scanner and method of operation
US10267619B2 (en) 2011-04-15 2019-04-23 Faro Technologies, Inc. Three-dimensional coordinate scanner and method of operation
US9638507B2 (en) 2012-01-27 2017-05-02 Faro Technologies, Inc. Measurement machine utilizing a barcode to identify an inspection plan for an object
US9041914B2 (en) 2013-03-15 2015-05-26 Faro Technologies, Inc. Three-dimensional coordinate scanner and method of operation
US9482514B2 (en) 2013-03-15 2016-11-01 Faro Technologies, Inc. Diagnosing multipath interference and eliminating multipath interference in 3D scanners by directed probing
US9395174B2 (en) 2014-06-27 2016-07-19 Faro Technologies, Inc. Determining retroreflector orientation by optimizing spatial fit
US20180216959A1 (en) * 2014-09-01 2018-08-02 Beijing Noitom Technology Ltd. A Combined Motion Capture System
US11324421B2 (en) 2014-09-15 2022-05-10 3M Innovative Properties Company Impairment detection with environmental considerations

Also Published As

Publication number Publication date
WO2009151711A2 (en) 2009-12-17
US8220329B2 (en) 2012-07-17
WO2009117703A1 (en) 2009-09-24
WO2009151711A4 (en) 2010-06-24
US8239160B2 (en) 2012-08-07
WO2009151711A3 (en) 2010-04-15
US20090293615A1 (en) 2009-12-03
WO2009117687A1 (en) 2009-09-24
US20090240463A1 (en) 2009-09-24

Similar Documents

Publication Publication Date Title
US20090240462A1 (en) System and Method for Capturing an Event in MEMS Inertial Sensors
US9008995B2 (en) Activity detection in MEMS accelerometers
US9367119B2 (en) System and method to reduce power consumption in a multi-sensor environment
US20130332108A1 (en) Embedded hardware state machine for context detection integrated with a sensor chip
EP2512110B1 (en) Camera mobile phone with an anti-shaking function and anti-shaking method for use by a camera mobile phone in image capturing.
WO2011119499A2 (en) Bump suppression
WO2014085615A2 (en) Combining monitoring sensor measurements and system signals to determine device context
WO2013184620A1 (en) Activity detection in mems accelerometers
WO2013104006A2 (en) System and method for calibrating sensors for different operating environments
US20170153121A1 (en) Methods and devices with sensor time calibration
TWI493334B (en) Poewr saving method and sensor management system implementing the same
JP5331999B2 (en) Acceleration detection device and portable device equipped with the same
EP3589967B1 (en) Power management for electromagnetic position tracking systems
CN104508431A (en) Sensor with sampling moment time stamp
WO2017005070A1 (en) Display control method and device
CN104243094B (en) For using the system and method for sensing the characteristic that instruction carrys out adaptation application layer protocol
CN110072010B (en) Drop detection method and terminal equipment
US20120203503A1 (en) Electronic device, pedometer, and program
US20070126627A1 (en) Positioning information processing apparatus, information processing apparatus, method of processing positioning information, and program
US10725064B2 (en) Methods of motion processing and related electronic devices and motion modules
CN112486258A (en) Wearable device, step counting method thereof and computer storage medium
CN107818036B (en) Black screen detection method, mobile terminal and computer readable storage medium
US8952785B2 (en) Reduction of IMU/AP link requirements for SDI
JP2010091462A (en) Relative acceleration detector, method for detecting relative acceleration, and program
KR20170111408A (en) Apparatus and method for step calculation

Legal Events

Date Code Title Description
AS Assignment

Owner name: ANALOG DEVICES, INC., MASSACHUSETTS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:LEE, JAMES M.;REEL/FRAME:022734/0044

Effective date: 20090422

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION