IP Library Granted Patent US 11,959,772
Granted Patent B2
US 11,959,772 · App. 17/150,598 · Granted Apr 16, 2024

Odometer interpolation using GPS data

Inventors: Andrew Robbins (San Francisco, CA); Christopher Hao Zhen (San Francisco, CA); George Selman Leslie-Waksman (Oakland, CA); Changping Chen (Walnut Creek, CA); Cassandra Lee Rommel (Chicago, IL)
Assignee: Samsara Inc.
G01C22/02G01C21/165G01C22/00G01S5/0036G01S19/09G01S19/49
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 11,959,772
App. No.
17/150,598
Granted
Apr 16, 2024
Kind
B2
Abstract

A system to augment the collected odometer data points with more precise location data which provides an indication of a location of a vehicle associated with the odometer at a given time, such as Global Positioning System (GPS) GPS data points. Additionally, the GPS data points may be collected at a higher sampling rate than the odometer data points, thus providing a more precise indication of a distance traveled by a vehicle at any given time.

Claims (57)

1. A method comprising:

receiving a first odometer data point that includes a first timestamp, and a second odometer data point that includes a second timestamp;

plotting the first odometer data point and the second odometer data point on a graph based on the first timestamp and the second timestamp, the graph comprising a first axis that represents distance values and a second axis that represents temporal values;

accessing a plurality of GPS data points based on the first timestamp and the second timestamp of the first odometer data point and the second odometer data point, the plurality of GPS data points comprising location data;

plotting the plurality of GPS data points at positions between the first odometer data point and the second odometer data point along the graph;

generating a segment that comprises a length attribute that depicts a represents distance traveled over time based on the plurality of GPS data points; and

causing display of the segment upon the graph based on the length attribute.

2. The method of claim 1 , wherein the first odometer data point and the second odometer data point are collected from an odometer associated with a vehicle, and the receiving the first odometer data point and the second odometer data point includes:

detecting movement at the vehicle associated with the odometer; and

collecting the first odometer data point and the second odometer data point in based on the movement.

3. The method of claim 1 , wherein the receiving the first odometer data point and the second odometer data point includes:

collecting the first odometer data point and the second odometer data point at a predefined sampling rate.

4. The method of claim 3 , wherein the predefined sampling rate includes one or more of a temporal based sampling rate and a distance based sampling rate.

5. The method of claim 1 , wherein the method further comprises:

interpolating a speed value based on the first odometer data point and the second odometer data point.

6. The method of claim 5 , wherein the method further comprises:

determining that the speed value transgresses a threshold value;

detecting an error based on the speed value transgressing the threshold value; and

accessing the plurality of GPS data points in response to the detecting the error.

7. The method of claim 1 , wherein the receiving the first odometer data point and the second odometer data point includes receiving the first odometer data point and the second odometer data point at a first sampling rate, and wherein the accessing the plurality of GPS data points includes accessing the plurality of GPS data points at a second sampling rate.

8. The method of claim 7 , wherein the second sampling rate is at a greater frequency than the first sampling rate.

9. A system comprising:

a memory; and

at least one hardware processor to perform operations comprising:

receiving a first odometer data point that includes a first timestamp, and a second odometer data point that includes a second timestamp;

plotting the first odometer data point and the second odometer data point on a graph based on the first timestamp and the second timestamp, the graph comprising a first axis that represents distance values and a second axis that represents temporal values;

accessing a plurality of GPS data points based on the first timestamp and the second timestamp of the first odometer data point and the second odometer data point, the plurality of GPS data points comprising location data;

plotting the plurality of GPS data points at positions between the first odometer data point and the second odometer data point along the graph;

generating a segment that comprises a length attribute that depicts a distance traveled over time based on the plurality of GPS data points; and

causing display of the segment upon the graph based on the length attribute.

10. The system of claim 9 , wherein the first odometer data point and the second odometer data point are collected from an odometer associated with a vehicle, and the receiving the first odometer data point and the second odometer data point includes:

