IP Library Granted Patent US 10,030,993
Granted Patent B2
US 10,030,993 · App. 14/069,194 · Granted Jul 24, 2018

Method and system for determining whether steps have occurred

Inventor: James R. Barfield (Atlanta, GA)
Assignee: Verizon Connect Inc.
G01C22/006G01C5/06
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,030,993
App. No.
14/069,194
Granted
Jul 24, 2018
Kind
B2
Abstract

A filter processes acceleration magnitude signals from an accelerometer device to output spectral content related to walking and running. A device containing the accelerometer determines steps by qualitatively analyzing the processed acceleration signals to determine whether increased acceleration magnitude results from a step impact from running or walking activity. The device may analyze the acceleration signals to determine crossings of an axis at zero magnitude, which crossings typically correspond to a person's foot impacting the ground, and may analyze the period between the zero crossings. The step count can indicate whether the device, in a height determination mode, is moving in a vehicle; if analysis of accelerometer signals indicates no stepping or running, but another circuit of the device indicates rapid movement, the device assumes it is moving in a vehicle, and resets a height above ground value to zero upon determining resumption of walking or running activity.

Claims (154)

1. A device for counting steps, comprising:

a processor to:

collect acceleration data, associated with a user of the device, from an accelerometer sensor;

determine a magnitude signal based on the acceleration data collected from the accelerometer sensor;

determine, based on determining the magnitude signal, a first frequency of a first amplitude associated with a fastest stepping speed;

determine, based on determining the magnitude signal, a second frequency of a second amplitude associated with a slowest stepping speed;

establish a filter using the first frequency and the second frequency,

the first frequency being an upper cutoff frequency of the filter, and

the second frequency being a lower cutoff frequency of the filter;

apply the filter to the magnitude signal;

determine based on applying the filter to the magnitude signal:

a minimum half period time threshold associated with the user of the device,

a first half period magnitude threshold associated with the user of the device, and

a maximum half period time threshold associated with the user of the device;

receive sampled pressure data from a pressure sensor;

determine, based on the sampled pressure data, that a change in height above ground by the device has occurred;

determine, via a (Global Positioning System) GPS circuit and based on determining the change in height above ground by the device, a speed value associated with the device;

reset, based on the speed value satisfying a speed threshold, a height above ground value;

turn off, based on the speed value satisfying a speed threshold, the GPS circuit;

receive sampled acceleration data;

determine magnitude acceleration information based on the sampled acceleration data;

determine based on the magnitude acceleration information:

a first negative-to-positive acceleration change,

a positive-to-negative acceleration change succeeding the first negative-to-positive acceleration change, and

a second negative-to-positive acceleration change;

compare a first half period time value and the minimum half period time threshold,

the first half period time value corresponding to a first amount of time between the first negative-to-positive acceleration change and the positive-to-negative acceleration change;

compare the first half period time value and the maximum half period time threshold;

compare, based on the first half period time value satisfying the minimum half period time threshold and the maximum half period time threshold, a magnitude acceleration value, corresponding to the first half period time value, and the first half period magnitude threshold;

compare, based on the magnitude acceleration value satisfying the first half period magnitude threshold, a second half period time value to the minimum half period time threshold,

the second half period time value corresponding to a second amount of time between the positive-to-negative acceleration change and the second negative-to-positive acceleration change;

compare the second half period time value and the maximum half period time threshold;

determine that a step has occurred based on the second half period time value satisfying the minimum half period time threshold and the maximum half period time threshold;

turn on the GPS circuit based on determining that the step occurred; and

output a step signal indicating that the step has occurred.

2. The device of claim 1 , wherein the processor is further to:

increment a pre-step count value based on the step signal indicating that the step has occurred; and

add the pre-step count value to a total step count value based on the pre-step count value reaching a predetermined quantity of step counts.

3. The device of claim 2 , wherein the pre-step count value is reset based on the step not occurring within a predetermined amount of time after a previous step indication.

4. The device of claim 1 , wherein the processor is further to:

filter the sampled acceleration data with a band-pass filter to generate filtered magnitude acceleration information; and

wherein the processor, when comparing the first half period time value and the minimum half period time threshold, is to:

compare the first half period time value and the minimum half period time threshold using values corresponding to the filtered magnitude acceleration information.

5. The device of claim 1 , where the magnitude acceleration value is a first magnitude acceleration value;

wherein the processor is further to:

compare a second magnitude acceleration value, corresponding to the second half period time value, and a second half period magnitude threshold; and

