Techniques for facilitating geo-location determination using satellites

By generating the probability density function of satellites and utilizing inertial measurement data, combined with time derived from atomic clocks, the problem of increased inertial navigation errors under GNSS signal deception and interference was solved, achieving higher-precision position determination.

CN120831679APending Publication Date: 2025-10-24HONEYWELL INTERNATIONAL INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510327248.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-04-24
Filing Date
2025-03-19
Publication Date
2025-10-24

AI Technical Summary

Technical Problem

Under conditions of signal spoofing and interference with global navigation satellite systems, inertial navigation errors increase over time, leading to a decrease in navigation system accuracy.

Method used

By using atomic clocks to derive time and satellite orbit data, probability density functions for the absolute and relative geographical locations of satellites are generated. Combined with inertial measurement unit data, the accurate geographical location of the subject is determined.

Benefits of technology

When GNSS signals are unreliable, improve the accuracy and reliability of the navigation system's position determination and reduce error accumulation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120831679A_ABST
    Figure CN120831679A_ABST
Patent Text Reader

Abstract

Techniques are provided for more accurately determining a geographic location of a subject when Global Navigation Satellite System (GNSS) signals are disturbed and / or spoofed. In the absence of valid GNSS data, data regarding beacon signals transmitted by the plurality of satellites and each of the plurality of satellites is used with inertial measurement data to estimate the geographic location of the subject.
Need to check novelty before this filing date? Find Prior Art

Description

BACKGROUND

[0001] Spoofing and / or jamming of navigation assistance signals transmitted from global navigation satellite systems (GNSS) is becoming increasingly common. In the event of such GNSS signal spoofing and / or jamming, navigation systems typically rely on inertial navigation. However, navigation relying on inertial measurements is prone to error that increases over time in the absence of accurate GNSS signals. SUMMARY

[0002] In some aspects, the technology described herein relates to a method for determining a position of a subject, the method comprising: counting an atomic clock-derived time that is incremented from a current global navigation satellite system (GNSS) time and from a periodic time count from an atomic clock; attempting to receive a later current GNSS time that occurs after the current GNSS time; determining whether the later current GNSS time is received and valid; determining that the later current GNSS time is at least one of not received and invalid, and subsequently providing an estimated geographic position of the subject to a navigation system; receiving beacon data for each satellite of a plurality of satellites, wherein the beacon data comprises a unique satellite identification of one satellite of the plurality of satellites and a signal strength of a beacon signal comprising the unique satellite identification; extracting the satellite identification from each received beacon data; obtaining orbital data for each satellite whose satellite identification is extracted using each extracted satellite identification and recently received orbital data for the plurality of satellites; obtaining a reference time from the recently received orbital data for the plurality of satellites; determining a time difference equal to an absolute value of a difference between another current atomic clock-derived time and the reference time; defining a bounded region based on a radiation pattern of an antenna array of a satellite receiver configured to receive each beacon signal and a minimum detectable signal threshold level of the satellite receiver; generating an estimated probability density function (PDF) of an absolute geographic position of each satellite whose satellite identification is extracted in the bounded region and using the time difference and the obtained orbital data; generating a representation of an estimated PDF of a relative geographic position of each satellite in the bounded region using each estimated PDF of an absolute geographic position, wherein each such relative geographic position is relative to either (a) the estimated position of the subject or (b) a received valid GNSS position; determining (a) an angle of arrival of a beacon signal of each satellite whose satellite identification is extracted relative to the subject and (b) a signal strength of each beacon signal received from a satellite whose satellite identification is extracted using the another current atomic clock-derived time for each satellite whose satellite identification is extracted and the received beacon data; determining a representation of a measured PDF of a relative geographic position of each satellite whose identification is extracted using each determined angle of arrival; determining an estimated geographic position of the subject using inertial measurement unit (IMU) data, the representation of a measured PDF of a relative geographic position of each satellite, and the representation of an estimated PDF of a relative geographic position of each satellite; determining a measured entry time and a measured exit time for each satellite and a gradient of a strength of a beacon signal of each satellite whose identification is extracted over the bounded region over the bounded region; and for each satellite whose identification is extracted, adding the measured entry time, the measured exit time, and the gradient of the strength of the beacon signal of each satellite whose identification is extracted to the representation of a measured PDF of a relative position of each satellite.

[0003] In some aspects, the technology described herein relates to a non-transitory computer readable medium storing a program that causes at least one processor to perform a process to determine a location of a subject, the process comprising: counting an atomic clock-derived time that is incremented from a current global navigation satellite system (GNSS) time and from a periodic time count from an atomic clock; attempting to receive a later current GNSS time that occurs after the current GNSS time; determining whether the later current GNSS time is received and valid; determining that the later current GNSS time is at least one of not received and invalid, subsequent to which an estimated geographic position of the subject is caused to be provided to a navigation system; receiving beacon data for each satellite of a plurality of satellites, wherein the beacon data comprises a unique satellite identification of one satellite of the plurality of satellites and a signal strength of a beacon signal comprising the unique satellite identification; extracting the satellite identification from each received beacon data; obtaining orbital data for each satellite whose satellite identification is extracted using each extracted satellite identification and recently received orbital data for the plurality of satellites; obtaining a reference time from the recently received orbital data for the plurality of satellites; determining a time difference equal to an absolute value of a difference between another current atomic clock-derived time and the reference time; defining a bounded region based on a radiation pattern of an antenna array of a satellite receiver configured to receive each beacon signal and a minimum detectable signal threshold level of the satellite receiver; generating an estimated probability density function (PDF) of an absolute geographic position of each satellite whose satellite identification is extracted in the bounded region and using the time difference and the obtained orbital data; generating a representation of an estimated PDF of a relative geographic position of each satellite in the bounded region using each estimated PDF of an absolute geographic position, wherein each such relative geographic position is relative to either (a) the estimated position of the subject or (b) a received valid GNSS position; determining (a) an angle of arrival of a beacon signal of each satellite whose satellite identification is extracted relative to the subject and (b) a signal strength of each beacon signal received from a satellite whose satellite identification is extracted using the another current atomic clock-derived time for each satellite whose satellite identification is extracted and the received beacon data; determining a representation of a measured PDF of a relative geographic position of each satellite whose identification is extracted using each determined angle of arrival; determining an estimated geographic position of the subject using inertial measurement unit (IMU) data, the representation of a measured PDF of a relative geographic position of each satellite, and the representation of an estimated PDF of a relative geographic position of each satellite; determining a measured entry time and a measured exit time for each satellite and a gradient of a strength of a beacon signal of each satellite whose identification is extracted over the bounded region over the bounded region; and for each satellite whose identification is extracted, adding the measured entry time, the measured exit time, and the gradient of the strength of the beacon signal of each satellite whose identification is extracted to the representation of a measured PDF of a relative position of each satellite.

