Methods, systems, and storage media for optimizing and aligning raw GNSS observation data from smartphones

By generating aligned pseudorange, carrier phase, and Doppler observations through the Android Location API, the problem of inconsistent observations in smartphones is solved, enabling high-precision BeiDou/GNSS positioning, velocity measurement, and time synchronization.

CN116990833BActive Publication Date: 2026-04-03WUHAN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-27
Publication Date
2026-04-03

AI Technical Summary

Technical Problem

Inconsistencies exist among the BeiDou/GNSS observation times, pseudoranges, carrier phases, and Doppler observations generated by smartphones, affecting high-precision positioning, velocity measurement, and time synchronization.

Method used

The observation time is generated by obtaining clock parameters through the Android Location API, and aligned carrier phase observations are generated using AccumulatedDeltaRangeMeters and FullBiasNanos. Aligned Doppler observations are generated using PseudorangeRateMetersPerSecond. The pseudorange, carrier phase and Doppler observations are assigned to the same reception time to ensure consistency.

Benefits of technology

It achieves time consistency of pseudorange, phase, and Doppler observations, supports high-precision smartphone BeiDou/GNSS positioning, velocity measurement, and time synchronization, and solves the problems caused by inconsistencies in traditional methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116990833B_ABST
    Figure CN116990833B_ABST
Patent Text Reader

Abstract

This invention provides a method, system, and storage medium for optimizing and aligning raw GNSS observation data from smartphones. It ensures consistency in generated pseudorange, phase, and Doppler observations, supporting high-precision BeiDou / GNSS positioning for user devices. The method includes: Step 1, obtaining clock parameters through the Android Location API to generate the observation time T. Rx (t); Step 2, by measuring parameters and observation time T Rx Step 3: Generate pseudorange observation P(t); Step 4: Generate carrier phase observations aligned with the pseudorange using AccumulatedDeltaRangeMeters and FullBiasNanos obtained from the Android Location API; Step 5: Generate Doppler observations synchronized with the pseudorange rate and carrier phase change rate using PseudorangeRateMetersPerSecond and FullBiasNanos obtained from the Android Location API; Step 6: Assign the generated pseudorange P(t), carrier phase (t), and Doppler Doppler (t) observations to the same receiving observation time T. Rx (t).
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of satellite navigation and positioning technology, specifically relating to a method, system, and storage medium for optimizing and aligning raw GNSS observation data from smartphones. Background Technology

[0002] With the continuous development of the Internet of Things (IoT), location services are gradually becoming necessities in people's lives. Most mobile applications are more or less related to location services, especially for moving objects, where the need for positioning is even more pronounced. Therefore, smartphone positioning technology has received widespread attention. The Global Navigation Satellite System (GNSS) chips, including BeiDou, embedded in smartphones can provide users with a wide range of location services. In May 2016, Google provided an API interface on its Android operating system, allowing users to access raw GNSS observation data, making high-precision location services accessible to the general public and further expanding the application scope of low-cost, high-precision GNSS. Therefore, optimizing raw GNSS observation data based on smartphones has significant practical implications and research value.

[0003] However, the raw GNSS data output by smartphones is not the commonly used direct observations of pseudorange, phase, and Doppler, but rather two types of data provided by the Android Location API: Clock and Measurements. Therefore, pseudorange, phase, and Doppler observations need to be generated based on these two types of data. The generation of receive time and pseudorange observations requires the use of the FullBiasNanos variable, which fluctuates frequently. Conversely, FullBiasNanos is not used when generating phase and Doppler data, leading to inconsistencies between these and the generated pseudorange. Existing methods include using an initial FullBiasNanos, but as time increases, the generated receive time gradually deviates from the true time, which is detrimental to time synchronization with other sensors; or adjusting the carrier phase observations, but this results in inconsistencies in pseudorange, carrier phase change rate, and Doppler observations. The inconsistencies between the BeiDou / GNSS observation time, pseudorange, carrier phase, and Doppler observations generated by smartphones will affect the high-precision GNSS positioning, velocity measurement, and time synchronization capabilities of smartphones. Summary of the Invention

[0004] To address the aforementioned issues, this invention provides a method, system, and storage medium for optimizing and aligning raw GNSS observation data from smartphones. This method ensures consistency in the generated pseudorange, phase, and Doppler observations, and supports high-precision BeiDou / GNSS positioning for user devices.