wherein the processor, when determining that the step has occurred, is to:

determine that the step has occurred based on the second magnitude acceleration value satisfying the second half period magnitude threshold.

6. The device of claim 1 , where the magnitude acceleration value is a first magnitude acceleration value; and

wherein the processor is further to:

compare, based on the second half period time value satisfying the maximum half period time threshold, a second magnitude acceleration value, corresponding to a second half period magnitude acceleration, with a second half period magnitude threshold.

7. The device of claim 1 , wherein the processor is further to:

compare a minimum acceleration value to a magnitude acceleration threshold; and

wherein the processor, when determining that the step has occurred, is to:

determine that the step has occurred based on the minimum acceleration value satisfying the magnitude acceleration threshold.

8. The device of claim 1 , wherein the device is a pedometer.

9. The device of claim 1 , wherein the acceleration data is associated with one of:

a walking activity of the user, or

a running activity of the user.

10. A method, comprising:

collecting, by a device, acceleration data, associated with a user of the device, from an accelerometer sensor;

determining, by the device, a magnitude signal based on the acceleration data collected from the accelerometer sensor;

determining, by the device and based on determining the magnitude signal, a first frequency of a first amplitude associated with a fastest stepping speed;

determining, by the device and based on determining the magnitude signal, a second frequency of a second amplitude associated with a slowest stepping speed;

establishing, by the device, a filter using the first frequency and the second frequency,

the first frequency being an upper cutoff of the filter, and

the second frequency being a lower cutoff of the filter;

applying, by the device, the filter to the magnitude signal;

determining by the device and based on applying the filter to the magnitude signal:

a minimum half period time threshold associated with the user of the device,

a first half period magnitude threshold associated with the user of the device, and

a maximum half period time threshold associated with the user of the device;

receiving, by the device, sampled pressure data from a pressure sensor;

determining, by the device and based on the sampled pressure data, that a change in height above ground by the device has occurred;

determining, by the device, via a (Global Positioning System) GPS circuit, and based on determining the change in height above ground by the device, a speed value associated with the device;

resetting, by the device and based on the speed value satisfying a speed threshold, a height above ground value;

turning off, by the device and based on the speed value satisfying a speed threshold, the GPS circuit;

receiving, by the device, a sampled acceleration data;

determining, by the device, magnitude acceleration information based on the sampled acceleration data;

determining, by the device, based on the magnitude acceleration information:

a first negative-to-positive acceleration change,

a positive-to-negative acceleration change succeeding the first negative-to-positive acceleration change, and

a second negative-to-positive acceleration change;

comparing, by the device, a first half period time value and the minimum half period time threshold,

the first half period time value corresponding to a first amount of time between the first negative-to-positive acceleration change and the positive-to-negative acceleration change;

comparing, by the device, the first half period time value and the maximum half period time threshold;

comparing, by the device and based on the first half period time value satisfying the minimum half period time threshold and the maximum half period time threshold, a magnitude acceleration value, corresponding to the first half period time value, and the first half period magnitude threshold;

comparing, by the device and based on the magnitude acceleration value satisfying the first half period magnitude threshold, a second half period time value to the minimum half period time threshold,

the second half period time value corresponding to a second amount of time between the positive-to-negative acceleration change and the second negative-to-positive acceleration change;

comparing, by the device, the second half period time value and the maximum half period time threshold;

determining, by the device, that a step has occurred based on the second half period time value satisfying the minimum half period time threshold and the maximum half period time threshold;

turning on, by the device and based on determining that the step occurred, the GPS circuit; and

outputting, by the device, a step signal indicating that the step has occurred.

11. The method of claim 10 , further comprising:

incrementing a pre-step count value based on the step signal indicating that the step has occurred; and

adding the pre-step count value to a total step count value based on the pre-step count value reaching a predetermined quantity of step counts.

12. The method of claim 11 , further comprising:

resetting the pre-step count value based on the step not occurring within a predetermined amount of time after an immediately previous step indication.

13. The method of claim 10 , further comprising:

filtering the sampled acceleration data with a band-pass filter to generate filtered magnitude acceleration information; and

wherein comparing the first half period time value and the minimum half period time threshold comprises:

comparing the first half period time value and the minimum half period time threshold using values corresponding to the filtered magnitude acceleration information.

14. The method of claim 10 , where the magnitude acceleration value is a first magnitude acceleration value;

wherein the method further comprises:

comparing a second magnitude acceleration value, corresponding to the second half period time value, and a second half period magnitude threshold; and