[0004] In some aspects, the technology described herein relates to an apparatus for determining a location of a subject, the apparatus comprising: a satellite receiver on or in the subject, wherein the satellite receiver comprises an antenna array on or in the subject; an atomic clock on or in the subject and configured to provide a periodic time count; a global navigation satellite system (GNSS) receiver on or in the subject; an inertial measurement unit on or in the subject and comprising at least one of: at least one accelerometer and at least one gyroscope; processing circuitry on or in the subject and communicatively coupled to each of the satellite receiver, the atomic clock, the GNSS receiver, and the inertial measurement unit; wherein the processing circuitry is configured to: count atomic clock-derived times starting from a current GNSS time from the GNSS receiver and incrementing with the periodic time count received from the atomic clock; attempt to receive a later current GNSS time occurring after the current GNSS time; determine whether the later current GNSS time is received and valid; determine that the later current GNSS time is at least one of not received and invalid, and subsequently use an estimated geographic position of the subject to provide information about a location of the subject relative to an intended target of the subject; receive beacon data for each satellite of a plurality of satellites, wherein the beacon data comprises a unique satellite identification of one of the plurality of satellites and a signal strength of a beacon signal comprising the unique satellite identification; extract the satellite identification from each received beacon data; obtain orbital data for each satellite whose satellite identification is extracted using each extracted satellite identification and recently received orbital data for the plurality of satellites; obtain a reference time from the recently received orbital data for the plurality of satellites; determine a time difference equal to an absolute value of a difference between another current atomic clock-derived time and the reference time; define a bounding region based on a radiation pattern of an antenna array of the satellite receiver configured to receive each beacon signal and a minimum detectable signal threshold level of the satellite receiver; generate an estimated probability density function (PDF) of an absolute geographic position of each satellite in the bounding region and whose satellite identification is extracted using the time difference and the obtained orbital data; generate a representation of an estimated PDF of a relative geographic position of each satellite in the bounding region using each estimated PDF of an absolute geographic position, wherein each such relative geographic position is relative to either (a) the estimated location of the subject or (b) a received valid GNSS position most recent; determine (a) an angle of arrival of a beacon signal of each satellite whose satellite identification is extracted relative to the subject and (b) a signal strength of each beacon signal received from a satellite whose satellite identification is extracted using the another current atomic clock-derived time for each satellite whose satellite identification is extracted and the received beacon data; determine a representation of a measured PDF of a relative geographic position of each satellite whose identification is extracted using each determined angle of arrival;determining an estimated geographic position of the subject using inertial measurement unit (IMU) data, a representation of a measurement PDF of a relative geographic position of each satellite, and a representation of an estimated PDF of a relative geographic position of each satellite; determining a measurement entry time and a measurement exit time for each satellite, and a gradient of a strength of a beacon signal of each satellite whose identity is extracted over a defined region over the defined region; and adding, for each satellite whose identity is extracted, the measurement entry time, the measurement exit time, and the gradient of the strength of the beacon signal of each satellite whose identity is extracted to the representation of the measurement PDF of the relative position of each satellite. BRIEF DESCRIPTION OF DRAWINGS

[0005] It should be understood that the drawings are only illustrative for exemplary embodiments and therefore are not to be considered limiting the scope of the present application, which will be described by the use of additional features and details in connection with the accompanying drawings, in which:

[0006] FIG. 1A a block diagram illustrating one embodiment of a geographic position determination system according to an embodiment of the present application and configured to be installed on or in a subject is shown;

[0007] FIG. 1B a block diagram illustrating one embodiment of a processing system is shown; and

[0008] FIG. 2 a flow diagram illustrating one embodiment of a method for determining a geographic position of a subject with increased accuracy using inertial measurement data, data about satellites, and atomic clock derived time is shown.

[0009] In accordance with common practice the various features described with reference to the drawings are not necessarily drawn to scale, but are for emphasis and illustration purposes only. Reference characters are used to denote like elements throughout the drawings and text. DETAILED DESCRIPTION

[0010] In the following detailed description, reference is made to the accompanying drawings, which form a part hereof, and in which are shown by way of illustration specific exemplary embodiments. However, it is to be understood that other embodiments can be utilized and that structural, mechanical, and / or electrical changes can be made without departing from the scope of the present disclosure. Furthermore, each of the various methods presented in the description and the claims below can be performed in an arbitrary order. The following detailed description is, therefore, not to be taken in a limiting sense, in that the scope of the present disclosure is defined by the appended claims.

[0011] Embodiments of the invention are techniques that use a representation of a measured probability density function (PDF), an estimated representation of the PDF, and inertial measurement data to determine a geographic position of a subject with increased accuracy. Some of such PDFs are derived using data about one or more satellites and atomic clock-derived time. Atomic clock-derived time starts with GNSS time (considered accurate and obtained from a GNSS receiver) and increments with atomic clock-generated time increments.

[0012] Optionally, the subject can be a vehicle, a human, an animal, or any other type of subject. Optionally, the vehicle can be an aircraft, a land vehicle, a sea vehicle, a submersible vehicle, or any other type of vehicle.

[0013] FIG. 1A A block diagram of one embodiment of a geographic position determination system 100 according to an embodiment of the invention and configured to be installed on or in a subject 101 is shown. The geographic position determination system (or geographic position determination circuit) 100 includes a processing system (or processing circuit) 102, an inertial management unit 103, an atomic clock 104, a GNSS receiver 106, and a satellite receiver 105. The atomic clock 104 provides periodic time count data 114, e.g., a periodic electrical signal. Optionally, the geographic position determination system 100 also includes an auxiliary receiver 107 configured to receive orbital data of a number of satellites 117 from an external source of the subject 101 (e.g., controlled by a government entity).

[0014] An optional navigation system (NS) 111 is communicatively coupled to or part of the geographic position determination system 100 (e.g., the processing system 102). The optional navigation system 111 is shown separate from the processing system 102 for pedagogical purposes. The optional navigation system 111 is configured to receive state variable data (e.g., about the position of the subject) from the GNSS receiver 106 or determined according to the methods described herein, e.g., using satellite data. Optionally, the navigation system is configured to receive (a) GNSS state variable data and optionally GNSS time or (b) an estimated position of the subject and optionally atomic clock-derived time. The optional navigation system 111 is used to provide information about the geographic position of the subject relative to its surroundings, e.g., a desired arrival location. Optionally, the optional navigation system 111 can be used to control the subject, e.g., an autonomous driving system, to arrive at the desired arrival location.

