IP Library Granted Patent US 10,378,907
Granted Patent B1
US 10,378,907 · App. 16/196,401 · Granted Aug 13, 2019

Methods and systems for determining vertical location in enclosed spaces

Inventors: Ismail Ege Akpinar (London, GB); Can Tunca (Istanbul, TR); Sinan Isik (Istanbul, TR); Mehmet Can Akpinar (Istanbul, TR)
Assignee: Pointr Limited
G01C21/206G01S1/045G01S1/047H04W4/024H04W4/027H04W4/33
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,378,907
App. No.
16/196,401
Granted
Aug 13, 2019
Kind
B1
Abstract

Determining a vertical location of a hand-held computing device. At least some of the example embodiments are computer-implemented methods including: generating an estimate of expected vertical location based on items of beacon data received from beacons by a radio receiver of the hand-held computing device, generating an error covariance of the estimate of expected vertical location based on the items of beacon data, calculating a level normalized change based on measurements of barometric pressure by a pressure sensor of the hand-held computing device, calculating the vertical location of the hand-held computing device based on the level normalized change, the error covariance of the estimate of expected vertical location, and the estimate of expected vertical location, and activating a relevant map for a level comprising the vertical location and displaying the vertical location on a display device of the hand-held computing device.

Claims (64)

1. A computer-implemented method for determining a vertical location of a hand-held computing device, the method comprising:

generating an estimate of expected vertical location based on items of beacon data received from beacons by a radio receiver of the hand-held computing device;

generating an error covariance of the estimate of expected vertical location based on the items of beacon data;

calculating a level normalized change based on measurements of barometric pressure by a pressure sensor of the hand-held computing device;

calculating the vertical location of the hand-held computing device by generating an integer value representing a level inside a structure based on a Kalman filter having inputs comprising the level normalized change, the error covariance of the estimate of expected vertical location, and the estimate of expected vertical location; and

activating a relevant map for a level comprising the vertical location and displaying the vertical location on a display device of the hand-held computing device.

2. The computer-implemented method of claim 1 , wherein the inputs further comprise an error covariance of the level normalized change and the method further comprises refining the error covariances using items of measured data.

3. The computer-implemented method of claim 1 , further comprising iteratively calculating expected vertical location from beacon data and level normalized change estimated from barometric pressure and error covariances.

4. The computer-implemented method of claim 1 , wherein the inputs further comprise an error covariance of the estimate of expected vertical location representing reliability of the items of beacon data.

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

assigning time information to items of beacon data;

estimating beacon distances for the items of the beacon data; and

estimating beacon distance accuracies for the items of beacon data.

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

receiving the items of beacon data at the radio receiver of the hand-held computing device;

determining validities of the items of beacon data; and

storing the beacon distances, beacon distance accuracies, and items of beacon data time information in a beacon data dictionary.

7. The computer-implemented method of claim 6 , wherein the beacon data dictionary comprises a table of datagrams having index keys based on a horizontal beacon location and a beacon level.

8. A computer-implemented method for determining a vertical location of a hand-held computing device, the method comprising:

generating an estimate of expected vertical location by generating an integer value representing an estimate of an expected level inside a structure based on a set of probabilities calculated at least in part from beacon data comprising beacon distances, beacon distance accuracies, and items of beacon data time information, wherein the beacon distance accuracies are calculated using venue-dependent accuracy constants;

generating an error covariance of the estimate of expected vertical location based on the items of beacon data;

calculating a level normalized change based on measurements of barometric pressure by a pressure sensor of the hand-held computing device;

calculating the vertical location of the hand-held computing device based on the level normalized change, the error covariance of the estimate of expected vertical location, and the estimate of expected vertical location; and

activating a relevant map for a level comprising the vertical location and displaying the vertical location on a display device of the hand-held computing device.

9. The computer-implemented method of claim 8 , wherein the beacon data is read from a beacon data dictionary.

10. The computer-implemented method of claim 8 , wherein the generating the integer value representing an estimate of the expected level inside the structure based on a set of probabilities further comprises generating level weights sums from probabilities for beacons on each of a set of levels from which the items of beacon data been received.

