Satellite-based positioning methods, electronic devices, storage media, and software products
By obtaining the integer and real ambiguities of satellites, and using methods such as the LAMBDA algorithm and Kalman filter, the problem of excessive ambiguity removal in satellite positioning was solved, thus improving the reliability and accuracy of positioning.
Patent Information
- Application Number
- CN202411743186.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-29
- Publication Date
- 2026-01-30
- Estimated Expiration
- 2044-11-29
AI Technical Summary
In the precise positioning process of global satellite navigation systems, the problem of resolving ambiguities in carrier phase observations leads to excessive ambiguity removal, which fails to meet the filter update conditions and affects positioning accuracy.
By obtaining the integer ambiguity of the first satellite and determining the real ambiguity of the second satellite that was discarded during the solution process, the integer ambiguity is re-checked and determined using preset ambiguity fixing methods and algorithms such as LAMBDA, Kalman filter, and integer least squares search, thereby increasing the number of available ambiguities.
It significantly increases the number of available satellite pairs for GNSS positioning, improving the reliability and accuracy of positioning.
Smart Images

Figure CN119620143B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of surveying and mapping, and in particular to a satellite-based positioning method, device, electronic equipment, storage medium, and program product. Background Technology
[0002] In the process of precise positioning using global satellite navigation systems, carrier phase observations are crucial for ensuring high-precision positioning.
[0003] However, carrier phase observations face the problem of ambiguity resolution. During the ambiguity fixing process, due to issues such as the quality of observation data and the mismatch between the random model and the observation conditions, too much ambiguity may be eliminated, making the eliminated ambiguity unusable. Consequently, the fixed ambiguity logarithm cannot meet the filter update conditions, thus failing to fix the ambiguity and affecting the positioning accuracy. Summary of the Invention
[0004] This application provides a satellite-based positioning method, device, electronic device, storage medium, and program product to achieve the effect of re-checking satellite ambiguity, increasing the number of available satellite ambiguities, and improving positioning accuracy.
[0005] In a first aspect, embodiments of this application provide a satellite-based positioning method, including:
[0006] Obtain the integer ambiguity of the first satellite and determine the real ambiguity of the second satellite that was discarded during the satellite resolution process;
[0007] Determine the integer ambiguity of the second satellite based on its real ambiguity.
[0008] The location information of the electronic device used to receive satellite signals is determined based on the integer ambiguity of the first satellite and the integer ambiguity of the second satellite.
[0009] In one possible implementation, obtaining the integer ambiguity of the first satellite includes:
[0010] The real ambiguities of multiple satellites are obtained, and the real ambiguities of the multiple satellites are processed using a preset ambiguity fixing method to obtain the integer ambiguity of the first satellite among the multiple satellites.
[0011] In one possible implementation, determining the integer ambiguity of the second satellite based on the real-valued ambiguity of the second satellite includes:
[0012] The rounding of the real-valued ambiguity of the second satellite is checked;
[0013] If the verification result meets the preset conditions, the integer ambiguity of the second satellite is determined.
[0014] In one possible implementation, the check of rounding the real-valued ambiguity of the second satellite includes:
[0015] Determine whether the integration success rate of the second satellite meets the first preset threshold;
[0016] If the rounding success rate is greater than or equal to the first preset threshold, the integer ambiguity of the second satellite is determined, and the posterior residual is determined based on the obtained integer ambiguity.
[0017] If the posterior residual is less than or equal to the second preset threshold, then the check result meets the preset condition.
[0018] In one possible implementation, determining the posterior residual based on the obtained integer ambiguity includes:
[0019] Update the state parameter equation of the preset filter using the integer ambiguity of the second satellite;
[0020] Based on the updated state parameter equation of the preset filter, multiple state parameters are determined;
[0021] The posterior residual is calculated based on the plurality of state variables.
[0022] In one possible implementation, the preset filter is a Kalman filter.
[0023] In one possible implementation, the step of resolving the real-valued ambiguities of the plurality of satellites using a preset ambiguity fixing method to obtain the integer ambiguity of the first satellite includes:
[0024] The real-valued ambiguities of each of the multiple satellites are decorrelated.
[0025] The integer ambiguity of the first satellite is determined by integer least squares search for the real ambiguity of each of the multiple satellites after decorrelation.
[0026] In one possible implementation, the real-valued ambiguities of the plurality of satellites after decorrelated analysis are used to determine the integer ambiguity of the first satellite using integer least squares search, including:
[0027] Repeat the first operation as follows until the integer ambiguity of the first satellite is determined:
[0028] The real ambiguity of the candidate first satellite is selected from the real ambiguities of the plurality of satellites;
[0029] The real ambiguity of the candidate first satellite is searched by least squares to obtain the integer ambiguity of the candidate first satellite;
[0030] The bootstrapping success rate and the ratio test value are calculated based on the integer ambiguity of the candidate first satellite.
[0031] If both the bootstrapping success rate and the Ratio test value meet the preset conditions, the candidate first satellite is selected as the first satellite, and the integer ambiguity of the candidate first satellite is selected as the integer ambiguity of the first satellite; otherwise, the first operation continues.
[0032] In one possible implementation, the satellite computation process includes:
[0033] The LAMBDA algorithm is used to resolve the integer ambiguities of the real ambiguities of multiple satellites.
[0034] Secondly, embodiments of this application provide a satellite-based positioning device, comprising:
[0035] The acquisition unit is used to acquire the integer ambiguity of the first satellite and determine the real ambiguity of the second satellite that was discarded during the satellite resolution process.
[0036] The first determining unit is used to determine the integer ambiguity of the second satellite based on the real ambiguity of the second satellite;
[0037] The second determining unit is used to determine the location information of the electronic device used to receive signals from the satellite based on the integer ambiguity of the first satellite and the integer ambiguity of the second satellite.
[0038] In one possible implementation, the acquiring unit includes:
[0039] The acquisition module is used to acquire the real ambiguity of multiple satellites, and to process the real ambiguity of the multiple satellites using a preset ambiguity fixing method to obtain the integer ambiguity of the first satellite among the multiple satellites.
[0040] In one possible implementation, the first determining unit includes:
[0041] The first processing module is used to check the rounding of the real ambiguity of the second satellite;
[0042] The determination module is used to determine the integer ambiguity of the second satellite if the check result meets the preset conditions.
[0043] In one possible implementation, the first processing module includes:
[0044] The first determining submodule is used to determine whether the integration success rate of the second satellite meets the first preset threshold.
[0045] The second determining submodule is used to determine the integer ambiguity of the second satellite if the rounding success rate is greater than or equal to the first preset threshold, and to determine the posterior residual based on the obtained integer ambiguity.
[0046] If the posterior residual is less than or equal to the second preset threshold, then the check result meets the preset condition.
[0047] In one possible implementation, the second determining submodule includes:
[0048] Update the state parameter equation of the preset filter using the integer ambiguity of the second satellite;
[0049] Based on the updated state parameter equation of the preset filter, multiple state parameters are determined;
[0050] The posterior residual is calculated based on the plurality of state variables.
[0051] In one possible implementation, the preset filter is a Kalman filter.
[0052] In one possible implementation, the acquisition module includes:
[0053] The processing submodule is used to perform decorrelation processing on the real-valued ambiguities of the multiple satellites;
[0054] The third determination submodule is used to determine the integer ambiguity of the first satellite by using integer least squares search on the real ambiguity of each of the multiple satellites after decorrelation.
[0055] In one possible implementation, the third determining submodule includes:
[0056] Repeat the first operation as follows until the integer ambiguity of the first satellite is determined:
[0057] The real ambiguity of the candidate first satellite is selected from the real ambiguities of the plurality of satellites;
[0058] The real ambiguity of the candidate first satellite is searched by least squares to obtain the integer ambiguity of the candidate first satellite;
[0059] The bootstrapping success rate and the ratio test value are calculated based on the integer ambiguity of the candidate first satellite.
[0060] If both the bootstrapping success rate and the Ratio test value meet the preset conditions, the candidate first satellite is selected as the first satellite, and the integer ambiguity of the candidate first satellite is selected as the integer ambiguity of the first satellite; otherwise, the first operation continues.
[0061] In one possible implementation, the acquiring unit includes:
[0062] The second processing module is used to solve the integer ambiguity of the real ambiguity of multiple satellites using the LAMBDA algorithm.
[0063] Thirdly, embodiments of this application provide an electronic device, including: a memory and a processor;
[0064] The memory stores computer-executed instructions;
[0065] The processor executes computer execution instructions stored in the memory, causing the processor to perform the first aspect and / or various possible implementations of the first aspect as described above.
[0066] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the first aspect and / or various possible implementations of the first aspect.
[0067] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the first aspect and / or various possible implementations of the first aspect.
[0068] This application provides a satellite-based positioning method, apparatus, electronic device, storage medium, and program product. By acquiring the integer ambiguity of a first satellite and determining the real ambiguity of a second satellite discarded during satellite resolution processing, the method further determines the integer ambiguity of the second satellite based on its real ambiguity. Finally, based on the integer ambiguity of the first and second satellites, it determines the location information of the electronic device used to receive satellite signals. This significantly increases the number of available satellites for GNSS positioning, thereby improving the performance of ambiguity fixation and contributing to increased positioning reliability and accuracy. Attached Figure Description
[0069] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0070] Figure 1A flowchart illustrating a satellite-based positioning method provided in this application. Figure 1 ;
[0071] Figure 2 A flowchart illustrating a satellite-based positioning method provided in this application. Figure 2 ;
[0072] Figure 3 A schematic diagram of the structure of a satellite-based positioning device provided in this application;
[0073] Figure 4 This is a schematic diagram of the structure of an electronic device provided in this application.
[0074] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0075] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0076] First, let me explain the terms used in this application:
[0077] Ambiguity is a parameter in carrier phase measurement that represents the number of complete cycles of the carrier wave. Since the distance between a GNSS receiver and a satellite is determined by measuring the phase of the carrier signal, and phase measurements can involve multiple complete wavelengths, an integer parameter is needed to represent the number of these complete wavelengths; this parameter is ambiguity.
[0078] Inter-satellite single-difference carrier phase hardware delay refers to the time delay difference between different frequency signals in GNSS (Global Navigation Satellite System) due to the different propagation paths of signals within the satellite or receiver. This delay is usually caused by the characteristics of the hardware equipment of the satellite and receiver, such as antennas, cables, and signal processing units.
[0079] Receiver clock bias: refers to the difference between the receiver's clock and standard time (such as GPS time).
[0080] Satellite clock bias: refers to the difference between GPS satellite clock and GPS standard time.
[0081] Tropospheric oblique path delay parameter: refers to the signal delay of electromagnetic wave signals when passing through the unionized neutral atmosphere below 40km in GNSS positioning.
[0082] Slant path ionospheric delay: refers to the delay in the propagation path of a GNSS signal as it passes through the ionosphere due to the uneven distribution of electron density.
[0083] In the process of precise positioning using global satellite navigation systems, carrier phase observations are crucial for obtaining high-precision positioning. However, carrier phase observations face the problem of ambiguity resolution. During the ambiguity fixing process, due to issues such as the quality of observation data and the mismatch between the random model and the observation conditions, too much ambiguity may be eliminated. This results in the fixed logarithm of ambiguity failing to meet the filter update conditions, thus making it impossible to fix the ambiguity and affecting positioning accuracy.
[0084] In one example, this problem can be solved by modeling the ratio and dynamically adjusting the ratio threshold.
[0085] However, Ratio modeling is very complex, requiring extensive simulation of different observation scenarios. Furthermore, the results of Ratio modeling largely depend on the characteristics of the selected sample data. If simulation data is used alone, there will be significant differences between the results and the measured data, and it is currently impossible to stably control these differences within the target requirements, thus making it unsuitable for practical application.
[0086] This application provides a satellite-based positioning method, apparatus, and device, which aims to solve the aforementioned technical problems.
[0087] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0088] Figure 1 A flowchart illustrating a satellite-based positioning method provided in this application. Figure 1 ,like Figure 1 As shown, the method includes:
[0089] S101. Obtain the integer ambiguity of the first satellite and determine the real ambiguity of the second satellite that was discarded during the satellite resolution process.
[0090] For example, in GNSS (Global Navigation Satellite System) precise positioning, the known real ambiguities need to be fixed to integers using the LAMBDA (Least-squares AMBiguity Decorrelation Adjustment) algorithm. During the process of fixing the real ambiguities to integers, floating-point unambiguities that do not meet the preset conditions for bootstrapping success rate or ratio are eliminated. In the initial ambiguity vector composed of the known floating-point unambiguities, each floating-point unambiguity represents a satellite pair composed of satellites relative to the reference satellite. When too many satellite pairs are eliminated, or even less than 4 pairs, the effective satellite pairs cannot meet the positioning requirements. In this case, the ambiguity of the satellite retained during the ambiguity fixing process is retained as the integer ambiguity of the first satellite. The integer ambiguity of the first satellite includes the index of the floating-point unambiguity of the first satellite in the initial ambiguity vector, as well as the integer ambiguity obtained by rounding down the floating-point unambiguity of the first satellite.
[0091] Based on the initial ambiguity vector and the index of the floating-point deambiguity of the first satellite in the initial ambiguity vector, the floating-point deambiguity to be removed and its index in the initial ambiguity vector are determined. The removed floating-point deambiguity and its index in the initial ambiguity vector constitute the real ambiguity of the second satellite.
[0092] S102. Determine the integer ambiguity of the second satellite based on the real ambiguity of the second satellite.
[0093] For example, based on the real ambiguity of the second satellite, the rounding success rate and posterior residual check are performed on the real ambiguity of each satellite pair in the second satellite. If both the rounding success rate and the posterior residual check meet the preset threshold requirements, then the real ambiguity of the satellite pair meets the fixed solution requirement. The real ambiguity is then rounded. If either the rounding success rate or the posterior residual check does not meet the preset threshold requirements, then the real ambiguity of the satellite pair still does not meet the fixed solution requirement, and it is completely eliminated. The ambiguity of other satellite pairs in the second satellite is then checked. If the check is completed, the ambiguity of the satellite pairs that meet the rounding success rate and the posterior residual check is rounded to obtain the integer ambiguity of the second satellite.
[0094] S103. Determine the location information of the electronic device used to receive satellite signals based on the integer ambiguity of the first satellite and the integer ambiguity of the second satellite.
[0095] For example, the integer ambiguity of the second satellite is merged with the integer ambiguity vector of the first satellite according to its index, and then Kalman filtering is performed to update the sum to give the final fixed ambiguity solution. The location information of the electronic device receiving the satellite signal is determined based on the final fixed ambiguity solution.
[0096] This application provides a satellite-based positioning method that obtains the integer ambiguity of a first satellite, determines the integer ambiguity of a second satellite based on the real ambiguity of the second satellite, and determines the real ambiguity of the second satellite that was discarded during the satellite resolution process. Based on the integer ambiguity of the first and second satellites, the location information of the electronic equipment used to receive satellite signals is determined, which significantly increases the number of available satellites for GNSS positioning, thereby improving the performance of ambiguity fixation and helping to improve the reliability and accuracy of positioning.
[0097] Figure 2 A flowchart illustrating a satellite-based positioning method provided in this application. Figure 2 ,like Figure 2 As shown, in this embodiment... Figure 1 Based on the embodiments, a satellite-based positioning method is described in detail, which includes:
[0098] S201. Obtain the real ambiguity of multiple satellites, and use a preset ambiguity fixing method to resolve the real ambiguity of multiple satellites to obtain the integer ambiguity of the first satellite among the multiple satellites, and determine the real ambiguity of the second satellite that was discarded during the satellite resolution process.
[0099] In one example, step S201 includes the following steps:
[0100] The first step of step S201 is to perform decorrelation processing on the real ambiguity of each of the multiple satellites.
[0101] In the second step of step S201, the integer ambiguity of the first satellite is determined by integer least squares search for the real ambiguity of each of the multiple satellites after decorrelation.
[0102] In one example, the second step of step S201 is achieved through the following process:
[0103] Repeat the first operation as follows until the integer ambiguity of the first satellite is determined:
[0104] The real ambiguity of the candidate first satellite is selected from the real ambiguities of multiple satellites.
[0105] The real ambiguity of the candidate first satellite is searched by least squares to obtain the integer ambiguity of the candidate first satellite.
[0106] The Bootstrapping success rate and Ratio test value are calculated based on the integer ambiguity of the candidate first satellite.
[0107] If both the Bootstrapping success rate and the Ratio test value meet the preset conditions, the candidate first satellite is used as the first satellite, and the integer ambiguity of the candidate first satellite is used as the integer ambiguity of the first satellite; otherwise, the first operation continues.
[0108] In this process, the LAMBDA algorithm is used to solve the integer ambiguity for the real ambiguity of multiple satellites.
[0109] For example, by observing the carrier signals transmitted by multiple satellites through a GNSS receiver, multiple carrier phase observation values at the time of reception are obtained, a reference satellite is determined, and other satellites form satellite pairs with the reference satellite. The inter-satellite single-difference carrier phase observation values of each satellite pair are determined, and the inter-satellite single-difference ambiguity is determined according to the preset inter-satellite single-difference carrier phase observation model. The inter-satellite single-difference ambiguity with integer characteristics is determined according to the inter-satellite single-difference ambiguity, as shown in the following formula (1):
[0110] (1)
[0111] in, To provide inter-satellite single-difference ambiguity with integer characteristics that eliminates satellite clock bias and receiver clock bias; For the inter-satellite single-difference ambiguity determined based on the observation model, The inter-satellite single-difference carrier phase hardware delay is a known parameter. , The satellite index number, along with the integer-valued inter-satellite single-difference ambiguities of multiple satellite pairs, constitutes the ambiguity vector. Determine the corresponding variance-covariance matrix based on the ambiguity vector. .
[0112] For ambiguity vector Sum of variance-covariance matrix The correlation reduction process is performed as shown in formulas (2) and (3) below:
[0113] (2)
[0114] (3)
[0115] in, The decorrelation transformation matrix is given by a preset; The ambiguity vector before decorrelation. The variance-covariance matrix before reducing correlation, This is the ambiguity vector after decorrelation. This is the variance-covariance matrix after reducing correlation.
[0116] After completing the decorrelation, an integer least squares search for ambiguity is performed in the preset parameter space. For example, the SEVB (Solve Eliminate Value Branch) algorithm is used to perform a layer-by-layer search to obtain the optimal integer solution and the second-best integer solution of the ambiguity vector. The residual ratio of the optimal integer solution and the second-best integer solution is calculated according to the Ratio algorithm, where the residual is the difference between the floating-point solution and the integer solution of the inter-satellite single-difference ambiguity with integer characteristics.
[0117] Meanwhile, the Bootstrapping success rate of each inter-satellite single-difference ambiguity with integer characteristics is calculated as shown in the following formula (4):
[0118] (4)
[0119] in, For Bootstrapping success rate; For The ambiguity is fixed as a condition. One floating-point ambiguity parameter; This represents the corresponding standard deviation.
[0120] In one example, if both the Bootstrapping success rate and the Ratio test value meet the preset conditions, the single-difference ambiguity parameters of all satellite pairs are retained, and the satellite pairs are not removed.
[0121] In one example, if either the Bootstrapping success rate or the Ratio test value fails to meet the preset condition, then the variance-covariance matrix will be used to determine the outcome. For satellite pairs corresponding to the diagonal variance, the satellite pair with the largest variance is removed, and the other satellite pairs are retained as candidate first satellites. The real ambiguity of the candidate first satellite is selected from the real ambiguity of multiple satellites. The above least squares search and bootstrapping success rate test are repeated until there are no satellite pairs to be removed from the candidate first satellites.
[0122] The ambiguity of the candidate first satellite retained during the ambiguity fixing process is then retained as the integer ambiguity of the first satellite. The integer ambiguity of the first satellite includes the index of the floating-point solution ambiguity of the candidate first satellite in the ambiguity vector, as well as the optimal integer ambiguity vector solution output by the least squares search.
[0123] Based on the initial ambiguity vector And the floating-point unambiguity of the candidate first satellite in the initial ambiguity vector The index in the vector determines the floating-point unambiguity to be removed, and the position of that floating-point unambiguity in the initial ambiguity vector. The index in the vector, the removed floating-point unambiguity, and the index of the floating-point unambiguity in the initial ambiguity vector constitute the real ambiguity of the second satellite.
[0124] S202. Determine the integer ambiguity of the second satellite based on the real ambiguity of the second satellite.
[0125] In one example, step S202 includes the following steps:
[0126] The first step of step S202 is to check the rounding of the real ambiguity of the second satellite.
[0127] In the second step of step S202, if the check result meets the preset conditions, the integer ambiguity of the second satellite is determined.
[0128] In one example, the first step of step S202 is achieved through the following process:
[0129] Determine whether the success rate of the second satellite meets the first preset threshold;
[0130] If the rounding success rate is greater than or equal to the first preset threshold, determine the integer ambiguity of the second satellite, and determine the posterior residual based on the obtained integer ambiguity;
[0131] If the posterior residual is less than or equal to the second preset threshold, then the check result meets the preset condition.
[0132] The first step of step S202, "determining the posterior residual based on the obtained integer ambiguity," includes the following process:
[0133] The state parameter equations of the preset filter are updated using the integer ambiguities of the second satellite.
[0134] Based on the updated state parameter equations of the preset filter, multiple state parameters are determined.
[0135] The posterior residual is calculated based on multiple state variables.
[0136] The filter is a Kalman filter.
[0137] For example, after obtaining the real ambiguity of the second satellite, the success rate of rounding the real ambiguity of each satellite pair is calculated, as shown in the following formulas (5) and (6):
[0138] (5)
[0139] (6)
[0140] in, To increase the success rate of rounding; Let be the real number of ambiguity. for The ambiguity of integers after rounding; The mean square error of the real number ambiguity.
[0141] If the rounding success rate is greater than or equal to the first preset threshold, the real ambiguity of the satellite pair is rounded, and the Kalman filter is updated. The initial floating-point unambiguity in the original filter's state parameter equation is replaced with the integer ambiguity of the first satellite and the rounded real ambiguity of the satellite pair that meets the preset rounding success rate condition. Multiple state parameters determined by the Kalman filter based on the updated state parameter equation are obtained, including satellite clock bias. ; Tropospheric oblique path delay parameters (zenith wet delay is obtained after filter update) ; Estimated slant path ionospheric delay after filter update The non-differenced L1 ambiguity parameters estimated after filter update .
[0142] Based on the estimated results after filtering and updating, the residual of the non-differential carrier phase observation equation is constructed, as shown in the following formula (7):
[0143] (7)
[0144] For L1 non-differenced observation equations, the posterior residuals are (unit: weeks). L1 carrier phase observations (unit: meters); For the distance between the satellite and the ground.
[0145] If the posterior residual is less than or equal to the second preset threshold, the check result meets the preset condition, and the integer solution of the ambiguity of the satellite pair is determined by rounding, which is its integer ambiguity. If either the rounding success rate or the posterior residual check fails to meet the preset threshold, the ambiguity of the satellite pair is not recovered, and the above process continues to check the ambiguity of the next satellite pair in the second satellite until all satellite pairs in the second satellite have been checked. The ambiguity of all satellite pairs that pass the check is rounded, and the ambiguity of the rounded satellite pairs constitutes the integer ambiguity of the second satellite.
[0146] S203. Determine the location information of the electronic device used to receive satellite signals based on the integer ambiguity of the first satellite and the integer ambiguity of the second satellite.
[0147] For example, the integer ambiguity of the second satellite is merged with the integer ambiguity vector of the first satellite according to its index, and then Kalman filtering is performed to update the sum to give the final fixed ambiguity solution. The location information of the electronic device receiving the satellite signal is determined based on the final fixed ambiguity solution.
[0148] This application provides a satellite-based positioning method that obtains the real ambiguities of multiple satellites, resolves these ambiguities using a preset ambiguity fixing method, obtains the integer ambiguity of a first satellite, determines the real ambiguity of a second satellite discarded during the satellite resolution process, determines the integer ambiguity of the second satellite based on its real ambiguity, and determines the location information of the electronic device used to receive satellite signals based on the integer ambiguities of the first and second satellites. This significantly increases the number of available satellites for GNSS positioning, thereby improving the performance of ambiguity fixing and contributing to increased positioning reliability and accuracy.
[0149] Figure 3 A schematic diagram of a satellite-based positioning device provided in this application is shown below. Figure 3 As shown, the satellite-based positioning device 30 provided in this embodiment includes:
[0150] The acquisition unit 301 is used to acquire the integer ambiguity of the first satellite and determine the real ambiguity of the second satellite that was discarded during the satellite resolution process.
[0151] The first determining unit 302 is used to determine the integer ambiguity of the second satellite based on the real ambiguity of the second satellite;
[0152] The second determining unit 303 is used to determine the location information of the electronic device used to receive signals from the satellite based on the integer ambiguity of the first satellite and the integer ambiguity of the second satellite.
[0153] In one possible implementation, the acquisition unit 301 includes:
[0154] The acquisition module 3011 is used to acquire the real ambiguity of multiple satellites, and to process the real ambiguity of multiple satellites using a preset ambiguity fixing method to obtain the integer ambiguity of the first satellite among the multiple satellites.
[0155] In one possible implementation, the first determining unit 302 includes:
[0156] The first processing module 3021 is used to check the rounding of the real ambiguity of the second satellite;
[0157] The determination module 3022 is used to determine the integer ambiguity of the second satellite if the check result meets the preset conditions.
[0158] In one possible implementation, the first processing module 3021 includes:
[0159] The first determining submodule 30211 is used to determine whether the integration success rate of the second satellite meets the first preset threshold.
[0160] The second determining submodule 30212 is used to determine the integer ambiguity of the second satellite if the rounding success rate is greater than or equal to the first preset threshold, and to determine the posterior residual based on the obtained integer ambiguity.
[0161] If the posterior residual is less than or equal to the second preset threshold, then the check result meets the preset condition.
[0162] In one possible implementation, the second determining submodule 30212 includes:
[0163] Update the state parameter equation of the preset filter using the integer ambiguity of the second satellite;
[0164] Based on the updated state parameter equations of the preset filter, multiple state parameters are determined;
[0165] The posterior residual is calculated based on multiple state variables.
[0166] In one possible implementation, the preset filter is a Kalman filter.
[0167] In one possible implementation, the acquisition module 3011 includes:
[0168] Processing submodule 30111 is used to perform decorrelation processing on the real ambiguities of multiple satellites;
[0169] The third determining submodule 30112 is used to determine the integer ambiguity of the first satellite by using integer least squares search for the real ambiguities of the multiple satellites after decorrelation.
[0170] In one possible implementation, the third determining submodule 30112 includes:
[0171] Repeat the first operation as follows until the integer ambiguity of the first satellite is determined:
[0172] The real ambiguity of the candidate first satellite is selected from the real ambiguities of multiple satellites;
[0173] The real ambiguity of the candidate first satellite is searched by least squares to obtain the integer ambiguity of the candidate first satellite;
[0174] The bootstrapping success rate and ratio test value are calculated based on the integer ambiguity of the candidate first satellite.
[0175] If both the bootstrapping success rate and the Ratio test value meet the preset conditions, the candidate first satellite is taken as the first satellite, and the integer ambiguity of the candidate first satellite is taken as the integer ambiguity of the first satellite; otherwise, the first operation continues.
[0176] In one possible implementation, the acquisition unit 301 includes:
[0177] The second processing module 3012 is used to solve the integer ambiguity of the real ambiguity of multiple satellites using the LAMBDA algorithm.
[0178] This embodiment provides a satellite-based positioning device that can execute the methods provided in the above-described method embodiments. Its implementation principle and technical effects are similar, and will not be described in detail here.
[0179] Figure 4 This is a schematic diagram of the structure of an electronic device provided in this application. Figure 4 As shown, the electronic device 40 provided in this embodiment includes at least one processor 401 and a memory 402. Optionally, the device 40 further includes a communication component 403. The processor 401, memory 402, and communication component 403 are connected via a bus 404.
[0180] In a specific implementation, at least one processor 401 executes computer execution instructions stored in memory 402, causing at least one processor 401 to perform the above-described method.
[0181] The specific implementation process of processor 401 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0182] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0183] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0184] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0185] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0186] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.
[0187] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0188] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0189] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0190] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0191] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0192] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0193] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0194] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.
Claims
1. A satellite-based positioning method, characterized by, The method comprises the following steps: obtaining real number ambiguities of a plurality of satellites, performing calculation processing on the real number ambiguities of the plurality of satellites by using a preset ambiguity fixing method, obtaining integer number ambiguity of a first satellite among the plurality of satellites, and determining real number ambiguity of a second satellite which is discarded in the calculation processing of the satellites; checking rounding of the real number ambiguity of the second satellite; if the checking result satisfies a preset condition, determining integer number ambiguity of the second satellite; determining position information of an electronic device for receiving signals of satellites according to the integer number ambiguity of the first satellite and the integer number ambiguity of the second satellite.
2. The method of claim 1, wherein, The checking of rounding of the real number ambiguity of the second satellite comprises: determining whether a rounding success rate of the second satellite satisfies a first preset threshold value; if the rounding success rate is greater than or equal to the first preset threshold value, determining integer number ambiguity of the second satellite, and determining a posterior residual error according to the obtained integer number ambiguity; if the posterior residual error is less than or equal to a second preset threshold value, the checking result satisfies the preset condition.
3. The method of claim 2, wherein, The determination of the posterior residual error according to the obtained integer number ambiguity comprises: updating a state parameter equation of a preset filter by using the integer number ambiguity of the second satellite; determining a plurality of state parameters according to the updated state parameter equation of the preset filter; calculating the posterior residual error according to the plurality of state parameters.
4. The method of claim 3, wherein, The preset filter is a Kalman filter.
5. The method of claim 1, wherein, The calculation processing on the real number ambiguities of the plurality of satellites by using the preset ambiguity fixing method to obtain the integer number ambiguity of the first satellite comprises: performing decorrelation processing on the real number ambiguities of the plurality of satellites respectively; determining the integer number ambiguity of the first satellite by using integer least square search on the real number ambiguities of the plurality of satellites after the decorrelation.
6. The method of claim 5, wherein, The determination of the integer number ambiguity of the first satellite by using the integer least square search on the real number ambiguities of the plurality of satellites after the decorrelation comprises: repeatedly performing the following first operation until the integer number ambiguity of the first satellite is determined: selecting real number ambiguity of a candidate first satellite from the real number ambiguities of the plurality of satellites; performing least square search on the real number ambiguity of the candidate first satellite to obtain integer number ambiguity of the candidate first satellite; calculating bootstrapping success rate and Ratio test value according to the integer number ambiguity of the candidate first satellite; if the bootstrapping success rate and the Ratio test value both satisfy a preset condition, taking the candidate first satellite as the first satellite, and taking the integer number ambiguity of the candidate first satellite as the integer number ambiguity of the first satellite; otherwise, the first operation is continuously performed.
7. The method according to any one of claims 1 to 4, characterized in that, The calculation processing of the satellites comprises: performing calculation processing on the real number ambiguities of the plurality of satellites by using LAMBDA algorithm to calculate integer number ambiguity.
8. A satellite-based positioning device, characterized by The method comprises the following steps: An acquisition unit is configured to acquire real ambiguities of a plurality of satellites, perform calculation processing on the real ambiguities of the plurality of satellites using a preset ambiguity fixing method, obtain integer ambiguities of a first satellite among the plurality of satellites, and determine a real ambiguity of a second satellite that is discarded in the calculation processing on the satellites; A first determination unit is configured to check rounding of the real ambiguity of the second satellite; If the checking result satisfies a preset condition, the integer ambiguity of the second satellite is determined; A second determination unit is configured to determine position information of an electronic device for receiving signals of satellites according to the integer ambiguity of the first satellite and the integer ambiguity of the second satellite.
9. An electronic device, comprising: Comprise: A memory, a processor; The memory stores computer execution instructions; The processor executes the computer execution instructions stored in the memory, so that the processor executes the method in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer readable storage medium stores computer execution instructions, and the computer execution instructions are executed by the processor to implement the method in any one of claims 1-7.
11. A computer program product comprising a computer program which, when executed by a processor, implements the method of any one of claims 1-7.
Citation Information
Patent Citations
Partial ambiguity fixing algorithm considering observation value system errors
CN113466903A
Complete cycle ambiguity parallel filtering resolving method, device, equipment and storage medium
CN116660958A