IP Library Granted Patent US 9,322,900
Granted Patent B2
US 9,322,900 · App. 14/207,374 · Granted Apr 26, 2016

Performance enhancements for local network of beacons

Inventors: Andrew Sendonaris (Los Gatos, CA); Jagadish Venkataraman (San Jose, CA); Chen Meng (Beijing, CN)
Assignee: NEXTNAV, LLC
G01S5/02H04W64/00G01S5/0294
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 9,322,900
App. No.
14/207,374
Granted
Apr 26, 2016
Kind
B2
Abstract

Described are systems and methods for estimating a position of a receiver within a venue using localized networks of beacons. Certain aspects relate to different configurations of the networks. Other aspects relate to estimating the position of the receiver when the receiver approaches an edge of a localized network of beacon.

Claims (135)

1. A method for estimating one or more positions of a receiver in a network of beacons, the method comprising:

determining a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

setting a current position of the receiver to the first position estimate;

determining a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determining whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area: setting the current position of the receiver as the second position estimate;

when the second position estimate is not inside the predefined area: determining a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and setting the current position of the receiver as the third position estimate;

after determining that the second position estimate is not inside the predefined area, incrementing a value of a counter;

determining a fourth position estimate of the receiver based on a third set of range measurements corresponding to the network of beacons;

determining whether the fourth position estimate is within the predefined area;

when the fourth position estimate is inside the predefined area, setting the current position of the receiver as the fourth position estimate;

when the fourth position estimate is not inside the predefined area, determining whether the value of the counter meets a threshold condition;

after determining that the value of the counter does not meet the threshold condition, determining a fifth position estimate of the receiver based on the third position estimate and a second measurement of velocity associated with a second movement of the receiver, and setting the current position of the receiver as the fifth position estimate; and

after determining that the value of the counter meets the threshold condition, resetting a Kalman filter.

2. The method of claim 1 , wherein the third position estimate is further based on a map of a venue within which the network of beacons is resides.

3. The method of claim 1 , wherein the predefined area is defined by a bounding box formed by the network of beacons.

4. The method of claim 1 , wherein the network of beacons is disposed inside a building, wherein the network of beacons includes a first beacon that is synchronized to GPS time via a GPS antenna disposed on top of the building, and wherein the network of beacons includes other beacons that synchronize to GPS time based on a timing signal transmitted by the first beacon.

5. A method for estimating one or more positions of a receiver in a network of beacons, the method comprising:

determining a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

setting a current position of the receiver to the first position estimate;

determining a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determining whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area: setting the current position of the receiver as the second position estimate; and

when the second position estimate is not inside the predefined area: determining a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and setting the current position of the receiver as the third position estimate;

determining additional position estimates based on additional measurements of velocity until process noise associated with a Kalman filter reaches a pre-determined amount of process noise, or determining the additional position estimates based on the additional measurements of velocity until a value of a counter reaches a pre-determined threshold value; and

resetting the Kalman filter after the process noise reaches the pre-determined amount of process noise, or resetting the Kalman filter after the value of the counter reaches the pre-determined threshold value.

6. The method of claim 5 , wherein the additional position estimates are determined based on the additional measurements of velocity until the value of the counter reaches the pre-determined threshold value.

7. The method of claim 5 , wherein the additional position estimates are determined based on the additional measurements of velocity until the process noise associated with the Kalman filter reaches the pre-determined amount of process noise.

8. A method for estimating one or more positions of a receiver in a network of beacons, the method comprising:

determining a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

setting a current position of the receiver to the first position estimate;

determining a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determining whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area, setting the current position of the receiver as the second position estimate; and

when the second position estimate is not inside the predefined area, determining a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and setting the current position of the receiver as the third position estimate,

wherein the network of beacons includes at least one beacon coupled to an n-way switch that sends signals to n antennas in n different time slots.

9. A method for estimating one or more positions of a receiver in a network of beacons, the method comprising:

determining, using a processing device, a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

setting a current position of the receiver to the first position estimate;

determining a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determining whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area, setting the current position of the receiver as the second position estimate;

when the second position estimate is not inside the predefined area, determining a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and setting the current position of the receiver as the third position estimate;

comparing atmospheric data from the receiver with atmospheric measurements corresponding to one or more regions of the network of beacons; and

identifying a candidate position estimate based on the comparison between the atmospheric data from the receiver and the atmospheric measurements corresponding to the one or more regions of the network of beacons.

10. A non-transitory machine-readable medium embodying program instructions adapted to be executed to implement a method for estimating one or more positions of a receiver in a network of beacons, the method comprising:

determining a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

setting a current position of the receiver to the first position estimate;

determining a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determining whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area: setting the current position of the receiver as the second position estimate;

when the second position estimate is not inside the predefined area: determining a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and setting the current position of the receiver as the third position estimate;

after determining that the second position estimate is not inside the predefined area, incrementing a value of a counter;

determining a fourth position estimate of the receiver based on a third set of range measurements corresponding to the network of beacons;

determining whether the fourth position estimate is within the predefined area;

when the fourth position estimate is inside the predefined area, setting the current position of the receiver as the fourth position estimate;

when the fourth position estimate is not inside the predefined area, determining whether the value of the counter meets a threshold condition;

after determining that the value of the counter does not meet the threshold condition, determining a fifth position estimate of the receiver based on the third position estimate and a second measurement of velocity associated with a second movement of the receiver, and setting the current position of the receiver as the fifth position estimate; and

after determining that the value of the counter meets the threshold condition, resetting a Kalman filter.

11. The non-transitory machine-readable medium of claim 10 , wherein the third position estimate is further based on a map of a venue within which the network of beacons is resides.

12. The non-transitory machine-readable medium of claim 10 , wherein the predefined area is defined by a bounding box formed by the network of beacons.

13. The non-transitory machine-readable medium of claim 10 , wherein the network of beacons is disposed inside a building, wherein the network of beacons includes a first beacon that is synchronized to GPS time via a GPS antenna disposed on top of the building, and wherein the network of beacons includes other beacons that synchronize to GPS time based on a timing signal transmitted by the first beacon.

14. A non-transitory machine-readable medium embodying program instructions adapted to be executed to implement a method for estimating one or more positions of a receiver in a network of beacons, the method comprising:

determining a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

setting a current position of the receiver to the first position estimate;

determining a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determining whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area: setting the current position of the receiver as the second position estimate;

when the second position estimate is not inside the predefined area: determining a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and setting the current position of the receiver as the third position estimate;

determining additional position estimates based on additional measurements of velocity until process noise associated with a Kalman filter reaches a pre-determined amount of process noise, or determining the additional position estimates based on the additional measurements of velocity until a value of a counter reaches a pre-determined threshold value; and

resetting the Kalman filter after the process noise reaches the pre-determined amount of process noise, or resetting the Kalman filter after the value of the counter reaches the pre-determined threshold value.

15. The non-transitory machine-readable medium of claim 14 , wherein the additional position estimates are determined based on the additional measurements of velocity until the value of the counter reaches the pre-determined threshold value, at which point the Kalman filter is reset.

16. The non-transitory machine-readable medium of claim 14 , wherein the additional position estimates are determined based on the additional measurements of velocity until the process noise associated with the Kalman filter reaches the pre-determined amount of process noise, at which point the Kalman filter is reset.

17. A non-transitory machine-readable medium embodying program instructions adapted to be executed to implement a method for estimating one or more positions of a receiver in a network of beacons, the method comprising:

determining a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

setting a current position of the receiver to the first position estimate;

determining a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determining whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area, setting the current position of the receiver as the second position estimate; and

when the second position estimate is not inside the predefined area, determining a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and setting the current position of the receiver as the third position estimate,

wherein the network of beacons includes at least one beacon coupled to an n-way switch that sends signals to n antennas in n different time slots.

18. A non-transitory machine-readable medium embodying program instructions adapted to be executed to implement a method for estimating one or more positions of a receiver in a network of beacons, the method comprising:

determining a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

setting a current position of the receiver to the first position estimate;

determining a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determining whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area, setting the current position of the receiver as the second position estimate;

when the second position estimate is not inside the predefined area, determining a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and setting the current position of the receiver as the third position estimate;

comparing atmospheric data from the receiver with atmospheric measurements corresponding to one or more regions of the network of beacons; and

identifying a candidate position estimate based on the comparison between the atmospheric data from the receiver and the atmospheric measurements corresponding to the one or more regions of the network of beacons.

19. A system for estimating one or more positions of a receiver in a network of beacons, the system comprising one or more devices to:

determine a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

set a current position of the receiver to the first position estimate;

determine a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determine whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area, set the current position of the receiver as the second position estimate;

when the second position estimate is not inside the predefined area, determine a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and set the current position of the receiver as the third position estimate;

after determining that the second position estimate is not inside the predefined area, increment a value of a counter;

determine a fourth position estimate of the receiver based on a third set of range measurements corresponding to the network of beacons;

determine whether the fourth position estimate is within the predefined area;

