# US 8,274,430 B2 · Ephemeris extension method for GNSS applications

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,274,430 B2
- Document ID: US8274430B2
- Status: Granted
- Kind: B2
- Application number: 12/437,185
- Filed: 2009-05-07
- Published: 2009-09-03
- Granted: 2012-09-25
- Earliest claimed: 2006-04-24
- Assignees: QUALCOMM Incorporated
- Inventors: Lionel Garin
- Web page: https://patentgrep.com/patent/US8274430B2

## CPC

- G01S 19/258: {relating to the satellite constellation, e.g. almanac, ephemeris data, lists of satellites in view}
- G01S 19/27: creating, predicting or correcting ephemeris or almanac data within the receiver
- G01S: RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES

## Abstract

Systems, methods and devices for improving the performance of Global Navigation Satellite System (GNSS) receivers are disclosed. In particular, the improvement of the ability to calculate a satellite position or a receiver position where a receiver has degraded ability to receive broadcast ephemeris data directly from a GNSS satellite is disclosed. Correction terms can be applied to an approximate long-term satellite position model such as the broadcast almanac.

## Claims

### Claim 1

A method comprising:
with a GNSS receiver having access to almanac data valid for use during a first period of time:
obtaining a prediction file comprising almanac correction data valid for use during a second period of time comprising a plurality of defined time intervals, wherein at least a portion of said almanac correction data has been compacted in size based, at least in part, on said plurality of defined time intervals;
decompacting at least a portion of said almanac correction data associated with a particular time;
determining at least one corrected satellite position at said particular time based, at least in part, on said decompacted portion of almanac correction data and said almanac data; and
estimating a position of the GNSS receiver based, at least in part on said at least one corrected satellite location.

### Claim 2 (depends on 1)

The method of claim 1, wherein said almanac correction data comprises estimated almanac correction data associated with at least one of said plurality of defined time intervals.

### Claim 3 (depends on 2)

The method of claim 2, wherein said estimated almanac correction data comprises at least one of coordinate correction data or coordinate derivative correction data associated with said at least one of said plurality of defined time intervals.

### Claim 4 (depends on 3)

The method of claim 3, wherein said at least one of said plurality of defined time intervals is less than one hour.

### Claim 5 (depends on 2)

The method of claim 2, wherein said estimated almanac correction data for at least one of said plurality of defined time intervals is based, at least in part, on a model comprising Kepler ephemeris parameters.

### Claim 6 (depends on 5)

The method of claim 5, wherein said at least one of said plurality of defined time intervals is greater than one hour.

### Claim 7 (depends on 1)

The method of claim 1, wherein said almanac correction data comprises Kepler almanac parameters and correction factors.

### Claim 8 (depends on 7)

The method of claim 7, wherein said correction factors comprise at least one of harmonic correction factors or polynomial correction factors.

### Claim 9 (depends on 7)

The method of claim 7, wherein at least one of said plurality of defined time intervals is greater than one day.

### Claim 10 (depends on 1)

The method of claim 1, wherein determining said at least one corrected satellite position further comprises:
obtaining a correction term from said prediction file and applying said correction term to an estimated satellite position.

### Claim 11 (depends on 1)

The method of claim 1, wherein obtaining said prediction file further comprises:
receiving said prediction file from a network.

### Claim 12 (depends on 1)

The method of claim 1, wherein obtaining said prediction file further comprises:
accessing said prediction file from memory within said GNSS receiver.

### Claim 13

A method comprising:
with at least one processor:
obtaining almanac data valid for use during a first period of time;
obtaining data associated with a prediction of a satellite orbit at a future time subsequent to said first period of time;
determining a second prediction of said satellite orbit at said future time based, at least in part, on said almanac data; and
establishing a prediction file comprising almanac correction data based, at least in part, on said prediction of said satellite orbit and said second prediction of said satellite orbit, said almanac correction data being valid for use during a second period of time comprising a plurality of defined time intervals, wherein at least a portion of said almanac correction data is compacted in size based, at least in part, on said plurality of defined time intervals.

