Satellite navigation positioning method and device
By using single-difference GNSS sliding window optimization model and coarse deviation detection method of sliding window data in satellite navigation positioning, the ambiguity variable is determined and fixed, and the problem of undetected coarse deviation in historical observations has been solved in the prior art, and the positioning accuracy and reliability have been improved.
Patent Information
- Application Number
- CN202510183295.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-19
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2045-02-19
AI Technical Summary
In the prior art, the filtering method for satellite navigation positioning can only be predicted by the system state equation, and cannot effectively detect undetected coarse errors in historical observations, resulting in large errors in linearized points, pollution of prior information, and affecting positioning accuracy.
A satellite navigation positioning method is adopted to obtain GNSS observations, solve the calculation based on the single-difference GNSS sliding window optimization model, perform coarse deviation detection of sliding window data, determine the single-difference ambiguity variable, and obtain the floating point double-difference ambiguity through the single-difference between stars. Finally, fix it based on the partial ambiguity fixation method to realize the satellite navigation positioning of the fixed solution of GNSS.
The accuracy and reliability of satellite navigation positioning are improved, and the robustness is ensured in complex environments. Through the redundant processing of sliding window data and the utilization of graph optimization structure, the missing outliers are effectively corrected and the stability of positioning is enhanced.
Smart Images