[0005] To achieve the above objectives, the present invention adopts the following solution:

[0006] <Method>

[0007] This invention provides a method for optimizing and aligning raw GNSS observation data from smartphones, comprising the following steps:

[0008] Step 1: Obtain clock parameters and generate observation time T via Android Location API Rx (t);

[0009] Step 2: Obtain the measurement parameters and the observation time T obtained above through the Android Location API. Rx (t) Generate pseudorange observations P(t);

[0010] Step 3: Generate carrier phase observations aligned with pseudorange using AccumulatedDeltaRangeMeters and FullBiasNanos obtained from the Android Location API:

[0011]

[0012] In the formula, AccumulatedDeltaRangeMeters is the cumulative change in distance since the last channel reset, FullBiasNanos is the time difference between TimeNanos and the GPS time system start time, and BiasNanos is the sub-second bias correction amount for FullBiasNanos. and For time alignment, the generated phase observations are aligned with pseudorange observations that also use FullBiasNanos(t), where λ is the corresponding wavelength, c is the speed of light, t is the current epoch, and t0 is the initial available epoch.

[0013] Step 4: Generate Doppler observations synchronized with the pseudorange rate and carrier phase change rate using the PseudorangeRateMetersPerSecond and FullBiasNanos data obtained from the Android Location API.

[0014]

[0015] In the formula, PseudorangeRateMetersPerSecond is the pseudorange rate, and λ is the corresponding wavelength. and For time alignment, the generated Doppler observations are aligned with pseudorange and carrier phase observations that also use FullBiasNanos(t), where t is the current epoch and t-1 is the previous epoch.

[0016] Step 5, combine the generated pseudorange P(t) and carrier phase... The Doppler(t) observations are assigned the same receiving observation time T. Rx (t).

[0017] Preferably, the smartphone GNSS raw observation data optimization and alignment method provided by the present invention, in step 1, generates the observation time T according to the following formula. Rx (t):

[0018]

[0019] In the formula, TimeNanos is the clock face time built into the GNSS chip, TimeOffsetNanos is the offset correction amount of TimeNanos, mod() is the remainder function, and NumberNanoSecondsWeek is the total number of nanoseconds within a week.

[0020] Preferably, in step 2 of the smartphone GNSS raw observation data optimization and alignment method provided by the present invention, pseudorange observation value P(t) is generated according to the following formula:

[0021]

[0022] In the formula, ReceivedSvTimeNanos represents the time when the satellite signal was transmitted and received by the chip.

[0023] <System>

[0024] Furthermore, this invention also provides a smartphone GNSS raw observation data optimization and alignment system, which can automatically implement the above-mentioned <method>, including:

[0025] The observation time generation unit obtains clock parameters through the Android Location API to generate the observation time T. Rx (t);

[0026] The pseudorange generator obtains the measurement parameters and the observation time T obtained above through the Android Location API. Rx (t) Generate pseudorange observations P(t);

[0027] The carrier phase generation unit generates carrier phase observations aligned with the pseudorange using FullBiasNanos and AccumulatedDeltaRangeMeters obtained from the Android Location API.

[0028]

[0029] In the formula, AccumulatedDeltaRangeMeters is the cumulative change in distance since the last channel reset, FullBiasNanos is the time difference between TimeNanos and the GPS time system start time, and BiasNanos is the sub-second bias correction amount for FullBiasNanos. and For time alignment, the generated phase observations are aligned with pseudorange observations that also use FullBiasNanos(t), where λ is the corresponding wavelength, c is the speed of light, t is the current epoch, and t0 is the initial available epoch.

[0030] The Doppler generation unit uses FullBiasNanos and PseudorangeRateMetersPerSecond obtained from the Android Location API to generate Doppler observations that are synchronized with the pseudorange rate and carrier phase change rate.

[0031]

[0032] In the formula, PseudorangeRateMetersPerSecond is the pseudorange rate, and λ is the corresponding wavelength. and For time alignment, the generated Doppler observations are aligned with pseudorange and carrier phase observations that also use FullBiasNanos(t), where t is the current epoch and t-1 is the previous epoch.

[0033] The alignment part will generate pseudorange observations P(t) and carrier phase observations. Doppler(t) and the Doppler observation are assigned the same receiving observation time T. Rx (t);

[0034] The control unit is communicatively connected to the observation time generation unit, pseudorange generation unit, carrier phase generation unit, Doppler generation unit, and alignment unit, and controls their operation.

