IP Library › Granted Patent US 10,739,140
Granted Patent B2
US 10,739,140 · App. 15/853,510 · Granted Aug 11, 2020

Iterative estimation of non-holonomic constraints in an inertial navigation system

Inventors: Changlin Ma (San Jose, CA); Isaac T. Miller (Half Moon Bay, CA)
Assignee: Apple Inc.
G01C21/165B60G17/016B60R21/0133G01C21/28G01S19/31G01S19/393G01S19/50B60G2800/912B60R2021/01327B60W2050/0013
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,739,140
App. No.
15/853,510
Granted
Aug 11, 2020
Kind
B2
Abstract

A device implementing a system for estimating device location includes at least one processor configured to receive a first and second set of signals, each set corresponding to location data and being received based on a sampling interval. The at least one processor is configured to, for each sampling period defined by the sampling interval, obtain sensor data corresponding to device motion during the sampling period, determine an orientation of the device relative to that of the vehicle based on the sensor data, calculate a non-holonomic constraint based on the orientation of the device relative to that of the vehicle such that the non-holonomic constraint is iteratively updated, and estimate a device state based on the non-holonomic constraint.

Claims (58)

1. A method, comprising:

receiving, by a device within or coupled to a vehicle in motion, a first and second set of signals, each of the first and second set of signals corresponding to location data and each of the first and second set of signals being received based on a sampling interval; and

for each sampling period defined by the sampling interval,

obtaining first sensor data which corresponds to motion of the device during the sampling period,

determining an orientation of the device relative to an orientation of the vehicle based on the first sensor data,

calculating a non-holonomic constraint based on the orientation of the device relative to the orientation of the vehicle, such that the non-holonomic constraint is iteratively updated for each sampling period, and

estimating a state of the device based on the non-holonomic constraint.

2. The method of claim 1 , wherein estimating the state of the device is further based on second sensor data subsequently obtained by the device.

3. The method of claim 2 , further comprising:

estimating a location of the device based on the estimated state of the device and on a third set of signals, corresponding to location data, subsequently received by the device.

4. The method of claim 1 , wherein determining the orientation of the device relative to the orientation of the vehicle comprises:

determining, based on the first sensor data, a first device vector corresponding to a first direction relative to an orientation of the device;

determining a first vehicle vector corresponding to the first direction relative to an orientation of the vehicle;

determining, based on the first sensor data, a second device vector corresponding to a second direction relative to the orientation of the device;

determining a second vehicle vector corresponding to the second direction relative to the orientation of the vehicle; and

determining the orientation of the device relative to the orientation of the vehicle based on the first device vector, the first vehicle vector, the second device vector and the second vehicle vector.

5. The method of claim 4 , wherein the first direction is a direction of gravity, such that the first device vector corresponds to the direction of gravity relative to the orientation of the device, and the first vehicle vector corresponds to the direction of gravity relative to the orientation of the vehicle.

6. The method of claim 5 , wherein the direction of gravity relative to the orientation of the vehicle is predetermined as a downward direction.

7. The method of claim 4 , wherein the second direction is a direction of travel, such that the second device vector corresponds to the direction of travel relative to the orientation of the device, and the second vehicle vector corresponds to the direction of travel relative to the orientation of the vehicle.

8. The method of claim 7 , wherein the direction of travel relative to the orientation of the vehicle corresponds to a forward direction.

9. The method of claim 4 , wherein the first sensor data is obtained by a first sensor and a second sensor of the device, the first device vector is determined based on the first sensor data as obtained by the first sensor, and the second device vector is determined based on the first sensor data as obtained by the second sensor.

10. The method of claim 9 , wherein the first and second sensors are different sensors selected from an accelerometer, a gyroscope or a magnetometer of the device.

11. The method of claim 4 , wherein the first sensor data is obtained by an accelerometer of the device, and wherein the first device vector and the second device vector are determined based on the first sensor data as obtained by the accelerometer.

12. The method of claim 1 , wherein the non-holonomic constraint corresponds to a no-slip direction for the vehicle, such that sensor measurements corresponding to sideslip of the vehicle are disregarded or limited.

13. The method of claim 12 , further comprising:

calculating a covariance matrix based on the first sensor data;

calculating a singular value decomposition based on the covariance matrix; and

determining an estimate for the no-slip direction based on the calculated singular value decomposition.

14. The method of claim 1 , wherein calculating the non-holonomic constraint for each sampling period is performed using a filter.

15. The method of claim 1 , wherein the plural sets of signals corresponding to location data correspond to at least one of Global Navigation Satellite System (GNSS) signals or wireless network signals.

16. The method of claim 1 , wherein the state of the device is estimated using an inertial navigation system, the inertial navigation system supplementing a location estimation determined from the plural sets of signals.

17. A device, comprising:

plural sensors; and

at least one processor configured to:

receive, by a first sensor of the plural sensors and while the device is within or coupled to a vehicle in motion, a first and second set of signals, each of the first and second set of signals corresponding to location data and each of the first and second set of signals being received based on a sampling interval; and

for each sampling period defined by the sampling interval,

obtain, by at least one second sensor of the plural sensors, sensor data which corresponds to motion of the device during the sampling period,

determine an orientation of the device relative to an orientation of the vehicle based on the sensor data,

calculate a non-holonomic constraint based on the orientation of the device relative to the orientation of the vehicle, such that the non-holonomic constraint is iteratively updated for each sampling period, and

estimate a state of the device based on the non-holonomic constraint.

18. The device of claim 17 , wherein determining the orientation of the device relative to the orientation of the vehicle comprises:

determining, based on the sensor data, a first device vector corresponding to a first direction relative to an orientation of the device;

determining a first vehicle vector corresponding to the first direction relative to an orientation of the vehicle;

determining, based on the sensor data, a second device vector corresponding to a second direction relative to the orientation of the device;

determining a second vehicle vector corresponding to the second direction relative to the orientation of the vehicle; and

determining the orientation of the device relative to the orientation of the vehicle based on the first device vector, the first vehicle vector, the second device vector and the second vehicle vector.

19. The device of claim 18 , wherein the first direction is a direction of gravity, such that the first device vector corresponds to the direction of gravity relative to the orientation of the device, and the first vehicle vector corresponds to the direction of gravity relative to the orientation of the vehicle.

20. A computer program product comprising code stored in a tangible computer-readable storage medium, the code comprising:

code to receive, by a device within or coupled to a vehicle in motion, a first and second set of signals, each of the first and second set of signals corresponding to location data and each of the first and second set of signals being received based on a sampling interval; and

code to, for each sampling period defined by the sampling interval,

obtain sensor data which corresponds to motion of the device during the sampling period,

determine, based on the sensor data, a first device vector corresponding to a first direction relative to an orientation of the device,

determine a first vehicle vector corresponding to the first direction relative to an orientation of the vehicle,

determine, based on the sensor data, a second device vector corresponding to a second direction relative to the orientation of the device,

determine a second vehicle vector corresponding to the second direction relative to the orientation of the vehicle,

determine the orientation of the device relative to the orientation of the vehicle based on the first device vector, the first vehicle vector, the second device vector and the second vehicle vector,

calculate a non-holonomic constraint based on the orientation of the device relative to the orientation of the vehicle, such that the non-holonomic constraint is iteratively updated for each sampling period, and

estimate a state of the device based on the non-holonomic constraint.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2018
From: MA, CHANGLIN; MILLER, ISAAC T.
To: APPLE INC.
Reel/Frame 044589/0196 →
Continuity (2)
Provisional Application 62556286 · Sep 8, 2017
Related Publication 20190078895A1 · Mar 14, 2019