Figure CN119644386B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of satellite navigation and positioning technology, and in particular to a satellite navigation and positioning method and device. Background Art
[0002] The Global Navigation Satellite System (GNSS) has been widely used in a variety of scenarios such as sea, land and air. For a long time, GNSS positioning models have mostly been Kalman Filter (EKF) and its variants such as Extended Kalman Filter (EKF), Invariant Kalman Filter (InEKF), Unscented Kalman Filter (UKF), etc. The positioning model in open scenes has been relatively mature and can provide high-precision, high-reliability, and full-time absolute position information for different navigation systems. However, GNSS signals in complex scenes are easily blocked or reflected by buildings, multipath and non-line-of-sight signals are serious, gross errors and cycle slips occur frequently, and the accuracy and reliability of GNSS positioning cannot be guaranteed. Due to its own structural limitations, the filtering method can only make a one-step prediction through the system state equation (Dynamic Model), and transmit historical observation information to subsequent epochs in the form of prior information. Therefore, the state linearization point corresponding to the transmitted historical observation will be fixed. When there are undetected gross errors in historical observations, the linearization point error is large, which can easily lead to contamination of the prior information and thus affect the positioning accuracy.
[0003] Therefore, it is urgent to propose a satellite navigation positioning method and device to solve the technical problem that the filtering method for positioning in the prior art can only be predicted through the system state equation. When there are undetected gross errors in historical observations, the linearization point error is large, which can easily lead to contamination of prior information, thereby affecting the positioning accuracy. Summary of the invention
[0004] In view of this, it is necessary to provide a satellite navigation positioning method and device to solve the technical problem that the filtering method for positioning in the prior art can only be predicted through the system state equation. When there are undetected gross errors in historical observations, the linearization point error is large, which can easily lead to contamination of prior information, thereby affecting the positioning accuracy.
[0005] In order to solve the above problems, the present invention provides a satellite navigation positioning method, comprising:
[0006] Get GNSS observations;
[0007] The GNSS observations are solved based on the single-difference GNSS sliding window optimization model to obtain the floating-point solution of the corresponding positioning result;
[0008] Performing gross error detection on the GNSS observation value based on the sliding window data to obtain a test result;
[0009] When the test result is that the test is passed, determining a single difference ambiguity variable according to a floating point solution, and performing inter-satellite single difference on the single difference ambiguity variable to obtain a floating point double difference ambiguity;
[0010] The floating point double difference ambiguity is fixed based on the partial ambiguity fixing method to obtain the GNSS fixed holding solution and complete the satellite navigation positioning.
[0011] In a possible implementation, before solving the GNSS observation value based on the single-difference GNSS sliding window optimization model to obtain a floating-point solution corresponding to the positioning result, the method further includes:
[0012] Marginalizing the GNSS observation value according to the sliding window to obtain a marginalization prior factor;
[0013] Performing inter-station single difference on the GNSS observation values according to the satellite common view relationship between the reference station and the mobile station to obtain a single difference observation factor;
[0014] Constraining the position variables of adjacent epochs in the GNSS observations according to the joint speed measurement results of the inter-epoch difference model to obtain a speed constraint factor;
[0015] A single-difference GNSS sliding window optimization model is constructed according to the marginalization prior factor, the single-difference observation factor and the speed constraint factor.
[0016] In a possible implementation, the performing gross error detection on the GNSS observation value based on the sliding window data to obtain a test result includes:
[0017] Processing the GNSS observation values according to the sliding window to obtain posterior residuals;
[0018] Normalizing the posterior residual to obtain a corresponding residual vector;
[0019] All residual vectors are processed and tested to obtain test results.
[0020] In a possible implementation, the processing and testing of all residual vectors to obtain a test result includes:
[0021] Calculating all the residual vectors and the observed value covariance matrix to obtain a chi-square test value;
[0022] Determine whether the chi-square test value is greater than a gross error threshold;
[0023] If yes, all the residual vectors are judged based on the greedy search method and the threshold to obtain all the residual vectors;
[0024] If not, the inspection result is determined to be inspection passed.
[0025] In a possible implementation, judging all the residual vectors based on a greedy search method and a threshold to obtain all the residual vectors includes:
[0026] Processing all the residual vectors based on the greedy search method to obtain the maximum residual corresponding to each epoch;
[0027] Judging each maximum residual based on the threshold, and judging whether each maximum residual is less than a first residual value in the threshold;
[0028] If not, the test result is determined to be not passed, and the corresponding maximum residual is preliminarily processed, solved and residual tested to obtain a test result;
[0029] If so, the test result is confirmed to be passed.
[0030] In a possible implementation manner, performing inter-satellite single difference on the single-difference ambiguity variable to obtain a floating-point double-difference ambiguity includes:
[0031] Determining a vector covariance matrix according to the single-difference ambiguity variable;
[0032] Performing inter-satellite single difference on the single difference ambiguity variable and the vector covariance matrix to obtain floating point double difference ambiguity and covariance;
[0033] The method of fixing the floating point double difference ambiguity based on the partial ambiguity fixing method to obtain a GNSS fixed holding solution and complete satellite navigation positioning includes:
[0034] Processing the floating point double difference ambiguity and the covariance based on a partial ambiguity fixing method to obtain an optimal solution and a suboptimal solution;
[0035] Performing a ratio value test on the optimal solution and the suboptimal solution, and when the test result is passed, obtaining an integer ambiguity and setting a solution mode;
[0036] When the solution mode is the fixed hold mode, a GNSS fixed hold solution is obtained according to the floating point solution and the integer ambiguity.
[0037] In a possible implementation, obtaining a GNSS fixed hold solution according to the floating point solution and the integer ambiguity includes:
[0038] According to the floating point solution, a fixed vector is obtained;
[0039] Filtering the integer ambiguity according to the fixed vector to obtain a target ambiguity;
[0040] constructing a strong constraint based on a fixed holding factor and the target ambiguity;
[0041] According to the single-difference GNSS sliding window optimization model and the strong constraint, a GNSS fixed hold solution is obtained.
[0042] In a possible implementation, after setting the solution mode, the method further includes:
[0043] When the solution mode is the update mode, the floating point solution of the current epoch in the GNSS observation value is determined as the GNSS transfer solution.
[0044] In a possible implementation manner, after obtaining the GNSS observation value, the method further includes:
[0045] Detecting the GNSS observation value according to a prior gross error detection method and a cycle slip detection method to obtain a detection observation value;
[0046] The ambiguity arc is segmented according to the cycle slip information of each detection observation value to obtain the corresponding GNSS observation value.
[0047] On the other hand, the present invention also provides a satellite navigation positioning device, comprising:
[0048] An observation value acquisition module is used to obtain GNSS observation values;
[0049] The floating-point solution calculation module calculates the GNSS observation values based on the single-difference GNSS sliding window optimization model to obtain the floating-point solution of the corresponding positioning result;
[0050] A verification and determination module, used to perform gross error detection on the GNSS observation value based on the sliding window data to obtain a verification result;
[0051] a variable determination module, configured to determine a single-difference ambiguity variable according to a floating-point solution when the test result is a test pass, and perform inter-satellite single difference on the single-difference ambiguity variable to obtain a floating-point double-difference ambiguity;
[0052] The ambiguity fixing module is used to fix the floating point double difference ambiguity based on the partial ambiguity fixing method, obtain the GNSS fixed holding solution, and complete the satellite navigation positioning.
[0053] The beneficial effects of the present invention are as follows: GNSS observation values are obtained; then the GNSS observation values are solved based on a single-difference GNSS sliding window optimization model to obtain a floating-point solution corresponding to the positioning result; the sparsity of the matrix in the graph optimization problem is guaranteed based on the single-difference GNSS sliding window optimization model; further, gross error detection is performed on the GNSS observation values based on the sliding window data to obtain a test result, thereby ensuring the robustness of the algorithm in a complex environment; when the test result is that the test passes, the single-difference ambiguity variable is determined according to the floating-point solution, and the single-difference ambiguity variable is subjected to inter-satellite single difference to obtain a floating-point double-difference ambiguity; the floating-point double-difference ambiguity is fixed based on the partial ambiguity fixing method, thereby realizing the satellite navigation positioning process of the GNSS fixed hold solution (Hold solution) under the graph optimization model, thereby improving the accuracy and reliability of the satellite navigation positioning. BRIEF DESCRIPTION OF THE DRAWINGS
[0054] Figure 1 A schematic diagram of a flow chart of an embodiment of the satellite navigation positioning method provided by the present invention;
[0055] Figure 2 For the present invention Figure 1 A schematic diagram of an embodiment flow chart before step S102;
[0056] Figure 3 A schematic diagram of the structure of an embodiment of the single-difference GNSS sliding window optimization model provided by the present invention;
[0057] Figure 4 For the present invention Figure 1 A schematic flow chart of an embodiment of step S103;
[0058] Figure 5 A schematic diagram of the structure of an embodiment of the window data gross error detection algorithm provided by the present invention;
[0059] Figure 6 A schematic diagram of an embodiment of the overall structure of a high-precision robust algorithm for GNSS sliding window optimization provided by the present invention;
[0060] Figure 7 A schematic structural diagram of an embodiment of the satellite navigation and positioning device provided by the present invention. DETAILED DESCRIPTION
[0061] The preferred embodiments of the present invention are described in detail below in conjunction with the accompanying drawings, wherein the accompanying drawings constitute a part of this application and are used together with the embodiments of the present invention to illustrate the principles of the present invention, but are not used to limit the scope of the present invention.
[0062] like Figure 1 As shown, a specific embodiment of the present invention discloses a satellite navigation positioning method, including:
[0063] S101, obtaining GNSS observation values;
[0064] S102, solving the GNSS observation value based on the single-difference GNSS sliding window optimization model to obtain a floating-point solution corresponding to the positioning result;
[0065] S103, performing gross error detection on the GNSS observation values based on the sliding window data to obtain a test result;
[0066] S104. When the test result is that the test is passed, a single-difference ambiguity variable is determined according to the floating-point solution, and the single-difference ambiguity variable is subjected to inter-satellite single difference to obtain a floating-point double-difference ambiguity;
[0067] S105. Fix the floating-point double-difference ambiguity based on the partial ambiguity fixation method to obtain the GNSS fixed solution and complete the satellite navigation positioning.
[0068] It should be understood that: applied to the Global Satellite Navigation System (GNSS), the GNSS observation value of step S101 is obtained from the satellite. The GNSS system obtains the observation value by receiving the signal transmitted by the satellite. These signals contain the satellite's position information and other relevant data. Specifically, the GNSS receiver receives the signal from the satellite through the antenna, measures the propagation time of the signal, and calculates the position of the observation station using the triangulation method or mathematical model. Due to the influence of the earth's atmosphere and ionosphere on the propagation of satellite signals, data processing and correction are also required to ensure the accuracy and reliability of the position calculation. The embodiment of the present invention can process the received GNSS observation values, thereby improving the ambiguity fixation rate and positioning accuracy of the global satellite navigation system.
[0069] Factor graph is a kind of probabilistic graph model, which is an undirected bipartite graph with two types of nodes: factor nodes encode cost function , variable nodes encode variables to be estimated X , while the edges represent the correlation between functions and variables, and the factor graph represents an optimization problem concisely and intuitively. For any optimization problem represented by a factor graph, it can be solved according to the Maximum A Posteriori Estimate (MAP) criterion. The maximum posterior estimate can be reduced to maximizing the product of all factor nodes, as shown in formula (1):
[0070] (1)
[0071] In practical problems, the true probability density function of the variable is complex and difficult to obtain, and is usually assumed to be a Gaussian distribution, so all factors have the form shown in formula (2):
[0072] (2)
[0073] In the formula, represents the measurement matrix, represents the observation vector, is the corresponding covariance matrix;
[0074] According to the functional form in formula (2), the maximum a posteriori estimation problem represented by formula (1) can be transformed into a least squares problem, as shown in formula (3):
[0075] (3)
[0076] The above are the basic concepts of factor graphs.
[0077] In a specific embodiment of the present invention, GNSS observation values can be acquired in real time, so that GNSS observation values of each epoch can be obtained, and then the GNSS observation values can be pre-verified, and the GNSS observation values can be solved by a single-difference GNSS sliding window optimization model to obtain a floating-point solution of the positioning result of the GNSS observation values, wherein the positioning result also includes a fixed solution, and the GNSS observation values can be subjected to gross error detection by redundant sliding window data of the sliding window to obtain a test result. If the test result is that the test passes, the single-difference ambiguity variable can be determined according to the floating-point solution, and the single-difference ambiguity variable can be subjected to inter-satellite single difference to obtain a floating-point double-difference ambiguity, and then the floating-point double-difference ambiguity can be fixed according to the partial ambiguity fixing method, and a fixed holding factor is added to obtain a GNSS fixed holding solution (Hold solution).
[0078] Compared with the prior art, the present embodiment provides the method of obtaining GNSS observation values; then solving the GNSS observation values based on a single-difference GNSS sliding window optimization model to obtain a floating-point solution corresponding to the positioning result; the single-difference GNSS sliding window optimization model ensures the sparsity of the matrix in the graph optimization problem; further, gross error detection is performed on the GNSS observation values based on the sliding window data to obtain a test result, thereby ensuring the robustness of the algorithm in a complex environment; when the test result is that the test passes, the single-difference ambiguity variable is determined according to the floating-point solution, and the single-difference ambiguity variable is subjected to inter-satellite single difference to obtain a floating-point double-difference ambiguity; the floating-point double-difference ambiguity is fixed based on the partial ambiguity fixing method, thereby realizing the satellite navigation positioning process of the GNSS fixed hold solution (Hold solution) under the graph optimization model, thereby improving the accuracy and reliability of the satellite navigation positioning.
[0079] In some embodiments of the present invention, step S101 includes:
[0080] Detect GNSS observation values according to the pre-verification gross error detection method and the cycle slip detection method to obtain detection observation values;
[0081] The ambiguity arc is segmented according to the cycle slip information of each detection observation value to obtain the corresponding GNSS observation value.
[0082] In a specific embodiment of the present invention, after obtaining the GNSS observation values, the GNSS observation values can be pre-verified for gross error detection and cycle slip detection by using a priori gross error detection method and cycle slip detection method. Specifically, some simple and effective indicators can be applied, including cut-off altitude angle / signal-to-noise ratio and consistency check, to eliminate obvious outliers and obtain detection observation values. Subsequently, the TurboEdit method is used as a priori cycle slip detection method, and then the ambiguity arc segment of each detection observation value can be segmented based on the prior cycle slip detection method and the cycle slip information of each detection observation value to obtain the corresponding GNSS observation value.
[0083] In some embodiments of the present invention, Figure 2 As shown, before step S102, the following steps are also included:
[0084] S201, marginalizing the GNSS observation value according to the sliding window to obtain a marginalization prior factor;
[0085] S202, performing inter-station single difference on the GNSS observation values according to the satellite common view relationship between the reference station and the mobile station to obtain a single difference observation factor;
[0086] S203, constraining the position variables of adjacent epochs in the GNSS observation values according to the joint speed measurement results of the inter-epoch difference model to obtain a speed constraint factor;
[0087] S204: construct a single-difference GNSS sliding window optimization model based on the marginalization prior factor, the single-difference observation factor and the speed constraint factor.
[0088] In a specific embodiment of the present invention, as GNSS observations are continuously added, the graph size will inevitably continue to grow, resulting in a decrease in optimization efficiency. x To balance the efficiency and accuracy of the solution, when the data length exceeds the window length, the oldest epoch will be deleted. m The corresponding observation In order to avoid the loss of historical information caused by direct deletion, The relevant variables are recorded as ,exist The marginalization operation is performed on the corresponding subgraph, as shown in formula (4):
[0089] (4)
[0090] In the formula, represents the Mahalanobis norm, is the corresponding covariance matrix. The normal equation corresponding to formula (4) is shown in formula (5):
[0091] (5)
[0092] In the formula, is the information matrix corresponding to the parameters, and its inverse matrix is the covariance matrix. , They represent the local functions in the factorization of the global function. Using Schur complement elimination, we can Solving the distribution, we get , where, as shown in formula (6):
[0093] (6)
[0094] Note that the linearization point of the distribution corresponding to marginalization is , in the next optimization The value of has changed and needs to be updated. The updated prior distribution is as shown in formula (7). After marginalization is completed, formula (7) can be used as the variable The prior constraints (prior information) of are added to the marginalized prior factors (i.e., marginalized prior factors) to retain the corresponding historical information. However, the marginalized variables in the prior information The corresponding linearization point is fixed, so it will cause a certain degree of accuracy loss, as shown in formula (7), h M represents the covariance matrix of Gaussian noise, k represents the time subscript, epoch, and then obtains the marginalization prior factor :
[0095] (7)
[0096] The factors in the factor graph represent the cost functions corresponding to the independent GNSS observations. If there are GNSS observations with large dimensions, it is necessary to add a high-dimensional dense covariance matrix to the graph, which seriously reduces the sparsity of the optimization problem and affects the efficiency of the solution. Since the double difference model adopted by most existing real-time dynamic difference models will lead to cross-correlation between GNSS observations, the embodiment of the present invention adopts the single difference model between stations based on the sliding window optimization. The graph structure is as follows: Figure 3 As shown, the hollow circle represents the single-difference pseudorange factor, the black circle represents the single-difference phase factor, the hollow square represents the velocity constraint factor, the black square represents the Hold factor, and the hexagon represents the marginalization prior factor. Figure 3 The corresponding state space is shown in formula (8):
[0097] (8)
[0098] In the formula, represents the state space to be estimated, n represents the sliding window length, k Indicates the sequence number of the epoch in the window, Indicates k Variables to be estimated for the epoch, including position variables and the uneliminated single-difference receiver clock error vector , Denotes the single difference ambiguity. Directly estimating the single difference ambiguity can effectively deal with the problem of frequent changes of reference stars in complex scenes.
[0099] At the same time, due to the working principle of GNSS receivers, the ambiguity should be the same constant, that is, the arc segment, when there is no interruption, loss of lock, or cycle slip. Figure 3 As shown, based on this ambiguity characteristic, the embodiment of the present invention introduces an arc structure into the graph structure. Specifically, the same ambiguity of the same satellite and the same frequency is estimated as a variable to maximize the advantages of the graph optimization structure and enhance the correlation between the epochs before and after the observation value.
[0100] According to the satellite common view relationship between the reference station and the mobile station, the single difference observation equation can be obtained by performing single difference between the non-differenced original observation values as shown in formula (9):
[0101] (9)
[0102] In the formula, represents the single difference operator between stations, f Indicates frequency, λ f represents the weight of the observed factor, and Satellite i At the frequency point f The single-difference pseudorange and single-difference carrier observations on represents the geometric distance from the single-difference satellite to the receiver. Therefore, the cost function corresponding to the single-difference observation value can be obtained as shown in formula (10):
[0103] (10)
[0104] In the formula, h P represents the squared difference between the predicted value and the observed value, and h L Represents the absolute difference between the predicted value and the observed value. According to formula (10), the single difference observation factor can be obtained and .
[0105] Since the observation model is consistent, the factor form of multi-frequency and multi-system data is the same, and only the clock errors corresponding to different satellite systems need to be connected. At the same time, in order to ensure the generalizability of the model of the embodiment of the present invention, the original Doppler observation value is not directly integrated as the speed constraint, but the joint speed measurement result of the Doppler or epoch difference model is used. Constrain the position variables of adjacent epochs, and the cost function is shown in formula (11): h V Used to express the constraint relationship between adjacent epoch position variables, the velocity constraint factor can be obtained :
[0106] (11)
[0107] Combining the above marginalization prior factors with the single-difference observation factor and the speed constraint factor, the objective function of the single-difference GNSS sliding window optimization model of the main optimizer in the embodiment of the present invention is shown in formula (12):
[0108] (12)
[0109] Furthermore, the GNSS observations can be input into the single-difference GNSS sliding window optimization model, so that the floating-point solution of the GNSS observations can be obtained through formula (12): .
[0110] In some embodiments of the present invention, Figure 4 As shown, step S103 includes:
[0111] S401, processing the GNSS observation values respectively according to the sliding window to obtain the post-verification residual;
[0112] S402, normalizing the post-test residual to obtain a corresponding residual vector;
[0113] S403: Process and test all residual vectors to obtain test results.
[0114] In a specific embodiment of the present invention, in complex urban scenes, multipath effects and non-line-of-sight signals occur frequently, seriously affecting positioning accuracy and reliability. Therefore, after completing the optimization of formula (12), the embodiment of the present invention designs a complete set of data quality control methods based on window data. In the posterior test part, the filter-based method can only test the outliers of the current epoch, because the historical measurement values are propagated as prior values through the dynamic model, and these measurement values are no longer stored after the prediction step. Therefore, once a gross error that cannot be detected by the current epoch occurs, the prior information is likely to be contaminated. Since the filter-based structure cannot access the historical measurement values, the contaminated prior information is irreparable. Therefore, incorrect prior information will cause deviations in the linearization point, reducing the positioning reliability of subsequent epochs. For this reason, in the sliding window optimization structure, all historical measurement data in the sliding window will be stored and accessed, and the linearization point will change with each iteration. Even if there are missed outliers, the deviation is more controllable. The reason is that through structural correlation and subsequent observations, the linearization point of the deviation can still be corrected and the missed outliers can be detected. With redundant data and repeated linearization of graph optimization, the window-based method is able to re-check missed gross errors within the sliding window multiple times and potentially correct missed inspection results.
[0115] like Figure 5 As shown, the window data gross error detection algorithm designed in the embodiment of the present invention includes a pre-test and a post-test, and the specific process is as follows:
[0116] Step 1, a priori test. In the a priori test part, some simple and effective indicators, including cut-off elevation angle / signal-to-noise ratio and consistency check, are applied to remove obvious outliers. Subsequently, the TurboEdit method is adopted as the a priori cycle slip detection method, and then the ambiguity arc of each detection observation can be segmented based on the a priori cycle slip detection method and the cycle slip information of each detection observation.
[0117] In some embodiments of the present invention, step S403 includes:
[0118] Calculate all residual vectors and observation covariance matrices to obtain the chi-square test value;
[0119] Determine whether the chi-square test value is greater than the gross error threshold;
[0120] If so, all residual vectors are judged based on the greedy search method and threshold to obtain all residual vectors;
[0121] If not, the test result is determined to be passed.
[0122] In a specific embodiment of the present invention, step 2, residual extraction. Formula (12) is used to perform graph optimization, and the posterior residual observed in the window is extracted through the optimized result to obtain the posterior residual, and the posterior residual is normalized to obtain the residual vector to obtain formula (13):
[0123] (13)
[0124] In the formula, represents the residual vector of all epoch observations in the window, Indicates the window k The residual vector of epochs. The Chi-square Test is constructed for the residual vector, as shown in formula (14):
[0125] (14)
[0126] In the formula, represents the covariance matrix of the observations, and is , degrees of freedom q, set the gross error threshold , when the chi-square test T When the error is less than or equal to the gross error threshold, the test result is determined to be passed; when the chi-square test quantity T When it is greater than the gross error threshold, proceed to the next step.
[0127] In some embodiments of the present invention, all residual vectors are judged based on a greedy search method and a threshold to obtain all residual vectors, including:
[0128] All residual vectors are processed based on the greedy search method to obtain the maximum residual corresponding to each epoch;
[0129] Judging each maximum residual based on the threshold, judging whether each maximum residual is less than the first residual value in the threshold;
[0130] If not, the test result is determined to be not passed, and the corresponding maximum residual is preliminarily processed, solved and residual tested to obtain the test result;
[0131] If yes, the test result is confirmed as passed.
[0132] In a specific embodiment of the present invention, step 3, gross error identification. In the post-test part, the traditional greedy search algorithm assumes that only one measurement value (i.e., the measurement value with the largest standardized residual) is contaminated in each iteration, which does not match the large number of measurements in the window, resulting in too many iterations. Therefore, in order to adapt to the window data and meet the real-time requirements, the embodiment of the present invention modifies the assumption of the greedy search algorithm and assumes that there is at most one outlier in each epoch in the sliding window.
[0133] Step 4: Eliminate gross errors. After selecting the maximum residual of each epoch through the improved greedy search, a post-test is performed through the threshold (IGGⅢ standard), as shown in formula (15):
[0134] (15)
[0135] Determine whether each maximum residual is less than the first residual value in the threshold If so, the test passes, that is, if all residuals are less than , then the measurement result is considered to have no abnormal value, and the floating point solution of this epoch is output. If not, the test fails. If the residual is within the first residual value and the second residual value When the first residual value is less than the second residual value, according to the recognition result in step 3, the information matrix of the corresponding factor is multiplied by To adjust the weight. When the residual is greater than the second residual value , the pseudorange factors will be removed from the graph, the carrier phase factors will be treated as cycle slips, and the arc segment division will be updated to make full use of the carrier phase measurements, and the optimization will be re-optimized until no outliers are detected.
[0136] Further, when the test result is that the test passes, the single-difference ambiguity variable directly related to the current epoch is selected from the output floating-point solution.
[0137] In some embodiments of the present invention, step S104 includes:
[0138] Determine the vector covariance matrix based on the single-difference ambiguity variables;
[0139] Perform intersatellite single difference on the single difference ambiguity variables and vector covariance matrix to obtain floating point double difference ambiguity and covariance;
[0140] Step S105 includes:
[0141] Based on the partial ambiguity fixing method, the floating point double difference ambiguity and covariance are processed to obtain the optimal solution and the suboptimal solution;
[0142] The optimal solution and the suboptimal solution are tested for ratio values. When the test result is passed, the integer ambiguity is obtained and the solution mode is set.
[0143] When the solution mode is fixed hold mode, the GNSS fixed hold solution is obtained based on the floating point solution and integer ambiguity.
[0144] In a specific embodiment of the present invention, for GNSS ambiguity resolution, when there are many ambiguities and the observation conditions are poor, all ambiguities cannot be fixed in a single epoch, and partial ambiguities can be fixed according to certain indicators to provide high-precision positioning results. As a means of balancing accuracy and ambiguity fixation performance, the embodiment of the present invention combines the Partial Ambiguity Resolution (PAR) method on the sliding window optimization framework, that is, only part of all ambiguities are finally resolved as integer values, and the algorithm as a whole is independent of the main optimizer.
[0145] At the same time, the fixed hold mode in the ambiguity fixing algorithm can significantly improve the ambiguity fixing performance in most scenarios. In the filtering framework, the fixed hold mode is to filter out the ambiguities that meet the fixed hold conditions based on the ambiguity fixing information, and then impose strong constraints on the corresponding variables in the filtering prior information for fixed hold. However, graph optimization does not have the structure of prior information, so it is impossible to copy the implementation method of the fixed hold mode in filtering. To solve this problem, the embodiment of the present invention designs a fixed hold mode that conforms to the graph optimization structure to further enhance the positioning accuracy of GNSS under graph optimization. The implementation steps are as follows:
[0146] Step 1: After the main optimizer outputs the floating point solution of the state in the window, select the current epoch position and clock error state , and the single-difference ambiguity state directly associated with the current epoch , and calculate the vector covariance matrix corresponding to the group of state vectors;
[0147] Step 2: Sort the single-difference ambiguity variables according to the altitude index. To eliminate the clock error fixed bias in the inter-station single-difference ambiguity, the reference star can be reselected to perform inter-satellite single difference to obtain the floating point double-difference ambiguity. and covariance, as shown in formula (16):
[0148] (16)
[0149] In the formula, represents the intersatellite single difference operator, and is the floating point solution corresponding to the single difference between stations output after optimization of formula (12), and is the converted double difference floating point solution.
[0150] Step 3: Input the floating point covariance into the classic LAMBDA method to search and obtain the optimal and suboptimal solutions of the integer ambiguity. Use statistical hypothesis testing to test the correctness of the ambiguity fixation. If the test passes, the integer ambiguity is output. If the test fails, they will be eliminated in order of altitude angle and searched again.
[0151] Step 4: If the solution mode is the update mode, the floating point solution can be updated and directly output. The algorithm flow ends here. The ambiguity fixing algorithm does not need to provide feedback to the main optimizer, as shown in formula (17):
[0152] (17)
[0153] In the formula and denote floating point solutions and fixed solutions respectively, and They represent the unfixed part and the fixed part in the PAR algorithm respectively.
[0154] Step 5: Before starting work, the solution mode can be set according to the actual situation. When the solution mode is the fixed hold mode, the GNSS fixed hold solution is obtained based on the floating point solution and integer ambiguity.
[0155] In some embodiments of the present invention, obtaining a GNSS fixed hold solution according to a floating point solution and integer ambiguities includes:
[0156] According to the floating point solution, a fixed vector is obtained;
[0157] The integer ambiguities are screened according to the fixed vector to obtain the target ambiguity;
[0158] Construct strong constraints based on fixed retention factors and target ambiguity;
[0159] According to the single-difference GNSS sliding window optimization model and strong constraints, the GNSS fixed hold solution is obtained.
[0160] In a specific embodiment of the present invention, if the solution mode is the fixed holding mode, then the fixed vector is obtained by formula (17): Then, the target ambiguity that meets the fixed holding condition is selected. A fixed retention factor is designed and fed back to the main optimizer in the form of relative constraints to construct the single-difference ambiguity variable of the meteor. The single difference ambiguity variable with the reference star Strong constraints between :
[0161] (18)
[0162] Through the graph structure with strong epoch correlation, the fixed hold factor can constrain the position variables of all epochs in the main optimizer window, improve positioning accuracy and robustness, and enhance ambiguity fixation performance. The single-difference GNSS sliding window optimization model is optimized through strong constraints. The objective function of the main optimizer in the fixed hold mode is shown in formula (19):
[0163] (19)
[0164] Then, the GNSS fixed hold solution (Hold solution) can be output through formula (19).
[0165] In a specific embodiment of the present invention, when the solution mode is the transfer mode, the GNSS transfer solution (Continuous solution) can be obtained by directly fixing the floating point solution of the current epoch in the GNSS observation value.
[0166] Further, in a specific embodiment, Figure 6 As shown in the figure, after obtaining the GNSS observations, the graph optimization is used as the estimator, and the pseudorange / carrier phase / Doppler observations are used to realize the real-time dynamic differential positioning of the single difference between stations, and the sliding window is realized through marginalization to balance the solution efficiency and the retention of historical information. Then the gross error detection and elimination are carried out before verification, and then the joint speed measurement results of the Doppler or epoch difference model are used. , a single-difference GNSS sliding window optimization model (i.e., an inter-station single-difference model) is constructed, and a floating-point solution is calculated through the objective function of the single-difference GNSS sliding window optimization model, including velocity constraint factors, observation factors (including pseudorange factors and phase factors), and prior factors (i.e., marginalized prior factors), so as to complete the optimization process of the factor graph. Then, the GNSS observation values are subjected to window gross error detection through the window data gross error detection algorithm, and a chi-square test value is constructed. When the chi-square test value is less than or equal to the gross error threshold, the test result is determined to be passed, and the floating-point solution of the factor graph optimization is output; when the chi-square test value is greater than the gross error threshold, the two steps can be performed simultaneously.
[0167] The first step is to adapt the window size. Graph optimization can obtain the highest theoretical accuracy by iteratively updating all historical information at the same time, but it will lead to too low computational efficiency and seriously affect the real-time performance of the algorithm. Setting a sliding window is a compromise strategy between computational efficiency and theoretical accuracy. However, setting the same window size for all scenes will increase unnecessary computational burden. Therefore, the embodiment of the present invention further designs an adaptive window size strategy based on the sliding window, adaptively adjusts the window length according to the observation conditions, and adopts a small window size for scenes with a large number of valid observations and a small number of gross errors to maximize the computational efficiency of the algorithm; and adopts a larger window size for scenes with a small number of valid observations or a large number of gross errors to improve the accuracy and robustness of the algorithm through data redundancy and correlation between epochs. The specific process of the method is as follows:
[0168] 1. After completing the data quality control based on the window data in the previous step, the total number of observations in the window is recorded as r , the condition number in the window is t , the number of detected gross errors is recorded as c, the window size is recorded as l, and the total number of valid redundant observations in the window can be calculated , the average number of redundancies in the window , and the average gross error number within the window As shown in formula (20):
[0169] (20)
[0170] 2. Divide the data into three categories according to the data features in the window calculated in the previous step, and perform the following operations on these three categories of data:
[0171] when and When , the data is considered to be in an open-sky scene, and the window size is set to 1. This is the minimum sliding window length, and the sliding window optimization with a window length of 1 can be approximated as a filtering model;
[0172] when and When , the data is considered to be in a semi-harsh scenario, and the window size is set to 3 to appropriately increase data redundancy and improve the algorithm's robustness;
[0173] In other cases, it is considered that the data redundancy is poor and the number of gross errors is large, and the window size is set to the maximum in a complex (harsh) scenario. It should be noted that the correlation between the window length and the accuracy is significantly reduced after it grows to a certain extent. Therefore, it is selected as 8 here based on data processing experience.
[0174] The adaptive window size strategy can maximize the computational efficiency while ensuring the accuracy and robustness of the algorithm, and significantly improve the real-time performance of the algorithm.
[0175] Then we can determine whether the data length of the current observation value exceeds the window length set above. If it exceeds, the observation value corresponding to the oldest epoch needs to be marginalized, and the variables such as the position corresponding to the oldest epoch, clock error and discontinuous ambiguity in the next epoch are eliminated. The prior information is used to form a priori factors (i.e., marginalized prior factors) and added to the graph to avoid excessive memory consumption and computational burden while retaining historical information.
[0176] The second step is to fix the ambiguity. After the main optimizer outputs the floating-point solution of the state in the window, it is processed by the partial ambiguity fixing method. Then different solutions can be obtained according to the solution mode. When the solution mode is the transfer mode (Continuous mode), the floating-point solution is directly fixed and then output, which is the GNSS transfer solution (Continuous solution), and the algorithm flow ends here. When the solution mode is the fixed hold mode (Fix and hold mode), after the ambiguity is fixed, a fixed hold factor (i.e., Hold factor constraint) is added, and then the objective function of the single-difference GNSS sliding window optimization model is updated by the fixed hold factor, so that the single-difference GNSS sliding window optimization model can output the GNSS fixed hold solution (Hold solution).
[0177] In terms of observation model, the embodiment of the present invention adopts the inter-station single difference model of GNSS real-time dynamic differential positioning based on factor graph optimization. The single difference observation values are independent of each other, which ensures the sparsity of the matrix in the graph optimization problem, avoids the definition of dynamic dimension factors, and reduces the difficulty of code implementation. In terms of factor graph structure, the advantages of graph structure are fully utilized to jointly estimate the same ambiguity to form an arc segment solution, and the correlation between epochs is mined to enhance the robustness of the algorithm; at the same time, a sliding window is added to balance the solution efficiency and accuracy through marginalization. In terms of auxiliary algorithms, the embodiment of the present invention implements a gross error detection method based on window redundant data, enhances the gross error recognition ability through redundant data, and ensures the robustness of the algorithm in complex environments; a fixed holding factor is designed to implement the GNSS fixed holding mode solution under the graph optimization model, and improves the ambiguity fixation rate and positioning accuracy.
[0178] In order to better implement the satellite navigation positioning method in the embodiment of the present invention, based on the satellite navigation positioning method, the embodiment of the present invention also provides a satellite navigation positioning device, such as Figure 7 As shown, the satellite navigation positioning device 700 includes:
[0179] An observation value acquisition module 701 is used to acquire GNSS observation values;
[0180] The floating point solution calculation module 702 calculates the GNSS observation value based on the single-difference GNSS sliding window optimization model to obtain a floating point solution corresponding to the positioning result;
[0181] A verification and determination module 703 is used to detect gross errors of GNSS observations based on sliding window data to obtain a verification result;
[0182] The variable determination module 704 is used to determine the single difference ambiguity variable according to the floating point solution when the test result is that the test is passed, and perform inter-satellite single difference on the single difference ambiguity variable to obtain the floating point double difference ambiguity;
[0183] The ambiguity fixing module 705 is used to fix the floating point double difference ambiguity based on the partial ambiguity fixing method, obtain the GNSS fixed holding solution, and complete the satellite navigation positioning.
[0184] The satellite navigation positioning device 700 provided in the above embodiment can implement the technical solution described in the above satellite navigation positioning method embodiment. The specific implementation principles of the above modules or units can refer to the corresponding contents in the above satellite navigation positioning method embodiment, which will not be repeated here.
[0185] The satellite navigation positioning method and device provided by the present invention are introduced in detail above. Specific examples are used in this article to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea; at the same time, for technical personnel in this field, according to the idea of the present invention, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present invention.
Claims
1. A satellite navigation positioning method, characterized in that: include: Get GNSS observations; The GNSS observations are solved based on the single-difference GNSS sliding window optimization model to obtain the floating-point solution of the corresponding positioning result; Performing gross error detection on the GNSS observation value based on the sliding window data to obtain a test result; When the test result is that the test is passed, determining a single difference ambiguity variable according to a floating point solution, and performing inter-satellite single difference on the single difference ambiguity variable to obtain a floating point double difference ambiguity; The floating point double difference ambiguity is fixed based on the partial ambiguity fixing method to obtain a GNSS fixed holding solution and complete satellite navigation positioning; Before solving the GNSS observation value based on the single-difference GNSS sliding window optimization model to obtain a floating-point solution corresponding to the positioning result, the method further includes: Marginalizing the GNSS observation value according to the sliding window to obtain a marginalization prior factor; Performing inter-station single difference on the GNSS observation values according to the satellite common view relationship between the reference station and the mobile station to obtain a single difference observation factor; Constraining the position variables of adjacent epochs in the GNSS observations according to the joint speed measurement results of the inter-epoch difference model to obtain a speed constraint factor; A single-difference GNSS sliding window optimization model is constructed according to the marginalization prior factor, the single-difference observation factor and the speed constraint factor.
2. The satellite navigation positioning method according to claim 1, characterized in that: The performing gross error detection on the GNSS observation value based on the sliding window data to obtain a test result includes: Processing the GNSS observation values according to the sliding window to obtain posterior residuals; Normalizing the posterior residual to obtain a corresponding residual vector; All residual vectors are processed and tested to obtain test results.
3. The satellite navigation positioning method according to claim 2, characterized in that: The processing and testing of all residual vectors to obtain the test results include: Calculating all the residual vectors and the observed value covariance matrix to obtain a chi-square test value; Determine whether the chi-square test value is greater than a gross error threshold; If yes, all the residual vectors are judged based on the greedy search method and the threshold to obtain all the residual vectors; If not, the inspection result is determined to be inspection passed.
4. The satellite navigation positioning method according to claim 3, characterized in that: The step of judging all the residual vectors based on the greedy search method and the threshold to obtain all the residual vectors includes: Processing all the residual vectors based on the greedy search method to obtain the maximum residual corresponding to each epoch; Judging each maximum residual based on the threshold, and judging whether each maximum residual is less than a first residual value in the threshold; If not, the test result is determined to be not passed, and the corresponding maximum residual is preliminarily processed, solved and residual tested to obtain a test result; If so, the test result is confirmed to be passed.
5. The satellite navigation positioning method according to claim 1, characterized in that: The performing inter-satellite single difference on the single difference ambiguity variable to obtain a floating point double difference ambiguity comprises: Determining a vector covariance matrix according to the single-difference ambiguity variable; Performing inter-satellite single difference on the single difference ambiguity variable and the vector covariance matrix to obtain floating point double difference ambiguity and covariance; The method of fixing the floating point double difference ambiguity based on the partial ambiguity fixing method to obtain a GNSS fixed holding solution and complete satellite navigation positioning includes: Processing the floating point double difference ambiguity and the covariance based on a partial ambiguity fixing method to obtain an optimal solution and a suboptimal solution; Performing a ratio value test on the optimal solution and the suboptimal solution, and when the test result is passed, obtaining an integer ambiguity and setting a solution mode; When the solution mode is the fixed hold mode, a GNSS fixed hold solution is obtained according to the floating point solution and the integer ambiguity.
6. The satellite navigation positioning method according to claim 5, characterized in that: The obtaining of a GNSS fixed hold solution according to the floating point solution and the integer ambiguity comprises: According to the floating point solution, a fixed vector is obtained; Filtering the integer ambiguity according to the fixed vector to obtain a target ambiguity; constructing a strong constraint based on a fixed holding factor and the target ambiguity; According to the single-difference GNSS sliding window optimization model and the strong constraint, a GNSS fixed hold solution is obtained.
7. The satellite navigation positioning method according to claim 5, characterized in that: After setting the solving mode, it also includes: When the solution mode is the update mode, the floating point solution of the current epoch in the GNSS observation value is determined as the GNSS transfer solution.
8. The satellite navigation positioning method according to claim 1, characterized in that: After obtaining the GNSS observation value, the method further includes: Detecting the GNSS observation value according to a prior gross error detection method and a cycle slip detection method to obtain a detection observation value; The ambiguity arc is segmented according to the cycle slip information of each detection observation value to obtain the corresponding GNSS observation value.
9. A satellite navigation positioning device, characterized in that: include: An observation value acquisition module is used to obtain GNSS observation values; The floating point solution calculation module is used to solve the GNSS observation value based on the single-difference GNSS sliding window optimization model to obtain the floating point solution of the corresponding positioning result; A verification and determination module, used to perform gross error detection on the GNSS observation value based on the sliding window data to obtain a verification result; a variable determination module, configured to determine a single-difference ambiguity variable according to a floating-point solution when the test result is a test pass, and perform inter-satellite single difference on the single-difference ambiguity variable to obtain a floating-point double-difference ambiguity; An ambiguity fixing module is used to fix the floating point double difference ambiguity based on a partial ambiguity fixing method to obtain a GNSS fixed holding solution and complete satellite navigation positioning; The floating point solution calculation module is also used to marginalize the GNSS observation value according to the sliding window to obtain a marginalized priori factor; perform inter-station single difference on the GNSS observation value according to the satellite common view relationship between the reference station and the mobile station to obtain a single difference observation factor; According to the joint speed measurement results of the inter-epoch difference model, the position variables of adjacent epochs in the GNSS observation values are constrained to obtain a speed constraint factor; and according to the marginalization prior factor, the single-difference observation factor and the speed constraint factor, a single-difference GNSS sliding window optimization model is constructed.
Citation Information
Patent Citations
Low earth orbit satellite-based satellite-earth differential real-time precise positioning method
CN107229061A
GNSS-RTK-based positioning method
CN108845340A