### Claim 14 (depends on 13)

The method of claim 13, wherein said almanac correction data comprises estimated almanac correction data associated with at least one of said plurality of defined time intervals.

### Claim 15 (depends on 14)

The method of claim 14, wherein said estimated almanac correction data comprises at least one of coordinate correction data or coordinate derivative correction data associated with said at least one of said plurality of defined time intervals.

### Claim 16 (depends on 15)

The method of claim 15, wherein said at least one of said plurality of defined time intervals is less than one hour.

### Claim 17 (depends on 14)

The method of claim 14, wherein said estimated almanac correction data for said at least one of said plurality of defined time intervals is based, at least in part, on a model comprising Kepler ephemeris parameters.

### Claim 18 (depends on 17)

The method of claim 17, wherein said at least one of said plurality of defined time intervals is greater than one hour.

### Claim 19 (depends on 13)

The method of claim 13, wherein said almanac correction data comprises Kepler almanac parameters and correction factors valid for use during at least one of said defined time intervals.

### Claim 20 (depends on 19)

The method of claim 19, wherein said correction factors comprise at least one of harmonic correction factors or polynomial correction factors.

### Claim 21 (depends on 20)

The method of claim 20, wherein said at least one of said defined time intervals is greater than one day.

### Claim 22 (depends on 13)

The method of claim 13, further comprising:
determining said almanac correction data using a least squares methodology.

### Claim 23 (depends on 22)

The method of claim 22, further comprising:
selectively weighting data from said prediction of satellite orbit as used in said least squares methodology based, at least in part, said future time.

### Claim 24 (depends on 13)

The method of claim 13, further comprising:
transmitting said prediction file to a network.

### Claim 25 (depends on 13)

The method of claim 13, wherein said at least one processor is provided in a GNSS receiver.

### Claim 26

A GNSS receiver comprising:
memory; and
a processor to:
access almanac data stored in said memory, said almanac data being valid for use during a first period of time;
obtain a prediction file comprising almanac correction data valid for use during a second period of time comprising a plurality of defined time intervals, wherein at least a portion of said almanac correction data has been compacted in size based, at least in part, on said plurality of defined time intervals;
decompact at least a portion of said almanac correction data associated with a particular time;
determine at least one corrected satellite position at said particular time based, at least in part, on said decompacted portion of almanac correction data and said almanac data; and
estimate a position of the GNSS receiver based, at least in part on said at least one corrected satellite location.

### Claim 27 (depends on 26)

The GNSS receiver of claim 26, wherein said almanac correction data comprises estimated almanac correction data associated with at least one of said plurality of defined time intervals.

### Claim 28 (depends on 27)

The GNSS receiver of claim 27, wherein said estimated almanac correction data comprises at least one of coordinate correction data or coordinate derivative correction data associated with said at least one of said plurality of defined time intervals.

### Claim 29 (depends on 28)

The GNSS receiver of claim 28, wherein said at least one of said plurality of defined time intervals is less than one hour.

### Claim 30 (depends on 27)

The GNSS receiver of claim 27, wherein said estimated almanac correction data for at least one of said plurality of defined time intervals is based, at least in part, on a model comprising Kepler ephemeris parameters.

### Claim 31 (depends on 30)

The GNSS receiver of claim 30, wherein said at least one of said plurality of defined time intervals is greater than one hour.

### Claim 32 (depends on 26)

The GNSS receiver of claim 26, wherein said almanac correction data comprises Kepler almanac parameters and correction factors.

### Claim 33 (depends on 32)

The GNSS receiver of claim 32, wherein said correction factors comprise at least one of harmonic correction factors or polynomial correction factors.

### Claim 34 (depends on 32)

The GNSS receiver of claim 32, wherein at least one of said plurality of defined time intervals is greater than one day.

### Claim 35 (depends on 26)

The GNSS receiver of claim 26, wherein said processor further to:
obtain a correction term from said prediction file and apply said correction term to an estimated satellite position.

### Claim 36 (depends on 26)