[0015] Optionally, the geographic position determination system 100 is configured to at least one of:

[0016] (a) includes a GNSS signal validator (or GNSS validator or GNSS signal validator circuit) 109 configured to generate a GNSS validation signal 119 provided to the processing system 102 that indicates whether the current GNSS time 116-1 and / or GNSS state variable data 116-2 (received with the current GNSS time) is valid, e.g., has been received and deemed accurate. Optionally, GNSS time validity is determined by ascertaining whether the current GNSS time 116-1 is within a predetermined window of time around an expected time, e.g., an atomic clock-derived time 102-3

[0017] Optionally, GNSS state variable data 116-2 (received with the current GNSS time) validity is determined by ascertaining whether at least one variable of such GNSS state variable data, e.g., longitude, latitude, altitude, and vector velocity components, is not within a corresponding predetermined variable window around an expected variable value, e.g., derived by the processing system 102, e.g., a Kalman filter 102-4; and

[0018] (b) receiving such GNSS validation signal 119 from an external GNSS signal validator.

[0019] Thus, the GNSS validation signal 119 can indicate that (x) the current GNSS time 116-1 and GNSS state variable data 116-2 are received and valid, and thus can be relied upon, or (y) at least one of the current GNSS time 116-1 and GNSS state variable data 116-2 is not received, e.g., due to GNSS jamming and / or spoofing, and thus cannot be relied upon. Optionally, if the GNSS validation signal 119 indicates that the current GNSS time 116-1 and / or GNSS state variable data 116-2 is not received or is invalid, then time and subject location are determined with information about the satellites, as described elsewhere herein.

[0020] The GNSS receiver 106 includes at least one GNSS receiver antenna. The GNSS receiver 106 is configured to receive signals from GNSS from which state variables of the subject 101, e.g., geographic position and / or vector velocity, and time can be obtained. The GNSS can be a Global Positioning System (GPS), Galileo, Global Navigation Satellite System (GLONASS), BeiDou Navigation Satellite System (BDS), or any other GNSS.

[0021] Optionally, the orbital data of the plurality of satellites 117 is received periodically or aperiodically (e.g., daily) and stored in the processing system 102 (e.g., in a memory circuit therein) when the orbital data of the plurality of satellites 117 is accurate only for a limited number of time epochs. Thus, the processing system 102 is further configured to receive the orbital data of the plurality of satellites 117 from the auxiliary receiver 107. Such orbital data of the plurality of satellites 117 is any data in any format describing the time-dependent position and movement of a satellite, e.g., for one or more time epochs starting from a start time provided in the orbital data. Optionally, the orbital data of the plurality of satellites 117 can be ephemeris data, or can be in two-line or three-line element set format, orbital mean element format, or any other format. Optionally, the orbital data of the plurality of satellites 117 includes Keplerian data.

[0022] The satellite receiver 105 includes at least one receiver channel 105-2 and an antenna array 105-1 including at least two antennas (e.g., three or more antennas). Each antenna of the antenna array 105-1 can be located at a different location on the main body 101, e.g., on the exterior of the main body 101.

[0023] Each receiver channel is configured to down-convert and demodulate electromagnetic signals, e.g., from satellite beacons. Each receiver channel can have a physical or non-physical implementation. Optionally, the satellite receiver 105 includes an equal number of receiver channels and antennas, wherein each receiver channel is configured to receive electromagnetic energy from a satellite beacon through a unique antenna. Optionally, the satellite receiver 105 includes at least three antennas, each configured to provide such electromagnetic energy to a unique one of at least three receiver channels. Optionally, the satellite receiver 105 is a software-defined radio (SDR).

[0024] The satellite receiver 105 and each of its receiver channels are configured to receive a beacon 108-1-1, 108-N-1 transmitted by each of the N satellites 108-1, 108-N and detectable by the satellite receiver 105, e.g., one or more of its receiver channels. Each beacon signal 108-1-1, 108-N-1 includes a unique satellite identification (ID) corresponding to the satellite transmitting the beacon signal. Optionally, one or more of the N satellites 108-1, 108-N are low earth orbit (LEO) satellites. N is an integer greater than zero, e.g., greater than one, two or three. The satellite receiver 105, e.g., each receiver channel, is further configured to provide beacon data 118-1, 118-N extracted from the beacon signal 108-1-1, 108-1-N transmitted by each of the N satellites 108-1, 108-N. The beacon data 118-1, 118-N includes a satellite identification uniquely corresponding to the satellite 108-1, 108-N transmitting the beacon signal. Optionally, the beacon data 118-1, 118-N includes a signal strength of the beacon signal received by the satellite receiver, e.g., each receiver channel thereof.

[0025] Optionally, each of the antennas of the antenna array 105-1 can be co-located on the body 101. Each antenna is electromagnetically coupled to a unique receiver channel, the beacon data of one satellite to be provided by each receiver channel, at different times, to the processing system 102. Optionally, the time of arrival difference of the beacon signals of a satellite between the antennas of the antenna array 105-1, and thus the time of arrival difference of the beacon data of the satellite from each receiver channel to the processing system, can be used to determine the angle of arrival of the beacon signals received by the satellite receiver 105, e.g., its antenna array 105-1. However, the angle of arrival can be determined in alternative ways.

[0026] The processing system 102 includes recently received orbital data (OD) 102-1 from many satellites, a propagator 102-2 and an atomic clock derived time (ACDT) 102-3. Optionally, the processing system 102 includes a Kalman filter 102-4, an algorithm that can optionally be implemented in software and further described elsewhere herein.

[0027] Optionally, the recently received orbital data 102-1 from many satellites is received, e.g., periodically or aperiodically, from the secondary receiver 107. When the GNSS receiver 106 no longer provides and / or the processing system 102 no longer receives accurate GNSS time, the atomic clock derived time 102-3 is used as described elsewhere herein.

[0028] Using the atomic clock-derived time 102-3 and the orbital data of the satellites obtained from the most recently received orbital data 102-1 of the plurality of satellites, the propagator 102-2 is configured to estimate the geographic position of the satellites at or around the atomic clock-derived time 102-3. Optionally, the propagator 102-2 is a software algorithm, e.g., Simplified General Perturbations Four (SGP4) model.