detecting movement at the vehicle associated with the odometer; and

collecting the first odometer data point and the second odometer data point in based on the movement.

11. The system of claim 9 , wherein the receiving the first odometer data point and the second odometer data point includes:

collecting the first odometer data point and the second odometer data point at a predefined sampling rate.

12. The system of claim 11 , wherein the predefined sampling rate includes one or more of a temporal based sampling rate and a distance based sampling rate.

13. The system of claim 9 , wherein the operations further comprise:

interpolating a speed value based on the first odometer data point and the second odometer data point.

14. The system of claim 13 , wherein the operations further comprise:

determining that the speed value transgresses a threshold value;

detecting an error based on the speed value transgressing the threshold value; and

accessing the plurality of GPS data points in response to the detecting the error.

15. The system of claim 9 , wherein the receiving the first odometer data point and the second odometer data point includes receiving the first odometer data point and the second odometer data point at a first sampling rate, and wherein the accessing the plurality of GPS data points includes accessing the plurality of GPS data points at a second sampling rate.

16. The system of claim 15 , wherein the second sampling rate is at a greater frequency than the first sampling rate.

17. A non-transitory machine-readable storage medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

receiving a first odometer data point that includes a first timestamp, and a second odometer data point that includes a second timestamp;

plotting the first odometer data point and the second odometer data point on a graph based on the first timestamp and the second timestamp, the graph comprising a first axis that represents distance values and a second axis that represents temporal values;

accessing a plurality of GPS data points based on the first timestamp and the second timestamp of the first odometer data point and the second odometer data point, the plurality of GPS data points comprising location data;

plotting the plurality of GPS data points at positions between the first odometer data point and the second odometer data point along the graph;

generating a segment that comprises a length attribute that depicts a distance traveled over time based on the plurality of GPS data points; and

causing display of the segment upon the graph based on the length attribute.

18. The non-transitory machine-readable storage medium of claim 17 , wherein the first odometer data point and the second odometer data point are collected from an odometer associated with a vehicle, and the receiving the first odometer data point and the second odometer data point includes:

detecting movement at the vehicle associated with the odometer; and

collecting the first odometer data point and the second odometer data point in based on the movement.

19. The non-transitory machine-readable storage medium of claim 17 , wherein the receiving the first odometer data point and the second odometer data point includes:

collecting the first odometer data point and the second odometer data point at a predefined sampling rate.

20. The non-transitory machine-readable storage medium of claim 19 , wherein the predefined sampling rate includes one or more of a temporal based sampling rate and a distance based sampling rate.

Assignments (2)
CHANGE OF NAME Recorded Jan 17, 2024
From: SAMSARA NETWORKS INC.
To: SAMSARA INC.
Reel/Frame 066154/0870 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2021
From: ROBBINS, ANDREW; ZHEN, CHRISTOPHER HAO; LESLIE-WAKSMAN, GEORGE SELMAN; CHEN, CHANGPING; ROMMEL, CASSANDRA LEE
To: SAMSARA NETWORKS INC.
Reel/Frame 055009/0351 →
Continuity (1)
Related Publication 20220228887A1 · Jul 21, 2022
Cited By (34)
US 12,197,610 US 12,213,090 US 12,228,944 US 12,238,610 US 12,253,617 US 12,256,021 US 12,260,616 US 12,269,498 US 12,289,181 US 12,306,010 US 12,327,445 US 12,328,639 US 12,344,168 US 12,346,712 US 12,367,718 US 12,426,007 US 12,445,285 US 12,450,329 US 12,479,446 US 12,501,178 US 12,511,947 US 12,524,314 US 12,534,097 US 12,561,624 US 12,565,143 US 12,626,200 US 12,630,050 US 12,646,402 US 12,651,529 US 12,662,152 US 12,665,989 US 12,671,464 US 12,675,419 US 12,701,004