The GNSS receiver of claim 26, further comprising:
a communications port, wherein said processor further to receive said prediction file from a network via said communication port.

### Claim 37 (depends on 26)

The GNSS receiver of claim 26, wherein said processor further to:
access said prediction file from said memory within said GNSS receiver.

### Claim 38

An apparatus comprising:
memory; and
at least one processor to:
obtain almanac data valid for use during a first period of time;
obtain data associated with a prediction of a satellite orbit at a future time subsequent to said first period of time;
determine a second prediction of said satellite orbit at said future time based, at least in part, on said almanac data; and
establish a prediction file comprising almanac correction data based, at least in part, on said prediction of said satellite orbit and said second prediction of said satellite orbit, said almanac correction data being valid for use during a second period of time comprising a plurality of defined time intervals, wherein at least a portion of said almanac correction data is compacted in size based, at least in part, on said plurality of defined time intervals.

### Claim 39 (depends on 38)

The apparatus of claim 38, wherein said almanac correction data comprises estimated almanac correction data associated with at leas one of said plurality of defined time intervals.

### Claim 40 (depends on 39)

The apparatus of claim 39, wherein said estimated almanac correction data comprises at least one of coordinate correction data or coordinate derivative correction data associated with said at least one of said plurality of defined time intervals.

### Claim 41 (depends on 40)

The apparatus of claim 40, wherein said at least one of said plurality of defined time intervals is less than one hour.

### Claim 42 (depends on 39)

The apparatus of claim 39, wherein said estimated almanac correction data for said at least one of said plurality of defined time intervals is based, at least in part, on a model comprising Kepler ephemeris parameters.

### Claim 43 (depends on 42)

The apparatus of claim 42, wherein said at least one of said plurality of defined time intervals is greater than one hour.

### Claim 44 (depends on 38)

The apparatus of claim 38, wherein said almanac correction data comprises Kepler almanac parameters and correction factors valid for use during at least one of said defined time intervals.

### Claim 45 (depends on 44)

The apparatus of claim 44, wherein said correction factors comprise at least one of harmonic correction factors polynomial correction factors.

### Claim 46 (depends on 44)

The apparatus of claim 44, wherein said at least one of said defined time intervals is greater than one day.

### Claim 47 (depends on 38)

The apparatus of claim 38, wherein said at least one processor further to:
determine said almanac correction data using a least squares methodology.

### Claim 48 (depends on 47)

The apparatus of claim 47, wherein said at least one processor further to:
selectively weight data from said prediction of satellite orbit as used in said least squares methodology based, at least in part, said future time.

### Claim 49 (depends on 38)

The apparatus of claim 38, wherein said at least one processor is provided in a server, and further comprising:
a communications port to transmit said prediction file to a network.

### Claim 50 (depends on 38)

The apparatus of claim 38, wherein said at least one processor is provided in a GNSS receiver.

### Claim 51

An article comprising:
a computer readable medium having computer code stored therein that is implementable by a processor of a GNSS receiver to:
obtain almanac data that is valid for use during a first period of time;
obtain a prediction file comprising almanac correction data valid for use during a second period of time comprising a plurality of defined time intervals, wherein at least a portion of said almanac correction data has been compacted in size based, at least in part, on said plurality of defined time intervals;
decompact at least a portion of said almanac correction data associated with a particular time,
determine at least one corrected satellite position at said particular time based, at least in part, on said decompacted portion of almanac correction data and said almanac data; and
estimate a position of the GNSS receiver based, at least in part on said at least one corrected satellite location.

### Claim 52 (depends on 51)

The article of claim 51, wherein said almanac correction data comprises estimated almanac correction data associated with at least one of said plurality of defined time intervals.

### Claim 53 (depends on 52)

The article of claim 52, wherein said estimated almanac correction data comprises at least one of coordinate correction data or coordinate derivative correction data associated with said at least one of said plurality of defined time intervals.

### Claim 54 (depends on 53)

The article of claim 53, wherein said at least one of said plurality of defined time intervals is less than one hour.

### Claim 55 (depends on 52)