[0029] The processing system 102 is further configured to generate the estimated time (ET) 102-3 described elsewhere herein when the processing system 102 uses when the GNSS receiver no longer provides and / or the processing system 102 no longer receives accurate GNSS time.

[0030] FIG. 1B A block diagram illustrating one embodiment of the processing system 102 is shown. FIG. 1B The processing system 102 shown in FIG. 1 includes a processor circuit 102-6 electrically coupled to a memory circuit 102-5. Optionally, the most recently received orbital data 102-1 of the plurality of satellites, the propagator 102-2, the atomic clock-derived time 102-3, and the optional Kalman filter 102-4 can each be stored in the memory circuit 102-5.

[0031] Returning to FIG. 1A , the processing system 102 is electrically coupled to the IMU 103, the atomic clock 104, the satellite receiver 105, and the GNSS receiver 106. Optionally, the processing system 102 is electrically coupled to the auxiliary receiver 107.

[0032] The processing system 102 is configured to receive the inertial measurement data 113 from the IMU 103, the periodic time count data 114 from the atomic clock 104, and the N sets of beacon data 118-1, 118-N from the satellite receiver 105. The processing system 102 is further configured to receive the GNSS time 116-1 and optionally the GNSS state variable data 116-2, e.g., the geographic position and / or vector velocity of the body 101, from the GNSS receiver 106.

[0033] The processing system 102 is configured to determine the geographic position of the body 101 using the GNSS time 116-1, the inertial measurement data 113, the atomic clock-derived time 102-3, the signal strength of each beacon data, the identity of each satellite, and the most recently received orbital data 102-1 of the plurality of satellites. Optionally, the processing system 102 is configured to determine the geographic position of the body 101 by executing an embodiment of the method shown in FIG. 2. FIG. 2

[0034] FIG. 2 ​A flowchart showing one embodiment of a method 220 for determining a geographic position of a body with increased accuracy using inertial measurement data, data about satellites, and atomic clock-derived time. Embodiments of the method 220 shown herein can be implemented with the apparatuses shown and described herein, but can also be implemented in other ways. Optionally, the method 220 is configured to be performed by the processing system 102. FIG. 1A and FIG. 1B The method 220 shown and described herein can be implemented with the apparatuses shown and described herein, but can also be implemented in other ways. Optionally, the method 220 is configured to be performed by the processing system 102.

[0035] For ease of explanation, the blocks of the flowchart are arranged in a generally sequential manner; however, it should be understood that this arrangement is merely exemplary, and that it should be recognized that the processing associated with these methods (and the blocks shown in this figure) can occur in different orders (e.g., where at least some of the processing associated with these blocks is performed in a parallel manner and / or in an event-driven manner).

[0036] In optional block 220-1, orbital data for a number of satellites is received, e.g., periodically or aperiodically. Optionally, the orbital data can be received in a certain manner and from a source, as described elsewhere herein. Optionally, such orbital data for the number of satellites becomes the most recently received orbital data for the number of satellites, and is stored, e.g., in the processing system or a memory circuit therein. The orbital data for the number of satellites includes a reference time, e.g., a start time identifying a time epoch for the orbital data for the number of satellites is accurate. The orbital data for the number of satellites is further described elsewhere herein.

[0037] In block 220-2, an atomic clock-derived time is counted from a current GNSS time and incremented with periodic time count data provided, e.g., by an atomic clock. The current GNSS time used to determine the atomic clock-derived time is considered accurate, e.g., and is obtained in an area where there is neither GNSS jamming nor spoofing. Optionally, the current GNSS time is received from a GNSS with a GNSS receiver.

[0038] In block 220-3, an attempt is made to receive a later current GNSS time from a GNSS, e.g., with a GNSS receiver. A corresponding state variable GNSS data can be received at the same time as the later current GNSS time. The later current GNSS time occurs after and is received from the current GNSS time of block 220-2.

[0039] In block 220-4, whether the later current GNSS time and / or corresponding GNSS state variable data (collectively, "GNSS data") is valid and received in a desired time window. Valid means that when the later current GNSS time and / or the later current GNSS time is associated with GNSS state variable data provided at the same time as other current GNSS times, the later current time is received in a predetermined time window with respect to the atomic clock derived time, which is determined to be valid, for example, by a GNSS validator and / or by determining that the GNSS (provided) position of the subject exceeds a predetermined threshold between the value of the estimated position of the subject derived in block 220-15 herein and the value of the estimated position of the subject derived in block 220-15 herein. FIG. 2

[0040] Optionally, if the later current GNSS time and / or GNSS state variable data is determined to be valid and received, in block 220-20, the GNSS (provided) position and optionally the GNSS (provided) time is provided to a navigation system, for example, at the GNSS state variable. After block 220-20, then proceed to block 220-2, where the atomic clock derived time is counted from another current GNSS time and the GNSS time in which the periodic time count data is incremented is set to another GNSS time.

[0041] If the later GNSS time and / or GNSS state variable data is determined to have not been received or is inaccurate, in block 220-21, the estimated position of the subject (e.g., determined in block 220-15) and optionally the atomic clock derived time is provided to, for example, a navigation system.

[0042] In block 220-5, beacon data for each satellite of the plurality of satellites is received (e.g., from a satellite receiver - e.g., from one or more receiver channels thereof). Each beacon data of a beacon signal includes a unique satellite identification corresponding to the satellite that transmitted the beacon signal. Beacon data and beacon signals are further discussed elsewhere herein.

[0043] In block 220-6, a satellite identification is extracted from each received beacon data. In block 220-7, using each extracted satellite identification, orbital data for each satellite whose satellite identification was extracted is obtained; such orbital data can be referred to as obtained orbital data. Optionally, the obtained orbital data is obtained from recently received orbital data for the plurality of satellites, for example, stored in a memory circuit of the processing system or therein.

[0044] In block 220-8, a reference time is obtained from recently received orbital data for the plurality of satellites, for example, stored in a memory circuit of the processing circuit or therein. The reference time is further described elsewhere herein. ​

[0045] In block 220-9, a time difference is determined and is equal to the absolute value of the difference between the other current atomic clock derived time and the reference time of the most recently received orbital data from the many satellites. The time difference can be computed in different ways. For example, the time difference can be determined exactly as described above, or alternatively, by determining the absolute value of the difference between the GNSS time and the reference time, and adding the periodic time count data that was counted substantially at the time of determining such time difference. Optionally, the other current atomic clock derived time is the atomic clock derived time substantially at the time of performing the corresponding block.