[0035] Preferably, the smartphone GNSS raw observation data optimization and alignment system provided by the present invention may further include: an input display unit, which is communicatively connected to the control unit, for allowing the user to input operation commands and displaying them accordingly.

[0036] Preferably, the smartphone GNSS raw observation data optimization and alignment system provided by the present invention generates the observation time T in the observation time generation unit according to the following formula. Rx (t):

[0037]

[0038] In the formula, TimeNanos is the clock face time built into the GNSS chip, TimeOffsetNanos is the offset correction amount of TimeNanos, mod() is the remainder function, and NumberNanoSecondsWeek is the total number of nanoseconds within a week.

[0039] Preferably, the smartphone GNSS raw observation data optimization and alignment system provided by the present invention generates pseudorange observation values ​​P(t) in the pseudorange generation unit according to the following formula:

[0040]

[0041] In the formula, ReceivedSvTimeNanos represents the time when the satellite signal was transmitted and received by the chip.

[0042] <Storage Media>

[0043] Furthermore, the present invention also provides a storage medium storing a program for performing the optimized alignment method for raw GNSS observation data from a smartphone as described in any of the methods.

[0044] The role and effect of invention

[0045] 1. This invention can guarantee the consistency between the generated pseudorange and phase observation values, and can solve the problems that traditional precise single-point positioning is unusable and traditional phase smoothing pseudorange is unnecessary due to the inconsistency between pseudorange clock error and phase clock error of smartphones, thereby supporting high-precision smartphone BeiDou / GNSS positioning.

[0046] 2. This invention can guarantee the consistency of the generated pseudorange rate, epoch differential carrier phase observations and Doppler observations, and can solve the problem that traditional combined smartphone pseudorange rate, epoch differential carrier phase and Doppler observations cannot be used for velocity measurement due to inconsistency among the three, thus supporting high-precision smartphone BeiDou / GNSS velocity measurement.

[0047] 3. This invention can ensure the consistency between the generated receiver time and pseudorange, carrier phase and Doppler observations, and truly reflect the receiver observation time and its changes. It avoids the problem that the generated receiver time gradually deviates from the real time due to the use of initial FullBiasNanos, as well as the problem of time synchronization with other sensors. In this way, it can support high-precision smartphone BeiDou / GNSS time synchronization. Attached Figure Description

[0048] Figure 1 This is a flowchart of a method for optimizing and aligning raw GNSS observation data from a smartphone, as described in an embodiment of the present invention. Detailed Implementation

[0049] The following describes in detail, with reference to the accompanying drawings, the specific implementation scheme of the smartphone GNSS raw observation data optimization and alignment method, system and storage medium involved in this invention.

[0050] <Example 1>

[0051] like Figure 1 As shown, the method for optimizing and aligning raw GNSS observation data from smartphones provided in this embodiment includes the following steps:

[0052] S1: Generate the observation time T by obtaining clock parameters through the Android Location API Rx (t):

[0053]

[0054] In the formula, TimeNanos is the clock face time built into the GNSS chip (ns), TimeOffsetNanos is the deviation correction amount of TimeNanos (ns), FullBiasNanos is the time difference between TimeNanos and the GPS time system start time (January 6, 1980) (ns), BiasNanos is the sub-second deviation correction amount of FullBiasNanos (ns), mod() is the remainder function, and NumberNanoSecondsWeek is the total number of nanoseconds in a week.

[0055] S2: Obtain the measurement parameters and the observation time T obtained above via the Android Location API. Rx (t) Generate pseudorange observations P(t):

[0056]

[0057] In the formula, ReceivedSvTimeNanos is the satellite signal transmission time (ns) received by the chip, and c is the speed of light.

[0058] S3: Generate carrier phase observations aligned with pseudorange using AccumulatedDeltaRangeMeters and FullBiasNanos obtained via the Android Location API:

[0059]

[0060] In the formula, AccumulatedDeltaRangeMeters is the cumulative distance change (m) since the last channel reset. and For time alignment, the generated phase observations are aligned with pseudorange observations that also use FullBiasNanos(t), where λ is the corresponding wavelength, c is the speed of light, t is the current epoch, and t0 is the initial available epoch.

[0061] S4: Generate Doppler observations synchronized with pseudorange rate and carrier phase change rate using PseudorangeRateMetersPerSecond and FullBiasNanos obtained from the Android Location API:

[0062]

[0063] In the formula, PseudorangeRateMetersPerSecond is the pseudorange rate (m / s), and λ is the corresponding wavelength. and For time alignment, the generated Doppler observations are aligned with pseudorange and carrier phase observations that also use FullBiasNanos(t), where t is the current epoch, t-1 is the previous epoch, and the sampling rate is 1 Hz.

[0064] S5: Combine the pseudorange P(t) and carrier phase generated above. The Doppler(t) observations are assigned the same receiving observation time T. Rx (t), T Rx (t) and P(t), Doppler(t) introduces FullBiasNanos(t) to ensure the consistency of the time and changes of the four components.

[0065] In summary, this embodiment, by employing the above methods, can ensure the consistency of BeiDou / GNSS observation time, pseudorange, carrier phase, and Doppler observation values ​​generated by the smartphone, truly reflecting the observation time and its changes. It solves problems such as the inconsistency between the smartphone's pseudorange clock and phase clock, the inapplicability of traditional precise single-point positioning and phase-smooth pseudorange positioning, and the unavailability of tight combination velocity measurement based on joint pseudorange rate, epoch differential carrier phase, and Doppler observation values. Thus, it supports high-precision smartphone BeiDou / GNSS positioning, velocity measurement, and time synchronization.

[0066] In addition, the above methods can be stored as computer programs in storage media. When the processor reads and runs the storage media, it executes the above methods to achieve alignment.

[0067] <Example 2>

[0068] Furthermore, this second embodiment provides a smartphone GNSS raw observation data optimization and alignment system capable of automatically implementing the above-mentioned method of the present invention. The system includes an observation time generation unit, a pseudorange generation unit, a carrier phase generation unit, a Doppler generation unit, an alignment unit, an input display unit, and a control unit.

[0069] The observation time generation unit performs the functions described in step 1 above, obtaining clock parameters through the Android Location API to generate the observation time T. Rx (t).

[0070] The pseudorange generator performs the steps described in step 2 above, obtaining measurement parameters and the observation time T obtained above via the Android Location API. Rx (t) Generate pseudorange observations P(t).

[0071] The carrier phase generation unit performs the functions described in step 3 above, generating carrier phase observations aligned with pseudoranges using FullBiasNanos and AccumulatedDeltaRangeMeters obtained from the Android Location API.

[0072] The Doppler generation unit performs the functions described in step 4 above, generating Doppler observations that are synchronized with the pseudorange rate and carrier phase change rate using FullBiasNanos and PseudorangeRateMetersPerSecond obtained from the Android Location API.

[0073] The alignment part is used to perform the work described in step 5 above, and to generate the pseudorange observation P(t) and carrier phase observation P(t). Doppler(t) and the Doppler observation are assigned the same receiving observation time T. Rx (t).

[0074] The input display unit is used to allow users to input operation commands and to display the input, output, and intermediate processing data of the corresponding units according to the operation commands.

[0075] The control unit is communicatively connected to the observation time generation unit, pseudorange generation unit, carrier phase generation unit, Doppler generation unit, alignment unit, and input display unit, and controls their operation.

[0076] The above embodiments are merely illustrative examples of the technical solutions of the present invention. The method, system, and storage medium for optimizing and aligning raw GNSS observation data for smartphones involved in this invention are not limited to the contents described in the above embodiments, but are defined by the scope of the claims. Any modifications, additions, or equivalent substitutions made by those skilled in the art based on these embodiments are within the scope of protection claimed by the claims of this invention.

Claims

1. A method for optimizing and aligning raw GNSS observation data from smartphones, characterized in that, include: Step 1: Obtain clock parameters and generate observation time T via Android Location API Rx (t); Step 2: Obtain the measurement parameters and the observation time T obtained above through the Android Location API. Rx (t) Generate pseudorange observations P(t); Step 3: Generate carrier phase observations aligned with pseudorange using AccumulatedDeltaRangeMeters and FullBiasNanos obtained from the Android Location API: In the formula, AccumulatedDeltaRangeMeters is the cumulative change in distance since the last channel reset, FullBiasNanos is the time difference between TimeNanos and the GPS time system start time, and BiasNanos is the sub-second bias correction amount for FullBiasNanos. and For time alignment, the generated phase observations are aligned with pseudorange observations that also use FullBiasNanos(t), where λ is the corresponding wavelength, c is the speed of light, t is the current epoch, and t0 is the initial available epoch. Step 4: Generate Doppler observations synchronized with the pseudorange rate and carrier phase change rate using the PseudorangeRateMetersPerSecond and FullBiasNanos data obtained from the Android Location API. In the formula, PseudorangeRateMetersPerSecond is the pseudorange rate, and λ is the corresponding wavelength. and For time alignment, the generated Doppler observations are aligned with pseudorange and carrier phase observations that also use FullBiasNanos(t), where t is the current epoch and t-1 is the previous epoch. Step 5, combine the generated pseudorange P(t) and carrier phase... The Doppler(t) observations are assigned the same receiving observation time T. Rx (t).