The article of claim 52, wherein said estimated almanac correction data for at least one of said plurality of defined time intervals is based, at least in part, on a model comprising Kepler ephemeris parameters.

### Claim 56 (depends on 55)

The article of claim 55, wherein said at least one of said plurality of defined time intervals is greater than one hour.

### Claim 57 (depends on 51)

The article of claim 51, wherein said almanac correction data comprises Kepler almanac parameters and correction factors.

### Claim 58 (depends on 57)

The article of claim 57, wherein said correction factors comprise at least one of harmonic correction factors or polynomial correction factors.

### Claim 59 (depends on 57)

The article of claim 57, wherein at least one of said plurality of defined time intervals is greater than one day.

### Claim 60 (depends on 51)

The article of claim 51, said computer code being implementable by said processor further to:
obtain a correction term from said prediction file and apply said correction term to an estimated satellite position.

### Claim 61

An article comprising:
a computer readable medium having computer code stored therein that is implementable by at least one processor to:
obtain almanac data valid for use during a first period of time;
obtain data associated with a prediction of a satellite orbit at a future time subsequent to said first period of time;
determine a second prediction of said satellite orbit at said future time based, at least in part, on said almanac data; and
establish a prediction file comprising almanac correction data based, at least in part, on said prediction of said satellite orbit and said second prediction of said satellite orbit, said almanac correction data being valid for use during a second period of time comprising a plurality of defined time intervals wherein at least a portion of said almanac correction data is compacted in size based. at least in part, on said plurality of defined time intervals.

### Claim 62 (depends on 61)

The article of claim 61, wherein said almanac correction data comprises estimated almanac correction data associated with at leas one of said plurality of defined time intervals.

### Claim 63 (depends on 62)

The article of claim 62, wherein said estimated almanac correction data comprises at least one of coordinate correction data or coordinate derivative correction data associated with said at least one of said plurality of defined time intervals.

### Claim 64 (depends on 63)

The article of claim 63, wherein said at least one of said plurality of defined time intervals is less than one hour.

### Claim 65 (depends on 62)

The article of claim 62, wherein said estimated almanac correction data for said at least one of said plurality of defined time intervals is based, at least in part, on a model comprising Kepler ephemeris parameters.

### Claim 66 (depends on 65)

The article of claim 65, wherein said at least one of said plurality of defined time intervals is greater than one hour.

### Claim 67 (depends on 61)

The article of claim 61, wherein said almanac correction data comprises Kepler almanac parameters and correction factors valid for use during at least one of said defined time intervals.

### Claim 68 (depends on 67)

The article of claim 67, wherein said correction factors comprise at least one of harmonic correction factors or polynomial correction factors.

### Claim 69 (depends on 67)

The article of claim 67, wherein said at least one of said defined time intervals is greater than one day.

### Claim 70 (depends on 61)

The article of claim 61, said computer code being implementable by said at least one processor further to:
determine said almanac correction data using a least squares methodology.

### Claim 71 (depends on 70)

The article of claim 70, said computer code being implementable by said at least one processor further to:
selectively weight data from said prediction of satellite orbit as used in said least squares methodology based, at least in part, said future time.

### Claim 72

An apparatus comprising:
memory means for storing almanac data, said almanac data being valid for use during a first period of time;
receiving means for receiving a prediction file comprising almanac correction data valid for use during a second period of time comprising a plurality of defined time intervals, wherein at least a portion of said almanac correction data has been compacted in size based, at least in part on said plurality of defined time intervals; and
processing means for decompacting at least a portion of said almanac correction data associated with a particular time;
the processing means for determining at least one corrected satellite position at said particular time based, at least in part, on said decompacted portion of almanac correction data and said almanac data; and
the processing means for estimating a position of the apparatus based, at least in part on said at least one corrected satellite location.

### Claim 73 (depends on 72)

The apparatus of claim 72, wherein said almanac correction data comprises estimated almanac correction data associated with at least one of said plurality of defined time intervals.

### Claim 74 (depends on 73)