[0046] In block 220-10, a bounded region is generated based on the radiation pattern of the satellite receiver's antenna and the minimum detectable signal threshold level of the satellite receiver.

[0047] In block 220-11, using the time difference and the obtained orbital data, an estimated probability density function (PDF) of the absolute geolocation (of each satellite in the bounded region and whose satellite identity is extracted) is generated, e.g., using a propagator. Optionally, when the representation of the measured PDF of the relative position of a satellite includes a measured entry time and / or a measured exit time, then the estimated PDF of the relative geolocation of the satellite includes an estimated entry time and / or an estimated exit time, respectively. Optionally, when the representation of the measured PDF of the relative position of a satellite includes a gradient of the signal strength of the satellite beacon, then the estimated PDF of the relative geolocation of the satellite includes a gradient of the estimated distance between the body and the satellite.

[0048] The PDF includes a measure of central tendency, e.g., a mean, a median, or a mode, and a measure of variability, e.g., a variance, a standard deviation, or a range around the measure of central tendency. Optionally, the estimated PDF of the absolute geolocation can be determined using a propagator described elsewhere herein. The estimated PDF of the absolute geolocation of each satellite characterizes the absolute geolocation error of the satellite whose satellite identity is extracted; the error data used to compute such absolute geolocation error is provided by the obtained orbital data and / or the optional propagator. Optionally, such estimated PDF of the absolute geolocation is at the current atomic clock derived time.

[0049] In block 220-12, using each estimated PDF of the absolute geolocation, a representation, e.g., a mathematical matrix, of the estimated PDF of the relative geolocation of each satellite in the bounded region whose satellite identity is extracted is generated. Optionally, this requires both:

[0050] (i) converting each estimated PDF of the absolute geolocation of the satellite whose satellite identity is extracted to the estimated PDF of the relative geolocation of the satellite; and

[0051] (ii) forming the representation of the estimated PDF of the relative geolocation.

[0052] Element (i) can be performed before or concurrently with element (ii).

[0053] Each relative geographic position is relative to a most recent geographic position of the subject. The most recent geographic position of the subject can be the most recently determined or received of the subject's estimated geographic positions determined by the method 220 (e.g., in block 220-15) or provided by a GNSS receiver (and deemed valid as described elsewhere herein). The estimated PDF of the absolute geographic position is transformed into an estimated PDF of the relative geographic position using the most recent geographic position of the subject. The measure of variability of the estimated PDF of the relative geographic position takes into account the measure of variability of the absolute geographic position and the measure of variability of the subject's estimated position. Optionally, the measure of central tendency of the estimated PDF of the relative geographic position is in a radial plane and an azimuthal plane centered on the subject's estimated position.

[0054] In block 220-13, using the extracted current atomic clock derived time (ACDT) and received beacon data for each satellite whose satellite identification was extracted, determine (a) an angle of arrival of the beacon signal from each satellite whose satellite identification was extracted relative to the subject (e.g., satellite receiver or satellite receiver antenna), and (b) a signal strength of each beacon signal received from the satellite whose satellite identification was extracted. The angle of arrival is in a radial plane and an azimuthal plane centered on the subject (e.g., satellite receiver or satellite receiver antenna). As discussed elsewhere herein, the signal strength can be included in the beacon data and thus extracted from the beacon data. The angle of arrival is relative to the antenna array of the satellite receiver. Optionally, each angle of arrival is calculated relative to a unique antenna of the antenna array.

[0055] In block 220-14, using each determined angle of arrival, determine a representation of a measurement PDF of the relative geographic position of each satellite whose identification was extracted, e.g., a mathematical matrix. Each determined signal strength optionally can also be used to determine the representation of the measurement PDF of the relative geographic position. Such a measurement PDF of the relative geographic position is determined using well-known angle of arrival formulas to determine the phase difference between each antenna of the antenna array. Each relative geographic position is relative to a previously determined position, e.g., the most recent (a) estimated position of the subject from block 220-15 or (b) received valid GNSS position.

[0056] In block 220-15, an estimated geographic position of the principal is determined using, for example, inertial measurement data from the IMU, each representation of the measurement PDF, and each representation of the estimated PDF. Optionally, such a geographic position can be determined using, for example, a Kalman filter executed by the processing system 102 that uses a state equation whose state parameters include the inertial measurement data, the representations of the measurement PDF, and the representations of the estimated PDF.

[0057] Blocks 220-2 through 220-15 or blocks 220-5 through 220-15 are performed over a time interval or period. The representations of the PDF determined in blocks 220-12 and 220-14 are valid during the time interval in which they are determined.

[0058] In optional block 220-16, a counter is changed. In optional block 220-17, it is determined whether the counter exceeds a predetermined threshold. Exceeding the predetermined threshold means that the counter is only one of greater than or less than the predetermined threshold. Optionally, the predetermined threshold can be a number equal to or greater than two. If the counter does not exceed the predetermined threshold, then proceed to block 220-5.

[0059] If the counter has exceeded the predetermined threshold, then in block 220-18, it is determined for each satellite whose identity is extracted the measured entry time of entry into the defined region, the measured exit time of exit from the defined region, and the gradient of the strength of the satellite beacon over the defined region. The measured entry and exit times are determined when, for example, the satellite signal is first detected and last detected, respectively, by the satellite receiver. In block 220-19, for each satellite whose identity is extracted, the entry time, exit time, and gradient of the beacon strength of each satellite are added to the representation of the measurement PDF of the relative position of the satellite. After block 220-19, then proceed to block 220-5.

[0060] The processor circuitry described herein can include one or more microprocessors, microcontrollers, digital signal processing (DSP) elements, application-specific integrated circuits (ASICs), and / or field programmable gate arrays (FPGAs). In this exemplary embodiment, the processor circuitry includes software programs, firmware or other computer-readable instructions or that function in conjunction with the processor circuitry to perform various process tasks, calculations and control functions in the methods described herein. These instructions are typically tangible and are stored in any computer readable medium (or computer readable storage medium), for storage of computer-readable instructions or data structures.

[0061] The memory circuits described herein can be implemented utilizing any available storage medium (or computer readable medium) that can be accessed by a general or special purpose computer or processor or any programmable logic device. Suitable computer readable media can include storage or memory media such as semiconductor memory devices, magnetic media, and / or optical media. For example, computer readable media can include conventional hard disks, compact disks - read only memory (CD-ROMs), DVDs, volatile or non-volatile media such as random access memory (RAM) (including without limitation dynamic random access memory (DRAM)), read only memory (ROM), electrically erasable programmable ROM (EEPROM), and / or flash memory. Combinations of the above are also included within the scope of computer readable media.