2. The method for optimizing and aligning raw GNSS observation data from smartphones according to claim 1, characterized in that: in, In step 1, the observation time T is generated according to the following formula. Rx (t): In the formula, TimeNanos is the clock face time built into the GNSS chip, TimeOffsetNanos is the offset correction amount of TimeNanos, mod() is the remainder function, and NumberNanoSecondsWeek is the total number of nanoseconds within a week.

3. The method for optimizing and aligning raw GNSS observation data from smartphones according to claim 1, characterized in that: in, In step 2, the pseudorange observation P(t) is generated according to the following formula: In the formula, ReceivedSvTimeNanos represents the time when the satellite signal was transmitted and received by the chip.

4. A smartphone GNSS raw observation data optimization and alignment system, characterized in that, include: The observation time generation unit obtains clock parameters through the Android Location API to generate the observation time T. Rx (t); The pseudorange generator obtains the measurement parameters and the observation time T obtained above through the Android Location API. Rx (t) Generate pseudorange observations P(t); The carrier phase generation unit generates carrier phase observations aligned with the pseudorange using FullBiasNanos and AccumulatedDeltaRangeMeters obtained from the Android Location API. In the formula, AccumulatedDeltaRangeMeters is the cumulative change in distance since the last channel reset, FullBiasNanos is the time difference between TimeNanos and the GPS time system start time, and BiasNanos is the sub-second bias correction amount for FullBiasNanos. and For time alignment, the generated phase observations are aligned with pseudorange observations that also use FullBiasNanos(t), where λ is the corresponding wavelength, c is the speed of light, t is the current epoch, and t0 is the initial available epoch. The Doppler generation unit uses FullBiasNanos and PseudorangeRateMetersPerSecond obtained from the Android Location API to generate Doppler observations that are synchronized with the pseudorange rate and carrier phase change rate. In the formula, PseudorangeRateMetersPerSecond is the pseudorange rate, and λ is the corresponding wavelength. and For time alignment, the generated Doppler observations are aligned with pseudorange and carrier phase observations that also use FullBiasNanos(t), where t is the current epoch and t-1 is the previous epoch. The alignment part will generate pseudorange observations P(t) and carrier phase observations. Doppler(t) and the Doppler observation are assigned the same receiving observation time T. Rx (t); The control unit is communicatively connected to the observation time generation unit, pseudorange generation unit, carrier phase generation unit, Doppler generation unit, and alignment unit, and controls their operation.

5. The smartphone GNSS raw observation data optimization and alignment system according to claim 4, characterized in that, Also includes: The input display unit is connected in communication with the control unit and is used to allow users to input operation commands and display the corresponding commands.

6. The smartphone GNSS raw observation data optimization and alignment system according to claim 4, characterized in that: in, In the observation time generation section, the observation time T is generated according to the following formula. Rx (t): In the formula, TimeNanos is the clock face time built into the GNSS chip, TimeOffsetNanos is the offset correction amount of TimeNanos, mod() is the remainder function, and NumberNanoSecondsWeek is the total number of nanoseconds within a week.

7. The smartphone GNSS raw observation data optimization and alignment system according to claim 4, characterized in that: in, In the pseudorange generation unit, the pseudorange observation P(t) is generated according to the following formula: In the formula, ReceivedSvTimeNanos represents the time when the satellite signal was transmitted and received by the chip.

8. A storage medium, characterized in that: The system contains a program for executing the smartphone GNSS raw observation data optimization and alignment method as described in any one of claims 1 to 3.

Citation Information

Patent Citations

  • Method and device of correcting receiver phase observation and computer medium

    CN110471092A

  • Precision atmosphere correction enhanced intelligent terminal PPP instantaneous sub-meter positioning method

    CN116184441A