The present invention relates generally to sensor signal processing systems.
Certain systems that use sensors are prone to “sensor dropout” a condition in which the sensor temporarily looses the ability to sense and an invalid signal or no signal at all is produced by the sensor. Systems that use sensors can also suffer from noise contamination of the signals produced by the sensors. The noise contamination may arise from a wide variety of phenomenon depending on the type of sensor.
One type of sensor system that is prone to sensor dropout and noise contamination is an optical heart rate monitor system. Using optical sensors to detect heart rates is called photoplethysmography. An optical heart rate monitor includes an optical radiation (e.g., visible or infra-red light) emitter (e.g., Light Emitting Diode or LED) and an optical radiation detector (e.g., a photodiode) held in a mechanical attachment mechanism proximate some extremity of a person's body (e.g., a finger or ear lobe). Optical heart rate monitor systems are distinguished from electrical heart rate monitor systems which require electrodes that must be adhered to the user, grasped by the user or incorporated into an article (e.g., chest strap) that is worn by the user. Unfortunately, optical heart rate sensing systems are prone to motion induced sensor dropout and noise contamination. This is particularly disadvantageous for applications of heart rate monitors where the user is expected to be mobile, for example heart rate monitors for athletes or fitness enthusiasts or heart rate monitors for ambulatory patients.
A general issue regarding optical heart rate monitors is that the provisions for holding them proximate the users' bodies are not ideal for applications where the user is expected to be active. For optical heart rate monitors perhaps the most common form factor resembles a clothes pin that clips to the user's ear. While suitable for a bed-ridden patients, the dangling mass of this design makes it unsuitable for use by moderately active people or people who are exercising. It would be desirable to have designs that are more suitable for use while exercising. As alluded to above movement in the course of exercise would also tend to cause signal degradation so this also needs to be addressed.
The accompanying figures, where like reference numerals refer to identical or functionally similar elements throughout the separate views and which together with the detailed description below are incorporated in and form part of the specification, serve to further illustrate various embodiments and to explain various principles and advantages all in accordance with the present invention.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of embodiments of the present invention.
Before describing in detail embodiments that are in accordance with the present invention, it should be observed that the embodiments reside primarily in combinations of method steps and apparatus components related to signal processing. Accordingly, the apparatus components and method steps have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.
In this document, relational terms such as first and second, top and bottom, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. The terms “comprises,” “comprising,” or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. An element proceeded by “comprises . . . a” does not, without more constraints, preclude the existence of additional identical elements in the process, method, article, or apparatus that comprises the element.
It will be appreciated that embodiments of the invention described herein may be comprised of one or more conventional processors and unique stored program instructions that control the one or more processors to implement, in conjunction with certain non-processor circuits, some, most, or all of the functions of signal processing described herein. The non-processor circuits may include, but are not limited to, a radio receiver, a radio transmitter, signal drivers, clock circuits, power source circuits, and user input devices. As such, these functions may be interpreted as steps of a method to perform signal processing. Alternatively, some or all functions could be implemented by a state machine that has no stored program instructions, or in one or more application specific integrated circuits (ASICs), in which each function or some combinations of certain of the functions are implemented as custom logic. Of course, a combination of the two approaches could be used. Thus, methods and means for these functions have been described herein. Further, it is expected that one of ordinary skill, notwithstanding possibly significant effort and many design choices motivated by, for example, available time, current technology, and economic considerations, when guided by the concepts and principles disclosed herein will be readily capable of generating such software instructions and programs and ICs with minimal experimentation.
The light source 112 emits light that interacts with the living tissues of the wearer's earlobe in particular with blood pulsing through capillaries in response to the wearer's heart beat. The pulsing causes a correlated change in the optical properties (e.g., reflectance, transmittance, absorption) of the user's ear, which in turn causes a correlated change in the amount of light incident on the light sensor 114, and thus the wearer's heart beat is detected. Using light to detect a heartbeat is known as Photoplethysmography. The pressure sensor 116 is used to obtain a signal that is associated with motion artifacts that appear in the signal of the light sensor 114. The signal from the pressure sensor 116 is used to reduce the noise in the signal obtained from the light sensor 114. Signal processing using the signal from the pressure sensor 116 is more fully described below with reference to
As shown in
The adaptive noise canceller 316 is coupled to a bandpass filter 322. The bandpass filter 322 is designed to filter out frequency components that fall outside the range of normal heart beats, for example outside the range of 0.5 to 4.0 Hertz equivalent to a heart rate range of 30 to 240 beats per minute. Using the bandpass filter 322 helps clean up the signal by further reducing noise and facilitate heart beat detection.
Referring again to
A first peak detector 326 scans each window looking for peak signal samples that is signal samples that are greater than both the preceding and succeeding signal sample. This can be written as SK−1<SK>SK+1. To satisfy the first peak detector 326, meeting foregoing inequality is a necessary but not sufficient condition. The first peak detector 326 can comprises a pair of comparators in order to test to foregoing inequality relations. In order to be identified as a valid peak a particular signal sample SK must also exceed a threshold magnitude that is suitably scaled to the energy in the window being processed. This can be written as |SK|>T*RMS where T is a preprogrammed threshold factor and RMS is a root means square measure of the energy in window. The threshold factor T is suitably in the range of 0.0 to 0.3 for a normalized signal whose range is from −1 to 1. Adding the threshold amplitude requirement allows the system 300 avoid construing low, e.g., near zero signal oscillations as actual heart beats. The first peak detector 326 can comprise a third comparator to verify the latter inequality. A second peak detector 328 is the same as the first peak detector 326 but uses a different value of the threshold factor T. For example, the first peak detector 326 can use a threshold factor of 0.05 and the second peak detector 328 a threshold factor of 0.3.
A third peak detector 330 works in a different manner. The third peak detector 330 has a discrete differentiator 332 followed by a zero crossing detector 334. There are two types of zero crossings transitions: from positive to negative and vice versa and ideally there should be one of each type per heart beat. The two types of zero crossings can be used as two separate identifiers of heart beats. Even after the filtering described above there may be small amplitude fluctuations in the signal that could potentially lead to false peaks being detected by a peak detector based on differentiation followed by zero-crossing detection. The potential for false peak detection can be understood by referring to
Although the system 300 as described above includes three particular peak detectors 326, 328, 330. In practice other known or yet to be developed peak detectors can be used in lieu or in addition to those described above.
The three peak detectors 328, 330, 332 are coupled to a counter 336. The counter 336 counts the number of counts identified by the peak detectors 328, 330, 332 in each window demarcated by the windower 324. The counter 336 is coupled to an averager 338 which generates an average peak count by averaging the counts of peaks detected by the three peak detectors 328, 330, 332. Averaging leads to a more reliable peak count. A frequency domain peak detector such as a peak detector that detects a peak in a power spectrum or a peak in an output of a Fast Fourier Transform (FFT) could also be used. Such frequency domain peak detectors involve a high computational cost or hardware complexity but do not require their output to be processed by the counter 336.
The averager 338 is coupled to a first-in-first-out (FIFO) buffer 340. At any given instant in time the FIFO buffer 340 holds a number (e.g., 32) of average peak counts of successive windows demarcated by the windower 324.
The contents of the FIFO buffer 340 are coupled out in parallel to a windowed averager 342. The windowed averager 342 computes a hierarchical set of averages of the contents of the FIFO buffer 340 spanning different time scales and a starting at different registers (correspond to different time indexes) in the FIFO buffer 340. By way of illustration assuming that the FIFO buffer holds N averaged peak counts for N successive windows that have been demarcated by the windower 324, the windowed averager 342 will computer 1 average over all N FIFO buffer registers, 2 averages over N/2 FIFO buffer registers (including one average over the first N/2 buffer registers and one average over the last N/2 buffer registers) and continuing in this pattern down N/2 averages at the smallest averagable times scale of 2 buffer registers.
The FIFO buffer 340 is also coupled to a median selector 344 which selects the value in the FIFO buffer that is closes to the median. Alternatively, in lieu of the median another value such as the mode (most frequent value) or the average is used.
The FIFO buffer 340, the windowed averager 342 and the median selector 344 are coupled to a state-machine 346. The state-machine 346 implements a heuristic set of rules in order to output a heart rate estimate based on the contents of the FIFO buffer 340, averages produced by the windowed averager 342 and the output of the median selector 344.
There are Boolean expression rules that govern the transitions from the first state 802 to other states of the state machine 346. These Boolean expression rules are suitably evaluated for each new window period demarcated by the windower 324, after the FIFO buffer 340 has been updated. According to some embodiments the rules depend on counts of registers within a particular range of registers in the FIFO buffer 340 that contain counts that are considered invalid because the heart falls outside of prescribed limit. In certain embodiments the prescribed limit is a lower bound on the heart rate that must not be violated. According to one embodiment the lower bound is 45 beats per minute. In
The rule governing the transition from the first state 802 to a second state 804 requires that FIFO buffer 340 registers in the G4 subset (of which there are four) have less than two counts that violate the prescribed limit and that there be more than twenty registers that contain invalid counts in the entire FIFO buffer 340. The second state 804 will output the average heart rate AG4 over the set of registers designated G4 and will set the Not_valid_flag to zero, meaning the heart rate is valid.
The rule governing the transition from the first state 802 to a third state 806 requires that the FIFO buffer 340 registers in the D8 subset (of which there are 8) have less than two counts that violate the prescribed limit and that there be more than ten registers that contain invalid counts in the entire FIFO buffer 340. The third state 806 will output the average heart rate AD8 over the set of registers designated D8 and will set the Not_valid_flag to zero.
The rule governing the transition from the first state 802 to a fourth state 808 requires that the FIFO buffer 340 registers in the B16 subset (of which there are 16) have less than four counts that violate the prescribed limit and that there be more than five registers that contain invalid counts in the entire FIFO buffer 340. The fourth state 808 will output the average heart rate AB16 over the set of registers designated B16 and will set the Not_valid_flag to zero.
The rule governing the transition from the first state 802 to a fifth state 810 requires that the FIFO buffer 340 registers in the A16 subset (of which there are 16) have less than four counts that violate the prescribed limit and that there be more than ten registers that contain invalid counts in the entire FIFO buffer 340. The fifth state 810 will output the average heart rate AA16 over the set of registers designated A16 and will set the Not_valid_flag to zero.
The rule governing the transition from the first state 802 to a sixth state 812 requires that there be more than twenty registers that contain invalid counts in the entire FIFO buffer 340. The sixth state 812 will output a heart rate of zero and will set the Not_valid_flag to one, meaning the heart rate is invalid.
Although described hereinabove in the context of the heart rate sensing system, the state machine 346 can be used to process other types of systems and is particularly useful in connection with processing signals from sensors that are prone to signal dropout and/or faulty signals.
In the foregoing specification, specific embodiments of the present invention have been described. However, one of ordinary skill in the art appreciates that various modifications and changes can be made without departing from the scope of the present invention as set forth in the claims below. Accordingly, the specification and figures are to be regarded in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of present invention. The benefits, advantages, solutions to problems, and any element(s) that may cause any benefit, advantage, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential features or elements of any or all the claims. The invention is defined solely by the appended claims including any amendments made during the pendency of this application and all equivalents of those claims as issued.
Number | Date | Country | |
---|---|---|---|
Parent | 12116510 | May 2008 | US |
Child | 13309617 | US |