[0062] The methods of the present application can be implemented in computer readable instructions, such as program modules or applications, which can be stored in a computer readable medium that is part of processing circuitry, optionally part of memory circuitry, or is communicatively coupled to processing circuitry, and are executed by processing circuitry, optionally processor circuitry. Generally, program modules or applications include routines, programs, objects, components, data components, data structures, algorithms, etc., that perform particular tasks or implement particular abstract data types.

[0063] While the present teachings have been illustrated with respect to one or more specific embodiments, alterations and / or modifications can be made to the illustrated embodiments without departing from the scope of the appended claims. In addition, while a particular feature of the disclosure can have been described with respect to only one of several embodiments, such feature can be combined with one or more other features of the other embodiments as can be desired or advantageous for any given or particular function. Furthermore, to the extent that the terms "including", "includes", "having", "has", "fronts", or variants thereof are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term "comprising." The term "at least one of is used to indicate that one or more items selected from a list can be selected. As used herein, the term "one or more of" with respect to a series of items such as, for example, A and B or A and / or B means A alone, B alone, or A and B. The term "at least one" is used to indicate that one or more of the listed items can be selected.

[0064] The term relative position as used in this application is defined based on a plane parallel to the conventional plane or working surface of the material (e.g., layer or substrate), regardless of orientation. Terms such as "on," "higher," "lower," "above," "top," and "below" are defined relative to the conventional plane or working surface located on the top surface of the layer or substrate, regardless of orientation. The term "about" or "substantially" means that the indicated value or parameter can vary somewhat, as long as the variation does not cause a process or structure to be inconsistent with the embodiment shown. Finally, "exemplary" indicates the description serves as an example, but does not imply it is an ideal situation. Although specific embodiments have been shown and described herein, one of ordinary skill in the art will readily recognize that any arrangement of apparatus can be substituted for the specific embodiments shown, which have been shown and described for purposes of the computations to achieve the same purposes. Therefore, it is manifestly intended that the application be limited only by the claims and equivalents thereof.

[0065] Example Embodiments

[0066] Example 1 includes a method for determining a position of a subject, the method comprising: counting an atomic clock-derived time that is incremented from a current global navigation satellite system (GNSS) time and from a periodic time count from an atomic clock; attempting to receive a later current GNSS time that occurs after the current GNSS time; determining whether the later current GNSS time is received and valid; determining that the later current GNSS time is at least one of not received and not valid, and subsequently providing an estimated geographic position of the subject to a navigation system; receiving beacon data for each satellite of a plurality of satellites, wherein the beacon data contains a unique satellite identification of one satellite of the plurality of satellites and a signal strength of a beacon signal that includes the unique satellite identification; extracting the satellite identification from each received beacon data; obtaining orbital data for each satellite whose satellite identification is extracted using each extracted satellite identification and recently received orbital data for the plurality of satellites; obtaining a reference time from the recently received orbital data for the plurality of satellites; determining a time difference equal to an absolute value of a difference between another current atomic clock-derived time and the reference time; defining a bounded region based on a radiation pattern of an antenna array of a satellite receiver configured to receive each beacon signal and a minimum detectable signal threshold level of the satellite receiver; generating an estimated probability density function (PDF) of an absolute geographic position of each satellite whose satellite identification is extracted in the bounded region and using the time difference and the obtained orbital data; generating a representation of an estimated PDF of a relative geographic position of each satellite in the bounded region using each estimated PDF of an absolute geographic position, wherein each such relative geographic position is relative to (a) the estimated position of the subject or (b) a received valid GNSS position most recently; determining (a) an angle of arrival of a beacon signal of each satellite whose satellite identification is extracted relative to the subject and (b) a signal strength of each beacon signal received from a satellite whose satellite identification is extracted using the other current atomic clock-derived time for each satellite whose satellite identification is extracted and the received beacon data; determining a representation of a measured PDF of a relative geographic position of each satellite whose identification is extracted using each determined angle of arrival; determining an estimated geographic position of the subject using inertial measurement unit (IMU) data, the representation of a measured PDF of a relative geographic position of each satellite, and the representation of an estimated PDF of a relative geographic position of each satellite; determining a measured entry time and a measured exit time for each satellite and a gradient of a strength of a beacon signal of each satellite whose identification is extracted over the bounded region over the bounded region; and for each satellite whose identification is extracted, adding the measured entry time, the measured exit time, and the gradient of the strength of the beacon signal of each satellite whose identification is extracted to the representation of a measured PDF of a relative position of each satellite.

[0067] Example 2 includes the method as in Example 1, further comprising receiving orbital data for the plurality of satellites.

[0068] Example 3 includes the method of any one of Examples 1-2, wherein determining that the GNSS time is valid comprises determining whether a difference between a GNSS-provided geographic position of the subject and an estimated geographic position of the subject exceeds a predetermined threshold.

[0069] Example 4 includes the method of any one of Examples 1-3, wherein at least one of: (a) when the representation of the measurement PDF that identifies a relative position of the satellite includes a measured entry time of the satellite into a defined region, the estimated PDF of the relative geographic position of the satellite includes an estimated entry time of the satellite into the defined region; (b) when the representation of the measurement PDF that identifies a relative position of the satellite includes a measured exit time of the satellite from a defined region, the estimated PDF of the relative geographic position of the satellite includes an estimated exit time of the satellite from the defined region; and (c) when the representation of the measurement PDF that identifies a relative position of the satellite includes a gradient of signal strength of a beacon of the satellite in a defined region, the estimated PDF of the relative geographic position of the satellite includes a gradient of an estimated distance between the subject and the satellite.

[0070] Example 5 includes the method of any one of Examples 1-4, wherein the beacon data is received from each of at least three receiver channels of a satellite receiver, wherein each receiver channel is electromagnetically coupled to a unique antenna of an antenna array.

[0071] Example 6 includes the method of any one of Examples 1-5, wherein determining whether the later current GNSS time is valid is determined by a verifier.