The apparatus of claim 73, wherein said estimated almanac correction data comprises at least one of coordinate correction data or coordinate derivative correction data associated with said at least one of said plurality of defined time intervals.

### Claim 75 (depends on 74)

The apparatus of claim 74, wherein said at least one of said plurality of defined time intervals is less than one hour.

### Claim 76 (depends on 73)

The apparatus of claim 73, wherein said estimated almanac correction data for at least one of said plurality of defined time intervals is based, at least in part, on a model comprising Kepler ephemeris parameters.

### Claim 77 (depends on 76)

The apparatus of claim 76, wherein said at least one of said plurality of defined time intervals is greater than one hour.

### Claim 78 (depends on 72)

The apparatus of claim 72, wherein said almanac correction data comprises Kepler almanac parameters and correction factors.

### Claim 79 (depends on 78)

The apparatus of claim 78, wherein said correction factors comprise at least one of harmonic correction factors or polynomial correction factors.

### Claim 80 (depends on 78)

The apparatus of claim 78, wherein at least one of said plurality of defined time intervals is greater than one day.

### Claim 81 (depends on 72)

The apparatus of claim 72, wherein said processing means for estimating further comprises means for obtaining a correction term from said prediction file and applying said correction term to an estimated satellite position.

### Claim 82 (depends on 78)

The apparatus of claim 78, wherein said processor receiving means further comprises a communication port for receiving said prediction file from a network.

### Claim 83 (depends on 72)

The apparatus of claim 72, wherein said processing means for determining further comprises means for accessing said prediction file from said memory means.

### Claim 84 (depends on 72)

The apparatus of claim 72, wherein said processing means is provided in a GNSS receiver.

### Claim 85

A system comprising:
server means for obtaining almanac data valid for use during a first period of time;
network connection means for receiving data associated with a prediction of a satellite orbit at a future time subsequent to said first period of time;
the server means for determining a second prediction of said satellite orbit at said future time based, at least in part, on said almanac data; and
the server means for establishing a prediction file comprising almanac correction data based, at least in part, on said prediction of said satellite orbit and said second prediction of said satellite orbit, said almanac correction data being valid for use during a second period of time comprising a plurality of defined time intervals, wherein at least a portion of said almanac correction data is compacted in size based, at least in part, on said plurality of defined time intervals.

### Claim 86 (depends on 85)

The system of claim 85, wherein said almanac correction data comprises estimated almanac correction data associated with at leas one of said plurality of defined time intervals.

### Claim 87 (depends on 86)

The system of claim 86, wherein said estimated almanac correction data comprises at least one of coordinate correction data or coordinate derivative correction data associated with said at least one of said plurality of defined time intervals.

### Claim 88 (depends on 87)

The system of claim 87, wherein said at least one of said plurality of defined time intervals is less than one hour.

### Claim 89 (depends on 86)

The system of claim 86, wherein said estimated almanac correction data for said at least one of said plurality of defined time intervals is based, at least in part, on a model comprising Kepler ephemeris parameters.

### Claim 90 (depends on 89)

The system of claim 89, wherein said at least one of said plurality of defined time intervals is greater than one hour.

### Claim 91 (depends on 85)

The system of claim 85, wherein said almanac correction data comprises Kepler almanac parameters and correction factors valid for use during at least one of said defined time intervals.

### Claim 92 (depends on 91)

The system of claim 91, wherein said correction factors comprise at least one of harmonic correction factors or polynomial correction factors.

### Claim 93 (depends on 91)

The system of claim 91, wherein said at least one of said defined time intervals is greater than one day.

### Claim 94 (depends on 85)

The system of claim 85, wherein said server means for determining said almanac correction data comprises server means for determining said almanac correction data using a least squares methodology.

### Claim 95 (depends on 94)

The system of claim 94, wherein said server means for determining said almanac correction data comprises server means for selectively weighting data from said prediction of satellite orbit as used in said least squares methodology based, at least in part, said future time.

### Claim 96 (depends on 85)

The system of claim 85, further comprising communications means for transmitting said prediction file to a network.