wherein determining that the step has occurred comprises:

determining that the step has occurred based on the second magnitude acceleration value satisfying the second half period magnitude threshold.

15. The method of claim 10 , where the magnitude acceleration value is a first magnitude acceleration value; and

where the method further comprises:

comparing, based on the second half period time value satisfying the maximum half period time threshold, a second magnitude acceleration value, corresponding to a second half period magnitude acceleration, with a second half period magnitude threshold.

16. The method of claim 15 , where the second magnitude acceleration value corresponds to a minimum magnitude acceleration value associated with the second half period time value.

17. The method of claim 10 , further comprising:

comparing a minimum acceleration value of a second half period to a magnitude acceleration threshold; and

wherein determining that the step has occurred comprises:

determine that the step has occurred based on the minimum acceleration value of the second half period satisfying the magnitude acceleration threshold.

18. The method of claim 10 , where the magnitude acceleration value corresponds to a maximum magnitude acceleration value associated with the first half period time value.

19. A non-transitory computer-readable medium storing instructions, the instructions comprising:

one or more instructions that, when executed by one or more processors of a device, cause the one or more processors to:

collect acceleration data, associated with a user of the device, from an accelerometer sensor;

determine a magnitude signal based on the acceleration data collected from the accelerometer sensor;

determine, based on determining the magnitude signal, a first frequency of a first amplitude associated with a fastest stepping speed;

determine, based on determining the magnitude signal, a second frequency of a second amplitude associated with a slowest stepping speed;

establish a filter using the first frequency and the second frequency,

the first frequency being an upper cutoff frequency of the filter, and

the second frequency being a lower cutoff frequency of the filter;

apply the filter to the magnitude signal;

determine based on applying the filter to the magnitude signal:

a minimum half period time threshold associated with the user of the device,

a first half period magnitude threshold associated with the user of the device, and

a maximum half period time threshold associated with the user of the device;

receive sampled pressure data from a pressure sensor;

determine, based on the sampled pressure data, that a change in height above ground by the device has occurred;

determine, via a (Global Positioning System) GPS circuit and based on determining the change in height above ground by the device, a speed value associated with the device;

reset, based on the speed value satisfying a speed threshold, a height above ground value;

turn off, based on the speed value satisfying a speed threshold, the GPS circuit;

receive sampled acceleration data;

determine magnitude acceleration information based on the sampled acceleration data;

determine based on the magnitude acceleration information:

a first negative-to-positive acceleration change,

a positive-to-negative acceleration change succeeding the first negative-to-positive acceleration change, and

a second negative-to-positive acceleration change;

compare a first half period time value and the minimum half period time threshold,

the first half period time value corresponding to a first amount of time between the first negative-to-positive acceleration change and the positive-to-negative acceleration change;

compare the first half period time value and the maximum half period time threshold;

compare, based on the first half period time value satisfying the minimum half period time threshold and the maximum half period time threshold, a magnitude acceleration value, corresponding to the first half period time value, and the first half period magnitude threshold;

compare, based on the magnitude acceleration value satisfying the first half period magnitude threshold, a second half period time value to the minimum half period time threshold,

the second half period time value corresponding to a second amount of time between the positive-to-negative acceleration change and the second negative-to-positive acceleration change;

compare the second half period time value and the maximum half period time threshold;

determine that a step has occurred based on the second half period time value satisfying the minimum half period time threshold and the maximum half period time threshold;

turn on the GPS circuit based on determining that the step has occurred; and

output a step signal indicating that the step has occurred.

20. The non-transitory computer-readable medium of claim 19 , wherein the one or more instructions, when executed by the one or more processors, further cause the one or more processors to:

increment a pre-step count value based on the step signal indicating that the step has occurred; and

add the pre-step count value to a total step count value based on the pre-step count value reaching a predetermined quantity of step counts.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2018
From: VERIZON CONNECT INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 047469/0089 →
CHANGE OF NAME Recorded Apr 11, 2018
From: VERIZON TELEMATICS INC.
To: VERIZON CONNECT INC.
Reel/Frame 045911/0801 →
MERGER Recorded Feb 17, 2016
From: HTI IP, LLC
To: VERIZON TELEMATICS INC.
Reel/Frame 037845/0198 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2013
From: BARFIELD, JAMES R.
To: HTI IP, L.L.C.
Reel/Frame 031525/0001 →
Continuity (2)
Provisional Application 61721319 · Nov 1, 2012
Related Publication 20140188431A1 · Jul 3, 2014