11. The computer-implemented method of claim 8 , wherein the generating the integer value representing an estimate of an expected level inside a structure based on the set of probabilities further comprises generating probabilities for beacons on each of a set of levels based on the items of beacon data time information.

12. The computer-implemented method of claim 8 , further comprising iteratively updating the vertical location of the hand-held computing device using expectation estimates.

13. A hand-held computing device comprising:

a processor;

a memory coupled to the processor;

a display device electrically coupled to the processor;

a barometric pressure sensor electrically coupled to the processor;

a wireless communication system electrically coupled to the processor, the wireless communication system configured to receive items of beacon data wirelessly from beacons external to the hand-held computing device; and

wherein the memory stores a program that, when executed by the processor; causes the processor to:

generate an estimate of expected vertical location based on the items of beacon data;

generate an error covariance of the estimate of expected vertical location based on the items of beacon data;

calculate a level normalized change based on measurements of barometric pressure by the barometric pressure sensor;

calculate a vertical location of the hand-held computing device by generation of an integer value representing a level inside a structure based on a linear solution calculation having inputs comprising the level normalized change, the error covariance of the estimate of expected vertical location, and the estimate of expected vertical location; and

display the vertical location on the display device.

14. A hand-held computing device comprising:

a processor;

a memory coupled to the processor;

a display device electrically coupled to the processor;

a barometric pressure sensor electrically coupled to the processor;

a wireless communication system electrically coupled to the processor, the wireless communication system configured to receive items of beacon data wirelessly from beacons external to the hand-held computing device; and

wherein the memory stores a program that, when executed by the processor; causes the processor to:

generate an estimate of expected vertical location based on the items of beacon data by generation of an integer value representing an estimate of an expected level inside a structure based on a set of probabilities calculated at least in part from beacon data comprising beacon distances, beacon distance accuracies, and items of beacon data time information;

generate an error covariance of the estimate of expected vertical location based on the items of beacon data;

calculate a level normalized change based on measurements of barometric pressure by the barometric pressure sensor;

calculate a vertical location of the hand-held computing device based on the level normalized change, the error covariance of the estimate of expected vertical location, and the estimate of expected vertical location; and

display the vertical location on the display device.

15. A computer program product in a non-transitory computer-readable medium for location of a handheld computing device, the computer program product in a non-transitory computer-readable medium comprising instructions, which, when executed, cause a processor of handheld computing device to perform:

generating an estimate of expected vertical location based on items of beacon data received from beacons by a radio receiver of the hand-held computing device;

generating an error covariance of the estimate of expected vertical location based on the items of beacon data;

calculating a level normalized change based on measurements of barometric pressure by a pressure sensor of the hand-held computing device;

calculating the vertical location of the hand-held computing device by generating an integer value representing a level inside a structure based on a calculation having inputs comprising the level normalized change, the error covariance of the estimate of expected vertical location, and the estimate of expected vertical location; and

displaying the vertical location on a display device of the hand-held computing device.

16. A computer program product in a non-transitory computer-readable medium for location of a handheld computing device, the computer program product in a non-transitory computer-readable medium comprising instructions, which, when executed, cause a processor of handheld computing device to perform:

generating an estimate of expected vertical location by generating an integer value representing an estimate of an expected level inside a structure based on a set of probabilities calculated at least in part from beacon data comprising beacon distances, beacon distance accuracies, and items of beacon data time information;

generating an error covariance of the estimate of expected vertical location based on the items of beacon data;

calculating a level normalized change based on measurements of barometric pressure by a pressure sensor of the hand-held computing device;

calculating the vertical location of the hand-held computing device based on the level normalized change, the error covariance of the estimate of expected vertical location, and the estimate of expected vertical location; and

displaying the vertical location on a display device of the hand-held computing device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2018
From: AKPINAR, ISMAIL EGE; TUNCA, CAN; ISIK, SINAN; AKPINAR, MEHMET CAN
To: POINTR LIMITED
Reel/Frame 047794/0407 →
Cited By (3)
US 12,228,418 US 12,319,539 US 12,498,238