[0072] Example 7 includes a non-transitory computer-readable medium storing a program that causes at least one processor to perform a process to determine a position of a subject, the process comprising: counting an atomic clock-derived time that is incremented from a current global navigation satellite system (GNSS) time and from a periodic time count from an atomic clock; attempting to receive a later current GNSS time that occurs after the current GNSS time; determining whether the later current GNSS time is received and valid; determining that the later current GNSS time is at least one of not received and not valid, followed by causing an estimated geographic position of the subject to be provided to a navigation system; receiving beacon data for each satellite of a plurality of satellites, wherein the beacon data contains a unique satellite identification of one satellite of the plurality of satellites and a signal strength of a beacon signal that includes the unique satellite identification; extracting the satellite identification from each received beacon data; obtaining orbital data for each satellite whose satellite identification is extracted using each extracted satellite identification and recently received orbital data for the plurality of satellites; obtaining a reference time from the recently received orbital data for the plurality of satellites; determining a time difference equal to an absolute value of a difference between another current atomic clock-derived time and the reference time; defining a bounded region based on a radiation pattern of an antenna array of a satellite receiver configured to receive each beacon signal and a minimum detectable signal threshold level of the satellite receiver; generating an estimated probability density function (PDF) of an absolute geographic position of each satellite whose satellite identification is extracted in the bounded region and using the time difference and the obtained orbital data; generating a representation of an estimated PDF of a relative geographic position of each satellite in the bounded region using each estimated PDF of an absolute geographic position, wherein each such relative geographic position is relative to either (a) the estimated position of the subject or (b) a received valid GNSS position; determining (a) an angle of arrival of a beacon signal of each satellite whose satellite identification is extracted relative to the subject and (b) a signal strength of each beacon signal received from a satellite whose satellite identification is extracted using the another current atomic clock-derived time for each satellite whose satellite identification is extracted and the received beacon data; determining a representation of a measured PDF of a relative geographic position of each satellite whose identification is extracted using each determined angle of arrival; determining the estimated geographic position of the subject using inertial measurement unit (IMU) data, the representation of the measured PDF of a relative geographic position of each satellite, and the representation of the estimated PDF of a relative geographic position of each satellite; determining a measured entry time and a measured exit time for each satellite and a gradient of a strength of a beacon signal of each satellite whose identification is extracted over the bounded region over the bounded region; and for each satellite whose identification is extracted, adding the measured entry time, the measured exit time, and the gradient of the strength of the beacon signal of each satellite whose identification is extracted to the representation of the measured PDF of a relative position of each satellite.

[0073] Example 8 includes the non-transitory computer-readable medium of Example 7, wherein the process further comprises receiving orbital data for a number of satellites.

[0074] Example 9 includes the non-transitory computer-readable medium of any of Examples 7-8, wherein determining that the GNSS time is valid comprises determining whether a difference between a GNSS-provided geographic position of the subject and an estimated geographic position of the subject exceeds a predetermined threshold.

[0075] Example 10 includes the non-transitory computer-readable medium of any of Examples 7-9, wherein at least one of: (a) when the representation of the measurement PDF that identifies the relative position of the satellite extracted includes a measured entry time of the satellite into a defined region, the estimated PDF of the relative geographic position of the satellite includes an estimated entry time of the satellite into the defined region; (b) when the representation of the measurement PDF that identifies the relative position of the satellite extracted includes a measured exit time of the satellite from a defined region, the estimated PDF of the relative geographic position of the satellite includes an estimated exit time of the satellite from the defined region; and (c) when the representation of the measurement PDF that identifies the relative position of the satellite extracted includes a gradient of a signal strength of a beacon of the satellite in a defined region, the estimated PDF of the relative geographic position of the satellite includes a gradient of an estimated distance between the subject and the satellite.

[0076] Example 11 includes the non-transitory computer-readable medium of any of Examples 7-10, wherein the beacon data is received from each of at least three receiver channels of a satellite receiver, wherein each receiver channel is electromagnetically coupled to a unique antenna of an antenna array.

[0077] Example 12 includes the non-transitory computer-readable medium of any of Examples 7-11, wherein determining whether a later current GNSS time is valid is determined by a verifier.

[0078] Example 13 includes an apparatus for determining a position of a subject, the apparatus comprising: a satellite receiver on or in the subject, wherein the satellite receiver comprises an antenna array on or in the subject; an atomic clock on or in the subject and configured to provide periodic time counts; a global navigation satellite system (GNSS) receiver on or in the subject; an inertial measurement unit on or in the subject and comprising at least one of: at least one accelerometer and at least one gyroscope; processing circuitry on or in the subject and communicatively coupled to each of the satellite receiver, the atomic clock, the GNSS receiver, and the inertial measurement unit; wherein the processing circuitry is configured to: count atomic clock-derived times that start from a current GNSS time from the GNSS receiver and that increment with the periodic time counts received from the atomic clock; attempt to receive a later current GNSS time that occurs after the current GNSS time; determine whether the later current GNSS time is received and valid; determine that the later current GNSS time is at least one of not received and not valid, and subsequently use an estimated geographic position of the subject to provide information about a position of the subject relative to an intended target of the subject; receive beacon data for each satellite of a plurality of satellites, wherein the beacon data comprises a unique satellite identification of one satellite of the plurality of satellites and a signal strength of a beacon signal that includes the unique satellite identification; extract the satellite identification from each received beacon data; using each extracted satellite identification and recently received orbital data for the plurality of satellites, obtain orbital data for each satellite whose satellite identification was extracted; obtain a reference time from the recently received orbital data for the plurality of satellites; determine a time difference equal to an absolute value of a difference between another current atomic clock-derived time and the reference time; define a bounding region based on a radiation pattern of an antenna array of the satellite receiver configured to receive each beacon signal and a minimum detectable signal threshold level of the satellite receiver; using the time difference and the obtained orbital data, generate an estimated probability density function (PDF) of an absolute geographic position of each satellite in the bounding region and whose satellite identification was extracted; using each estimated PDF of an absolute geographic position, generate a representation of an estimated PDF of a relative geographic position of each satellite in the bounding region, wherein each such relative geographic position is relative to either (a) the estimated position of the subject or (b) a received valid GNSS position; using the another current atomic clock-derived time for each satellite whose satellite identification was extracted and the received beacon data, determine (a) an angle of arrival of the beacon signal for each satellite whose satellite identification was extracted relative to the subject, and (b) a signal strength of each beacon signal received from a satellite whose satellite identification was extracted; using each determined angle of arrival, determine a representation of a measured PDF of a relative geographic position of each satellite whose identification was extracted;determining an estimated geographic position of the subject using the inertial measurement unit (IMU) data, the representation of the measurement PDF of the relative geographic position of each satellite, and the representation of the estimated PDF of the relative geographic position of each satellite; determining a measurement entry time and a measurement exit time for each satellite, and a gradient of the strength of the beacon signal of each satellite whose identity is extracted over the defined region over the defined region; and for each satellite whose identity is extracted, adding the measurement entry time, the measurement exit time, and the gradient of the strength of the beacon signal of each satellite whose identity is extracted to the representation of the measurement PDF of the relative position of each satellite.