when the fourth position estimate is inside the predefined area, set the current position of the receiver as the fourth position estimate;

when the fourth position estimate is not inside the predefined area, determine whether the value of the counter meets a threshold condition;

after determining that the value of the counter does not meet the threshold condition, determine a fifth position estimate of the receiver based on the third position estimate and a second measurement of velocity associated with a second movement of the receiver, and set the current position of the receiver as the fifth position estimate; and

after determining that the value of the counter meets the threshold condition, reset a Kalman filter.

20. The system of claim 19 , wherein the third position estimate is further based on a map of a venue within which the network of beacons is resides.

21. The system of claim 19 , wherein the predefined area is defined by a bounding box formed by the network of beacons.

22. The system of claim 19 , wherein the network of beacons is disposed inside a building, wherein the network of beacons includes a first beacon that is synchronized to GPS time via a GPS antenna disposed on top of the building, and wherein the network of beacons includes other beacons that synchronize to GPS time based on a timing signal transmitted by the first beacon.

23. A system for estimating one or more positions of a receiver in a network of beacons, the system comprising one or more devices to:

determine a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

set a current position of the receiver to the first position estimate;

determine a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determine whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area, set the current position of the receiver as the second position estimate;

when the second position estimate is not inside the predefined area, determine a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and set the current position of the receiver as the third position estimate;

determine additional position estimates based on additional measurements of velocity until process noise associated with a Kalman filter reaches a pre-determined amount of process noise, or determine the additional position estimates based on the additional measurements of velocity until a value of a counter reaches a pre-determined threshold value; and

reset the Kalman filter after the process noise reaches the pre-determined amount of process noise, or reset the Kalman filter after the value of the counter reaches the pre-determined threshold value.

24. The method of claim 23 , wherein the one or more devices determine the additional position estimates based on the additional measurements of velocity until the value of the counter reaches the pre-determined threshold value.

25. The method of claim 23 , wherein the one or more devices determine the additional position estimates based on the additional measurements of velocity until the process noise associated with the Kalman filter reaches the pre-determined amount of process noise.

26. A system for estimating one or more positions of a receiver in a network of beacons, the system comprising one or more devices to:

determine a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

set a current position of the receiver to the first position estimate;

determine a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determine whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area, set the current position of the receiver as the second position estimate; and

when the second position estimate is not inside the predefined area, determine a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and set the current position of the receiver as the third position estimate,

wherein the network of beacons includes at least one beacon coupled to an n-way switch that sends signals to n antennas in n different time slots.

27. A system for estimating one or more positions of a receiver in a network of beacons, the system comprising one or more devices to:

determine a first position estimate of a receiver based on a first set of range measurements corresponding to a network of beacons;

set a current position of the receiver to the first position estimate;

determine a second position estimate of the receiver based on a second set of range measurements corresponding to the network of beacons;

determine whether the second position estimate is within a predefined area associated with the network of beacons;

when the second position estimate is inside the predefined area, set the current position of the receiver as the second position estimate;

when the second position estimate is not inside the predefined area, determine a third position estimate of the receiver based on the first position estimate and a first measurement of velocity associated with a first movement of the receiver, and set the current position of the receiver as the third position estimate;

compare atmospheric data from the receiver with atmospheric measurements corresponding to one or more regions of the network of beacons; and

identify a candidate position estimate based on the comparison between the atmospheric data from the receiver and the atmospheric measurements corresponding to the one or more regions of the network of beacons.

Assignments (4)
SECURITY INTEREST Recorded Apr 1, 2025
From: NEXTNAV INC.; NEXTNAV HOLDINGS, LLC; NEXTNAV INTERMEDIATE HOLDCO, LLC; PROGENY LMS, LLC; COMMLABS, INC.
To: GLAS TRUST COMPANY LLC
Reel/Frame 070691/0909 →
RELEASE OF SECURITY INTEREST Recorded Oct 29, 2021
From: FORTRESS CREDIT CORP.
To: NEXTNAV, LLC
Reel/Frame 057973/0636 →
ASSIGNMENT FOR SECURITY -- PATENTS Recorded Dec 27, 2019
From: NEXTNAV, LLC; PROGENY LMS, LLC
To: FORTRESS CREDIT CORP., AS AGENT
Reel/Frame 051433/0692 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 13, 2014
From: SENDONARIS, ANDREW; VENKATARAMAN, JAGADISH; MENG, CHEN
To: NEXTNAV, LLC
Reel/Frame 032434/0675 →
Continuity (2)
Provisional Application 61786550 · Mar 15, 2013
Related Publication 20140274125A1 · Sep 18, 2014