[0079] Example 14 includes the apparatus of Example 13, further comprising an auxiliary receiver communicatively coupled to the processing circuit and configured to receive orbit data for the plurality of satellites and provide the orbit data for the plurality of satellites to the processing circuit.

[0080] Example 15 includes the apparatus of any of Examples 13-14, wherein determining that the GNSS time is valid comprises determining whether a difference between a GNSS-provided geographic position of the subject and the estimated geographic position of the subject exceeds a predetermined threshold.

[0081] Example 16 includes the apparatus of any of Examples 13-15, wherein at least one of: (a) when the representation of the measurement PDF of the relative position of the satellite whose identity is extracted includes a measurement entry time of the satellite entering the defined region, the estimated PDF of the relative geographic position of the satellite includes an estimated entry time of the satellite entering the defined region; (b) when the representation of the measurement PDF of the relative position of the satellite whose identity is extracted includes a measurement exit time of the satellite leaving the defined region, the estimated PDF of the relative geographic position of the satellite includes an estimated exit time of the satellite leaving the defined region; and (c) when the representation of the measurement PDF of the relative position of the satellite whose identity is extracted includes a gradient of the signal strength of the beacon of the satellite in the defined region, the estimated PDF of the relative geographic position of the satellite includes a gradient of an estimated distance between the subject and the satellite.

[0082] Example 17 includes the apparatus of any of Examples 13-16, wherein the beacon data is received from each of at least three receiver channels of the satellite receiver, wherein each receiver channel is electromagnetically coupled to a unique antenna of an antenna array.

[0083] Example 18 includes the apparatus of any of Examples 13-17, further comprising a GNSS verifier circuit communicatively coupled to the processing circuit and configured to determine whether a later current GNSS time is valid and send a validity determination to the processing circuit.

[0084] Example 19 includes the apparatus of any of Examples 13-18, wherein the processing circuitry includes a Kalman filter and is configured to determine an estimated geographic position of the principal.

[0085] Example 20 includes the apparatus of any of Examples 13-19, wherein the processing circuitry includes at least one processor circuit communicatively coupled to at least one memory circuit.

[0086] While specific embodiments have been shown and described in detail to illustrate the application, it will be readily appreciated by those skilled in the art that any arrangement which calculates to achieve the same purposes can be substituted for the specific embodiments shown. Thus, it is evident that the application can be practiced otherwise than as specifically described.

Claims

1. An apparatus for determining a position of a subject, the apparatus comprising: a satellite receiver on or in the subject, wherein the satellite receiver comprises an antenna array on or in the subject; an atomic clock on or in the subject and configured to provide a periodic time count; a global navigation satellite system (GNSS) receiver on or in the subject; an inertial measurement unit on or in the subject and comprising at least one of: at least one accelerometer and at least one gyroscope, processing circuitry on or in the subject and communicatively coupled to each of the satellite receiver, the atomic clock, the GNSS receiver, and the inertial measurement unit; wherein the processing circuitry is configured to: count an atomic clock-derived time starting from a current GNSS time from the GNSS receiver and incremented with the periodic time count received from the atomic clock; attempt to receive a later current GNSS time occurring after the current GNSS time; determine whether the later current GNSS time is received and valid; determine that the later current GNSS time is at least one of not received and invalid, and subsequently use an estimated geographic position of the subject to provide information about the position of the subject relative to an intended target of the subject; receive beacon data for each satellite of a plurality of satellites, wherein the beacon data comprises a unique satellite identification of one satellite of the plurality of satellites and a signal strength of a beacon signal comprising the unique satellite identification; extract a satellite identification from each received beacon data; using each extracted satellite identification and recently received orbital data for a number of satellites, obtain orbital data for each satellite whose satellite identification is extracted; obtain a reference time from the recently received orbital data for a number of satellites; determine a time difference equal to an absolute value of a difference between another current atomic clock-derived time and the reference time; based on a radiation pattern of an antenna array of a satellite receiver configured to receive each beacon signal and a minimum detectable signal threshold level of the satellite receiver, define a bounded region; using the time difference and the obtained orbital data, generate an estimated probability density function (PDF) of an absolute geographic position of each satellite in the bounded region and whose satellite identification is extracted; using each estimated PDF of an absolute geographic position, generate a representation of an estimated PDF of a relative geographic position of each satellite in the bounded region, wherein each such relative geographic position is relative to either (a) an estimated position of the subject most recently or (b) a received valid GNSS position; using a further current atomic clock-derived time for each satellite whose satellite identification is extracted and received beacon data, determine (a) an angle of arrival of the beacon signal for each satellite whose satellite identification is extracted relative to the subject, and (b) a signal strength of each beacon signal received from a satellite whose satellite identification is extracted; using each determined angle of arrival, determining a representation of a measured PDF of a relative geographic position of each satellite whose identity is extracted; using inertial measurement unit (IMU) data, the representation of the measured PDF of a relative geographic position of each satellite, and the representation of an estimated PDF of a relative geographic position of each satellite, determining the estimated geographic position of the body; determining a measured entry time and a measured exit time of each satellite, and a gradient of an intensity of the beacon signal of each satellite whose identity is extracted over the defined region over the defined region; and for each satellite whose identity is extracted, adding the measured entry time, the measured exit time, and the gradient of the intensity of the beacon signal of each satellite whose identity is extracted to the representation of a measured PDF of a relative position of each satellite.

2. The apparatus of claim 1, wherein determining that the GNSS time is valid comprises determining whether a difference between a GNSS-provided geographic position of the body and the estimated geographic position of the body exceeds a predetermined threshold.

3. The apparatus of claim 1, wherein at least one of: (a) when the representation of a measured PDF of a relative position of a satellite whose identity is extracted includes the measured entry time of the satellite into the defined region, the estimated PDF of a relative geographic position of the satellite includes an estimated entry time of the satellite into the defined region; (b) when the representation of the measured PDF of a relative position of a satellite whose identity is extracted includes the measured exit time of the satellite from the defined region, the estimated PDF of a relative geographic position of the satellite includes an estimated exit time of the satellite from the defined region; and (c) when the representation of the measured PDF of a relative position of a satellite whose identity is extracted includes the gradient of the signal intensity of the beacon of the satellite in the defined region, the estimated PDF of a relative geographic position of the satellite includes a gradient of an estimated distance between the body and the satellite.