Floating point solution filter constraint method, apparatus and device, and computer readable storage medium
Through the cyclic difference operation, the virtual observation value between stars is constructed and the preset matrix is constructed, which solves the problem of insufficient filter parameters separation in PPP-RTK, and improves the positioning performance and ambiguity fixing performance.
Patent Information
- Application Number
- CN202411883189.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-19
- Publication Date
- 2025-05-23
AI Technical Summary
In the PPP-RTK precision positioning, the lack of sufficient ionosphere virtual observations results in insufficient separation of filter parameters, which increases the filter convergence time.
By acquiring the ionosphere delay data set, performing a loop difference operation to construct inter-star single-difference virtual observations that meet preset conditions, and constructing a preset matrix based on these virtual observations to constrain the floating point defiler.
The degree of separation of parameters to be estimated in the filter is increased, the fixed performance of ambiguity parameters is improved, and the PPP-RTK positioning performance is improved.
Smart Images

Figure CN120028818A_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of satellite communication technology, and in particular, relates to a floating-point filter constraint solution method, a floating-point filter constraint solution device, a computer device, and a computer-readable storage medium. Background Art
[0002] In the development history of GNSS (Global Navigation Satellite System) precision positioning technology, two technical systems represented by NRTK (Network Real-Time Kinematic) and PPP (Precise Point Positioning) have emerged. NRTK technology can quickly fix the whole-cycle ambiguity, thereby achieving fast and precise positioning, but the service range is limited by the distribution of sites and the distance between sites; PPP technology can provide a wider service range than NRTK, but the convergence time of this technology is longer. Even under the conditions of multi-frequency and multi-system, it still takes about 10 minutes to achieve convergence, which is undoubtedly unacceptable for actual users. Against this technical background, PPP-RTK technology came into being. PPP-RTK combines the technical advantages of PPP and NRTK, and at the same time overcomes the technical defects of each other. It is currently a new generation of precision positioning technology and has received great attention from the industry.
[0003] To ensure the self-consistency between the PPP-RTK server and the user, the ionospheric product used by the user is extracted by the non-combined PPP-AR (Precise Point Positioning with Ambiguity Resolution) technology and modeled in the region. Since the ionospheric delay includes the pseudorange hardware delay at the receiver end, the user needs to use the inter-satellite single difference method to eliminate the influence of the error on the ambiguity fixation. The conventional method in the prior art is to take the highest altitude angle as the reference star and construct an ionospheric virtual observation value based on the inter-satellite single difference to constrain the filter to achieve the purpose of enhancement; however, the satellite pair constructed by this method only considers its independent part, and the related satellite pairs are not considered. Therefore, the lack of sufficient ionospheric virtual observation values will lead to insufficient separation between the parameters in the filter, which will increase the convergence time of the filter. How to obtain sufficient virtual observation values to constrain the filter is a technical problem that needs to be solved by technicians in this field.
[0004] The preceding description is intended to provide general background information and does not necessarily constitute prior art. Summary of the invention
[0005] Based on this, it is necessary to propose a floating-point solution filter constraint method, a floating-point solution filter constraint device, a computer device and a computer-readable storage medium to address the above problems, which can obtain more virtual observation values to constrain the floating-point solution filter.
[0006] The present application solves the technical problem by adopting the following technical solutions:
[0007] The present application provides a floating-point solution filter constraint method, comprising the following steps: obtaining an ionospheric delay data set, the ionospheric delay data set being composed of ionospheric delays of multiple satellites, and the ionospheric delays have not yet been differentiated; performing a cyclic differentiation operation on the ionospheric delay data set, the cyclic differentiation operation being used to differentiate the ionospheric delays in pairs, so as to construct an inter-satellite single-difference virtual observation value that meets a preset condition; constructing a preset matrix according to the inter-satellite single-difference virtual observation value, and the preset matrix is used to constrain the floating-point solution filter.
[0008] In an optional embodiment of the present application, obtaining an ionospheric delay data set includes: obtaining a parameter vector to be estimated and variance-covariance information from a user side; determining a parameter index for indicating the ionospheric delay, and extracting a first ionospheric delay from the parameter vector to be estimated according to the parameter index; performing an independence check on the first ionospheric delay according to the variance-covariance information, and marking the first ionospheric delay that passes the independence check as a second ionospheric delay; and aggregating all second ionospheric delays to obtain an ionospheric delay data set.
[0009] In an optional embodiment of the present application, a parameter vector to be estimated and variance covariance information are obtained from a user side, including: the parameter vector to be estimated and the variance covariance information are obtained from a non-combined PPP floating-point solution filter on the user side by copying; a preset matrix is used to constrain the floating-point solution filter, including: a preset matrix is used to enhance the floating-point solution filter on the user side, an inter-satellite single-difference virtual observation value is used for ionospheric enhancement on the product side, and the user side and the product side are processed in parallel.
[0010] In an optional embodiment of the present application, a cyclic difference operation is performed on an ionospheric delay data set, including: arranging ionospheric delays in the ionospheric delay data set, selecting the ionospheric delay of any satellite, and marking it as a first ionospheric delay; performing an initialization operation on the first ionospheric delay, including setting a first satellite sequence number and a number of observation values of the first ionosphere to an initial state, where the number of observation values is the number of original observation data processed by a filter of the satellite system in a current epoch; obtaining the number of satellites in the satellite system, and judging whether a first cyclic condition is satisfied based on a quantitative relationship between the number of satellites and the first satellite sequence number; if the first cyclic condition is not satisfied, exiting the cyclic difference operation; if the first cyclic condition is satisfied, performing an outer loop on the first ionospheric delay that has completed the initialization operation, and judging whether the first ionospheric delay satisfies the first condition; if the first condition is not satisfied, discarding the current first ionospheric delay, and reselecting the first ionospheric delay from the ionospheric delay data set. an ionospheric delay; if the first condition is met, any ionospheric delay selected from the ionospheric delay data set except the first ionospheric delay is marked as a second ionospheric delay; according to the first satellite serial number, the second satellite serial number of the second ionospheric delay is set; according to the quantitative relationship between the number of satellites and the second satellite serial number, whether the second loop condition is met is judged; if the second loop condition is not met, the current first ionospheric delay and the second ionospheric delay are discarded, and the first ionospheric delay is re-selected from the ionospheric delay data set to execute the outer loop again; if the second loop condition is met, the inner loop is executed for the second ionospheric delay to judge whether the second ionospheric delay meets the second condition; if the second condition is not met, the current second ionospheric delay is discarded, and the second ionospheric delay is re-selected to execute the inner loop again; if the second condition is met, an inter-satellite single difference virtual observation value is generated according to the first ionospheric delay and the second ionospheric delay.
[0011] In an optional embodiment of the present application, an outer loop is performed on the first ionospheric delay after the initialization operation is performed to determine whether the first ionospheric delay meets the first condition, including: using the first ionospheric delay as a filter input on the user side and a filter input on the product side, respectively, to obtain a first parameter after the filter processing on the user side and a second parameter after the filter processing on the product side; performing a difference processing on the first parameter and the second parameter to obtain a first difference result output after the difference processing; obtaining a first continuous epoch absolute difference value on the product side according to the first ionospheric delay; if the first difference result is less than or equal to a first threshold value, and the first continuous epoch absolute difference value is less than or equal to a second threshold value, then it is determined that the first ionospheric delay meets the first condition. The ionospheric delay meets the first condition; an inner loop is performed on the second ionospheric delay to determine whether the second ionospheric delay meets the second condition, including: using the second ionospheric delay as a filter input on the user side and a filter input on the product side, respectively, to obtain a third parameter after the filter processing on the user side and a fourth parameter after the filter processing on the product side; performing a difference processing on the third parameter and the fourth parameter to obtain a second difference result output after the difference processing; obtaining a second continuous epoch absolute difference value on the product side according to the second ionospheric delay; if the second difference result is less than or equal to the third threshold value, and the second continuous epoch absolute difference value is less than or equal to the fourth threshold value, it is determined that the second ionospheric delay meets the second condition.
[0012] In an optional embodiment of the present application, the preset matrix includes a first preset matrix R, a second preset matrix H and a third preset matrix v; constructing the preset matrix according to the inter-satellite single-difference virtual observation value includes: obtaining the number of observations nv and the number of parameters to be estimated nx in the inter-satellite single-difference virtual observation value; constructing the first preset matrix R according to the number of observations nv, and constructing the calculation process with reference to:
[0013] R[nv]=9.0e-4;
[0014] According to the inter-satellite single-difference virtual observation value, obtain the corresponding position idion_i of the first ionospheric delay in the Kalman filter and the corresponding position idion_j of the second ionospheric delay in the Kalman filter, and construct the second preset matrix H according to idion_i, idion_j, the number of observations nv and the number of parameters to be estimated nx. The calculation process is constructed as follows:
[0015] H[idion_i+nv*nx]=1.0;
[0016] H[idion_j+nv*nx]=-1.0;
[0017] The third preset matrix v is constructed according to the first parameter x[i], the second parameter ion[i], the third parameter x[j] and the fourth parameter ion[j]. The construction calculation process refers to:
[0018] v[nv]=(x[i]-x[j])-(ion[i]-ion[j]).
[0019] In an optional embodiment of the present application, the preset matrix includes a first preset matrix R, a second preset matrix H and a third preset matrix v; the preset matrix is used to constrain the floating-point solution filter, including: determining the measurement variance R of the inter-satellite single-difference virtual observation value according to the first preset matrix R k The second preset matrix H determines the coefficient matrix H of the inter-satellite single-difference virtual observation value k ; Get the variance-covariance matrix P of the floating-point solution k,k-1 , to construct the filter gain matrix K k , construction process reference:
[0020]
[0021] Get floating point solution vector X k,k-1 ; According to the third preset matrix v, the filter gain matrix K k and the floating point solution vector X k,k-1 Construct the filter solution vector X after ionospheric product constraints k , construction process reference:
[0022] X k =X k,k-1 +K k v;
[0023] According to the filter gain matrix K k , the coefficient matrix H of the inter-satellite single-difference virtual observations k , the variance-covariance matrix P of the floating-point solution k,k-1 and the measured variance R of the intersatellite single-difference virtual observations k Construct the variance-covariance matrix P of the filtered solution after ionospheric product constraints k , construction process reference:
[0024]
[0025] In the above formula, I is the unit matrix; the filter solution vector X after ionospheric product constraint is k The variance-covariance matrix P of the filtered solution after the ionospheric product constraint k Used to constrain floating-point solution filters.
[0026] The present application also provides a virtual observation value constraint device, including: an acquisition module, used to acquire an ionospheric delay data set, the ionospheric delay data set is composed of ionospheric delays of multiple satellites, and the ionospheric delays have not yet been differentiated; a circulation module, used to perform a cyclic difference operation on the ionospheric delay data set, the cyclic difference operation is used to make the ionospheric delays differ in pairs to construct an inter-satellite single-difference virtual observation value that meets preset conditions; an enhancement module, used to construct a preset matrix based on the inter-satellite single-difference virtual observation value, and the preset matrix is used to constrain the floating-point solution filter.
[0027] The present application also provides a computer device, including a processor and a memory: the processor is used to execute a computer program stored in the memory to implement the aforementioned method.
[0028] The present application also provides a computer-readable storage medium storing a computer program, which implements the aforementioned method when the computer program is executed by a processor.
[0029] The embodiments of the present application have the following beneficial effects:
[0030] The present application can perform pairwise differentiation of ionospheric delays that have not yet been differentiated to construct multiple virtual observation values for constraining the floating-point solution filter, thereby promoting further separation of the parameters to be estimated in the filter, and further contributing to the improvement of the fixation performance of the ambiguity parameters and the improvement of the PPP-RTK positioning performance.
[0031] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented according to the contents of the specification, and in order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the following preferred embodiments are specifically cited and described in detail with the accompanying drawings. It should be understood that the above general description and the detailed description below are only exemplary and explanatory, and cannot limit the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0032] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0033] in:
[0034] Figure 1 A schematic flow chart of a floating-point filter constraint solving method provided by an embodiment;
[0035] Figure 2 A schematic diagram of a flow chart of a cyclic difference operation provided by an embodiment;
[0036] Figure 3 A diagram showing the relationship between internal functional modules of a floating-point filter constraint solution device provided by an embodiment;
[0037] Figure 4 A schematic block diagram of the structure of a computer device provided by an embodiment. DETAILED DESCRIPTION
[0038] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0039] In order for PPP-RTK technology to quickly achieve high-precision positioning, it must achieve the same ambiguity fixation effect as NRTK; but this requires solving two key problems: one is that the ambiguity needs to restore the integer characteristics; the other is to promote the rapid fixation of ambiguity. For problem one, the academic community has successively proposed methods based on regional or global network estimation of UPDs / FCBs and integer clock errors to solve it. For problem two, the rapid fixation of ambiguity can be achieved through multi-frequency multi-system fusion and atmospheric enhancement, but from the actual fixation effect, the ambiguity fixation effect of atmospheric enhancement, especially the oblique path ionospheric delay enhancement, is better. In order to ensure the self-consistency between the PPP-RTK server and the user, the ionospheric product used by the user is extracted by the non-combined PPP-AR technology and modeled in the region. Since the ionospheric delay contains the pseudorange hardware delay of the receiver, the user needs to use the inter-satellite single difference method to eliminate the influence of this error on the ambiguity fixation. However, conventional technical means can only obtain independent virtual observation values. Failure to obtain sufficient virtual observation values will lead to insufficient separation between the parameters in the filter, which will increase the convergence time of the filter. To this end, the present application proposes a floating point filter constraint solution method to overcome the above technical problems. To clearly describe the method provided in this embodiment, please refer to Figure 1-2 , including steps S110 to S130.
[0040] Step S110: Acquire an ionospheric delay data set, where the ionospheric delay data set consists of ionospheric delays of multiple satellites, and the ionospheric delays have not yet been differentiated.
[0041] In one embodiment, step S110: obtaining an ionospheric delay data set includes: obtaining a parameter vector to be estimated and variance-covariance information from a user side; determining a parameter index for indicating the ionospheric delay, and extracting a first ionospheric delay from the parameter vector to be estimated according to the parameter index; performing an independence check on the first ionospheric delay according to the variance-covariance information, and marking the first ionospheric delay that passes the independence check as a second ionospheric delay; and aggregating all second ionospheric delays to obtain an ionospheric delay data set.
[0042] In one embodiment, the estimated parameter vector and variance covariance information are obtained from the user side, including: the estimated parameter vector and variance covariance information are obtained from the non-combined PPP floating-point solution filter on the user side by copying; a preset matrix is used to constrain the floating-point solution filter, including: the preset matrix is used to enhance the floating-point solution filter on the user side, the inter-satellite single-difference virtual observation value is used for ionospheric enhancement on the product side, and the user side and the product side are processed in parallel.
[0043] In one embodiment, the ionospheric delay that has not been differentiated in the satellite system is obtained. Specifically, the satellite system includes a user side and a product side. The user side can be understood as the front-end use, including terminal equipment and applications, receiving products and solving user location information; the product side can be understood as a background service for data generation and distribution systems to provide high-precision correction products. The ionospheric delay can be obtained by copying the estimated parameter vector x and variance covariance information Q from the non-combined PPP floating-point solution filter on the user side. XX The estimated parameter vector x and variance-covariance information Q XX It will be used to determine the ionospheric delay that has not yet been differentiated within the satellite system.
[0044] Specifically, in the estimated parameter vector of non-combined PPP, the ionospheric delay is estimated independently for each satellite and each frequency in the satellite system. Assume that the estimated parameter vector is: x = [X, Y, Z, T, I 1 ,I 2 ,…], where I 1 ,I 2 ,…etc. are the ionospheric delays on different satellite paths. Further, according to the filter modeling method, the ionospheric delay parameter index can be used to directly locate the position of the ionospheric delay in the estimated parameter vector, and directly extract it, marked as the first ionospheric delay, in meters. Variance covariance information Q XXRepresents the statistical uncertainty and mutual correlation of all parameters to be estimated, and can extract the submatrix corresponding to the ionospheric delay, representing the accuracy of the parameter and the correlation with other parameters, so as to perform an independence check on the preliminary extraction of the first ionospheric delay. The independence check verifies whether the correlation between the first ionospheric delay and other parameters is significant, so as to screen out the first ionospheric delay that meets the preset conditions, and mark the first ionospheric delay that passes the independence check as the second ionospheric delay. In addition, before summarizing, the second ionospheric delay can be verified once more to see if it conforms to the physical meaning, for example: the typical ionospheric delay value (taking L1 frequency as an example) is in the range of 0 to 50 meters; or, the ionospheric change between epochs should be smooth (if dynamic constraints are set in the filter). The specific verification method is not limited, and only the explanation is given here. When the second ionospheric delay also passes the verification, all the second ionospheric delays that pass the verification can be used to obtain the ionospheric delay data set, and it can be known that the ionospheric delays in the ionospheric delay data set are all in a state where no difference has been made.
[0045] In the subsequent ionospheric delay, the intersatellite single-difference virtual observation value will be used to construct the preset matrix. Among them, the preset matrix is used to enhance the floating-point solution filter on the user side; the intersatellite single-difference virtual observation value is used for ionospheric enhancement on the product side. It is worth noting that the user side and the product side are processed in parallel, that is, the product side cannot affect the floating-point solution filter.
[0046] Step S120: performing a cyclic difference operation on the ionospheric delay data set, wherein the cyclic difference operation is used to make a difference between the ionospheric delays in pairs to construct an inter-satellite single-difference virtual observation value that meets preset conditions.
[0047] In one embodiment, for the convenience of explaining how to implement the cyclic difference operation in step S120, please refer to Figure 2 , including steps S210~2120.
[0048] Step S210: Arrange the ionospheric delays in the ionospheric delay data set, select the ionospheric delay of any satellite, and mark it as the first ionospheric delay.
[0049] Step S220: performing an initialization operation on the first ionospheric delay, including setting the first satellite sequence number and the number of observation values of the first ionosphere to an initial state.
[0050] In one embodiment, the ionospheric delays in the ionospheric delay data set are arranged in a preset order, for example, in ascending order, descending order, or in relationship with the corresponding satellite, so that there will be no repetition when the ionospheric delay is selected subsequently. The ionospheric delay of a satellite is arbitrarily selected from the arranged ionospheric delay data set and marked as the first ionospheric delay. An initialization operation is performed on the first ionospheric delay, including setting the first satellite serial number and the number of observation values of the first ionosphere to an initial state. For example, assuming that the selected first ionospheric delay is denoted as i, i is set to an initial state, for example, i=0. And it can be seen that since the first ionospheric delay is related to the satellite, i can also be expressed as the serial number of the satellite. In addition, the initialization operation also includes setting the number of observation values, which is the number of original observation data processed by the filter of the satellite system in the current epoch, denoted as nv. The number of observation values in the initialization state can be 0, that is, nv=0 is set.
[0051] Step S230: Obtain the number of satellites in the satellite system, and determine whether the first loop condition is satisfied based on the quantitative relationship between the number of satellites and the first satellite serial number.
[0052] In one embodiment, for the PPP-RTK end, due to the limitations of the hardware conditions of the board module and the number of product satellites received, the original method is adopted, and the upper limit of the number of constraints in the system is the number of matches between the observed satellites and the satellites that broadcast the product minus one. Therefore, it is also necessary to obtain the number of satellites in the satellite system, and the number of satellites is recorded as n. The quantitative relationship between the number of satellites and the first satellite serial number is used to determine whether the first loop condition is met. Specifically, the first loop condition can be: i<n-1.
[0053] If the first loop condition is not satisfied, step S240 is executed: exit the loop and perform a difference operation.
[0054] In one embodiment, the first loop condition is usually not met after the cyclic difference operation is repeated multiple times to screen and construct the inter-satellite single difference virtual observation value that meets the conditions. Before exiting, it can be determined whether all ionospheric delays in the ionospheric delay data set have been exhausted. If not, continue to loop until exhausted. If exhausted, that is, the inter-satellite single difference virtual observation value is found, the subsequent steps can be executed. The subsequent steps will be described in detail later and will not be expanded here.
[0055] If the first loop condition is met, step S250 is executed: an outer loop is performed on the first ionospheric delay after the initialization operation is performed to determine whether the first ionospheric delay meets the first condition.
[0056] In one embodiment, if the first loop condition is met, a loop can be entered to find an ionospheric delay that meets the condition to construct an inter-satellite single-difference virtual observation value. The loop is divided into an outer loop and an inner loop, and the outer loop is executed first.
[0057] The execution process of the outer loop is specifically to use the first ionospheric delay as the filter input on the user side and the filter input on the product side, respectively, to obtain the first parameter after the filter processing on the user side and the second parameter after the filter processing on the product side. The first parameter is recorded as x[i] and the second parameter is ion[i]. As mentioned above, i represents the ionospheric delay of the satellite with serial number i, x[] in the first parameter represents the filter on the user side, and ion[] in the second parameter represents the filter on the product side. Perform difference processing on the first parameter and the second parameter to obtain the first difference result output after the difference processing. The calculation method of the difference processing is referenced to:
[0058] D 1 =|x[i]-ion[i]| (1)
[0059] Where D 1 Further, the absolute difference of the first continuous epochs on the first ionospheric delay acquisition product side is obtained according to the second parameter ion[i], and the calculation method can be expressed as:
[0060] E 1 =|ion[i](t)-ion[i](t-1)| (2)
[0061] In the formula, E 1 is the absolute difference of the first continuous epoch. It is determined whether the first condition is met based on the first difference result and the absolute difference of the first continuous epoch.
[0062] The first condition is specifically: the first difference result is less than the first threshold, and the absolute difference of the first consecutive epochs is less than the second threshold. In a possible embodiment, the first threshold is represented by det 1 , is a preset value, for example, it can be 100m; approximately, the second threshold value can be 0.15m. It is worth noting that the specific values of the first threshold value to the fourth threshold value described here and later are all possible values given by taking this embodiment as an example, and are not specific limitations on the exact values of the threshold values. The actual value can be set arbitrarily according to actual needs, and this application does not limit this.
[0063] Based on the above description, the situation that satisfies the first condition can be expressed as:
[0064]
[0065] That is to say, if the first difference result is greater than the first threshold, or the absolute difference of the first consecutive epochs is greater than the second threshold, it is determined that the first condition is not met; if the first difference result is less than or equal to the first threshold, and the absolute difference of the first consecutive epochs is less than or equal to the second threshold, it is determined that the first condition is met.
[0066] If the first condition is not met, step S260 is executed: the current first ionospheric delay is discarded, and the process returns to step S210 to reselect the first ionospheric delay from the ionospheric delay data set.
[0067] If the first condition is met, step S270 is executed: any ionospheric delay selected from the ionospheric delay data set except the first ionospheric delay is marked as the second ionospheric delay; and the second satellite sequence number of the second ionospheric delay is set according to the first satellite sequence number.
[0068] In one embodiment, if the first ionospheric delay of a satellite meets the first condition, the ionospheric delay can continue to be selected in the ionospheric delay data set. The ionospheric delay selected again is the remaining unselected ionospheric delay in the ionospheric delay data set except the first ionospheric delay, so as to make subsequent differences between the ionospheric delays that meet the conditions. Among them, the selected ionospheric delay selected again is marked as the second ionospheric delay. Similar to the setting of the first ionospheric delay, the second satellite number of the second ionospheric delay is set, and the second satellite number is denoted as j. Among them, in order to indicate the difference, the second satellite number j is larger than the first satellite number i. For example, one can be added to the first satellite number i, or a larger integer can be used to distinguish it. The specific numerical relationship between the two can be:
[0069] j=i+1 (4)
[0070] Step S280: Determine whether the second loop condition is satisfied based on the quantitative relationship between the number of satellites and the second satellite serial number.
[0071] In one embodiment, whether the second loop condition is satisfied is determined based on the relationship between the number of satellites and the number of second satellite numbers, specifically, the second satellite number corresponding to the second ionospheric delay cannot exceed the number of satellites. Specifically, assuming that the second satellite number is set in accordance with formula (4), the second loop condition can be expressed as: j < n.
[0072] If the second loop condition is not met, step S290 is executed: the current first ionospheric delay and the second ionospheric delay are discarded. Returning to step S210, the first ionospheric delay is reselected from the ionospheric delay data set to execute the outer loop again.
[0073] If the second loop condition is met, step S2100 is executed: an inner loop is performed on the second ionospheric delay to determine whether the second ionospheric delay meets the second condition.
[0074] In one embodiment, the inner loop and the outer loop are similar in execution process, except that the second ionospheric delay is processed. Approximately, the second ionospheric delay is used as the filter input of the user side filter and the product side filter, respectively, and the third parameter after the user side filter processing and the fourth parameter after the product side filter processing are obtained respectively. Among them, the third parameter is recorded as x[j], and the fourth parameter is recorded as ion[j]. The third parameter and the fourth parameter are subjected to difference processing to obtain the second difference result output after the difference processing. The calculation method of the difference processing is referred to as:
[0075]
[0076] Where D 2 Further, the absolute difference of the second continuous epochs on the second ionospheric delay acquisition product side is obtained according to the third parameter ion[j], and the calculation method can be expressed as:
[0077] E 2 =|ion[j](t)-ion[j](t-1)| (6)
[0078] In the formula, E 2 is the absolute difference of the second continuous epoch. It is determined whether the second condition is met based on the second difference result and the absolute difference of the second continuous epoch.
[0079] The second condition is specifically: the second difference result is less than the third threshold, and the absolute difference of the second consecutive epochs is less than the fourth threshold. Specifically in one possible embodiment, since the difference between the inner loop and the outer loop is only that the first ionospheric delay is replaced by the second ionospheric delay in the same ionospheric delay data set, the third threshold used for judgment can be the same as the corresponding first threshold, and the fourth threshold is equal to the corresponding second threshold. However, in possible implementations, there may be differences. At the same time, in order to distinguish the operations of the inner loop and the outer loop, the two types of thresholds are also distinguished. Among them, the third threshold is represented by det 2 , is a preset numerical value, for example, it can be 100m, the same as the first threshold, or it can be set differently according to needs; approximately, the fourth threshold can be 0.15m or other values set according to needs.
[0080] Based on the above description, the situation where the second condition is met can be expressed as:
[0081]
[0082] That is to say, if the second difference result is greater than the third threshold, or the absolute difference between the first consecutive epochs is greater than the second threshold, it is determined that the first condition is not met; if the second difference result is less than or equal to the third threshold, and the absolute difference between the second consecutive epochs is less than or equal to the fourth threshold, it is determined that the second ionospheric delay meets the second condition.
[0083] If the second condition is not met, step S2110 is executed: the current second ionospheric delay is discarded, and the process returns to step S270 to reselect the second ionospheric delay and execute the inner loop again.
[0084] If the second condition is met, step S2120 is executed: generating an inter-satellite single-difference virtual observation value according to the first ionospheric delay and the second ionospheric delay.
[0085] After executing step S2120, the process returns to step S210 to cyclically screen the ionospheric delay data set for ionospheric delays that meet the conditions until they are exhausted.
[0086] In one embodiment, when selecting the first ionospheric delay, the ionospheric delay can be arranged in ascending order according to the ionospheric delay, and the ionospheric delay corresponds to the number of satellites. The ionospheric delays are selected one by one, and are screened two by two to see whether they meet the above conditions. All ionospheric delays in the ionospheric delay data set are exhausted to select a number of pairs of first ionospheric delays and second ionospheric delays. The paired first ionospheric delay and the second ionospheric delay can be differenced to generate inter-satellite single difference virtual observation values, which constructs more virtual observation values than the prior art for constraint enhancement.
[0087] Step S130: constructing a preset matrix according to the inter-satellite single-difference virtual observation values, where the preset matrix is used to constrain the floating-point solution filter.
[0088] In one embodiment, a preset matrix is constructed according to the inter-satellite single-difference virtual observation values determined above, and the preset matrix includes a first preset matrix R, a second preset matrix H and a third preset matrix v. First, the number of observation values nv and the number of parameters to be estimated nx are obtained. In GNSS data processing and Kalman filter, the number of observation values nv, that is, the number of original observation data processed by the filter in the current epoch; the number of parameters to be estimated nx, represents the number of state parameters, that is, the number of parameters to be estimated in the filter. Both can be included in the inter-satellite single-difference virtual observation values. First, the first preset matrix R is constructed according to the number of observation values nv, and the construction calculation process refers to:
[0089] R[nv]=9.0e-4 (8)
[0090] Further, according to the inter-satellite single difference virtual observation value, the corresponding position idion_i of the first ionospheric delay in the Kalman filter and the corresponding position idion_j of the second ionospheric delay in the Kalman filter are obtained. And according to idion_i, idion_j, the number of observations nv and the number of parameters to be estimated nx, a second preset matrix H is constructed, and the calculation process is constructed with reference to:
[0091] H[idion_i+nv*nx]=1.0 (9)
[0092] H[idion_j+nv*nx]=-1.0 (10)
[0093] According to the cyclic difference operation, the third preset matrix v is constructed according to the first parameter x[i], the second parameter ion[i], the third parameter x[j] and the fourth parameter ion[j]. The construction calculation process refers to:
[0094] v[nv]=(x[i]-x[j])-(ion[i]-ion[j]) (11)
[0095] The preset matrix will be used to constrain the floating-point solution filter. At the same time, referring to the previous description, the actual constraint is the backup filter on another parallel processing line on the user side, which has no actual impact on the user side, so as to complete the enhanced constraint of the ionospheric product. The specific enhanced constraint process will be explained in detail later.
[0096] In one embodiment, the preset matrix includes a first preset matrix R, a second preset matrix H and a third preset matrix v; the preset matrix is used to constrain the floating-point solution filter, including: determining the measurement variance R of the inter-satellite single-difference virtual observation value according to the first preset matrix R k The second preset matrix H determines the coefficient matrix H of the inter-satellite single-difference virtual observation value k ; Get the variance-covariance matrix P of the floating-point solution k,k-1 , to construct the filter gain matrix K k ; Get the floating point solution vector X k,k-1 ; According to the third preset matrix v, the filter gain matrix Kk and the floating point solution vector X k,k-1 Construct the filter solution vector X after ionospheric product constraints k ; According to the filter gain matrix K k , the coefficient matrix Hk of the intersatellite single-difference virtual observations, the variance-covariance matrix P of the floating-point solution k,k-1 and the measured variance R of the intersatellite single-difference virtual observations k Construct the variance-covariance matrix P of the filtered solution after ionospheric product constraints k ; According to the ionospheric product constraint filter solution vector X kThe variance-covariance matrix P of the filtered solution after the ionospheric product constraint k Constrained floating-point solution filter.
[0097] In one embodiment, in step S120, multiple pairs of ionospheric delays are selected from the ionospheric delay data set to be differentiated by cyclic difference operation, and a number of inter-satellite single-difference virtual observations are constructed. That is, when forming inter-satellite single-difference ionospheric virtual observations, not only independent inter-satellite single-difference satellite pairs are considered, but also related satellite pairs are considered, providing more virtual observations for the constrained floating-point solution filter. The increase of inter-satellite single-difference ionospheric virtual observations can promote the further separation of the parameters to be estimated in the filter, thereby contributing to the improvement of the fixation performance of the ambiguity parameters and the improvement of the PPP-RTK positioning performance.
[0098] The inter-satellite single-difference virtual observations are used to construct preset evidence, constrain floating-point filters, and complete the enhancement constraints of ionospheric products. Finally, the construction process of the enhanced solution vector and variance-covariance matrix is given.
[0099] First, the measurement variance R of the inter-satellite single-difference virtual observation value is determined according to the first preset matrix R k The second preset matrix H determines the coefficient matrix H of the inter-satellite single-difference virtual observation value k . Get the variance-covariance matrix P of the floating-point solution k,k-1 , to construct the filter gain matrix K k For the filter gain matrix K k The construction process can be referred to:
[0100]
[0101] Further, get the floating point solution vector X k,k-1 According to the third preset matrix v, the filter gain matrix K k and the floating point solution vector X k,k-1 Construct the filter solution vector X after ionospheric product constraints k , the construction process can refer to:
[0102] X k =X k,k-1 +K k v (13)
[0103] In fact, according to the solution process of the third preset matrix v in the previous article, it can be known that the third preset matrix v can be obtained by the inter-satellite single difference of the ionospheric product The coefficient matrix H of the intersatellite single-difference virtual observations k and floating point solution vector X k,k-1 The relationship between them can be referred to as:
[0104]
[0105] Therefore, formula (12) can be transformed into:
[0106]
[0107] Finally, according to the filter gain matrix K k , the coefficient matrix H of the inter-satellite single-difference virtual observations k , the variance-covariance matrix P of the floating-point solution k,k-1 and the measured variance R of the intersatellite single-difference virtual observations k Construct the variance-covariance matrix P of the filtered solution after ionospheric product constraints k , the specific construction process can refer to:
[0108]
[0109] In formula (16), I is the unit matrix. According to the filter solution vector X after ionospheric product constraints k Sum filter solution variance-covariance matrix P k The constraint enhancement of the backed-up user-side filter can be achieved.
[0110] At the same time, it should be clarified that for the problem of constructing inter-satellite virtual observation values at the ionospheric enhancement PPP-RTK end, in addition to the inter-satellite single-difference virtual observation values constructed within the system proposed in this application, cyclic mutual differences of GNSS satellites can also be performed (except GLONASS, including differences between systems). However, there are the following problems: Since the oblique path ionosphere contains the pseudo-range hardware delay of the receiver end, if the benchmark is calculated before modeling, the ionosphere in the system contains the ionospheric delay (benchmark) of the reference station-reference star, and the benchmark is consistent within the system; therefore, the inter-system single-difference ionospheric delay formed by the PPP-RTK end will not only include the inter-satellite ionospheric delay, but also include the benchmark difference between the systems and the difference in the receiver-end frequency delay. Although this method can also obtain more virtual observation values, it is necessary to process the deviation between the systems, and the time-varying characteristics of the deviation and the processing strategy require a lot of systematic and in-depth research, so from the perspective of practical application, this solution is still not mature.
[0111] However, compared with the prior art, the solution proposed in this application has made significant progress: this application can differentiate the ionospheric delays that have not yet been differentiated pairwise to construct multiple virtual observation values for constraining the floating-point solution filter, thereby promoting further separation of the parameters to be estimated in the filter, and then helping to improve the fixation performance of the ambiguity parameters and enhance the PPP-RTK positioning performance.
[0112] Figure 3The diagram of the internal functional modules of a virtual observation value constraint device in one embodiment is shown. The virtual observation value constraint device 300 includes: an acquisition module 310, a circulation module 320 and an enhancement module 330. The acquisition module 310 is used to acquire an ionospheric delay data set, which is composed of ionospheric delays of multiple satellites, and the ionospheric delays have not yet been differentiated. The circulation module 320 is used to perform a cyclic difference operation on the ionospheric delay data set, and the cyclic difference operation is used to make the ionospheric delays differ in pairs to construct an inter-satellite single-difference virtual observation value that meets the preset conditions. The enhancement module 330 is used to construct a preset matrix based on the inter-satellite single-difference virtual observation value, and the preset matrix is used to constrain the floating-point solution filter.
[0113] Figure 4 FIG. 1 shows an internal structure diagram of a computer device in an embodiment. The computer device may be a terminal or a server. Figure 4 As shown, the computer device includes a processor, a memory and a network interface connected via a system bus. The memory includes a non-volatile storage medium and an internal memory. The non-volatile storage medium of the computer device stores an operating system and may also store a computer program. When the computer program is executed by the processor, the processor can implement a floating-point filter constraint solution method. The internal memory may also store a computer program. When the computer program is executed by the processor, the processor can implement a floating-point filter constraint solution method. Those skilled in the art will appreciate that Figure 4 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0114] In one embodiment, the present application further proposes a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, the processor executes the steps of the method described in any of the aforementioned embodiments.
[0115] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the program can be stored in a non-volatile computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
[0116] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0117] The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A floating point filter constraint solution method, characterized in that: The steps include: Acquire an ionospheric delay data set, wherein the ionospheric delay data set is composed of ionospheric delays of multiple satellites, and the ionospheric delays have not been differentiated; Performing a cyclic difference operation on the ionospheric delay data set, wherein the cyclic difference operation is used to make a difference between the ionospheric delays in pairs to construct an inter-satellite single-difference virtual observation value that meets a preset condition; A preset matrix is constructed according to the inter-satellite single-difference virtual observation values, and the preset matrix is used to constrain the floating-point solution filter.
2. The floating point filter constraint solution method as claimed in claim 1, wherein: The obtaining of the ionospheric delay data set comprises: Obtain the parameter vector and variance-covariance information to be estimated from the user side; Determining a parameter index for indicating the ionospheric delay, and extracting a first ionospheric delay from the parameter vector to be estimated according to the parameter index; performing an independence check on the first ionospheric delay according to the variance-covariance information, and marking the first ionospheric delay that passes the independence check as a second ionospheric delay; All the second ionospheric delays are aggregated to obtain the ionospheric delay dataset.
3. The floating point filter constraint solution method as claimed in claim 2, wherein: The obtaining of the estimated parameter vector and variance-covariance information from the user side includes: The parameter vector to be estimated and the variance-covariance information are obtained from the non-combined PPP floating-point solution filter on the user side by copying; The preset matrix is used to constrain the floating-point solution filter, including: The preset matrix is used to enhance the floating-point solution filter on the user side, the inter-satellite single-difference virtual observation value is used for ionospheric enhancement on the product side, and the user side and the product side are processed in parallel.
4. The floating point filter constraint solution method as claimed in claim 1, wherein: The performing a cyclic difference operation on the ionospheric delay data set comprises: Arranging the ionospheric delays in the ionospheric delay data set, selecting the ionospheric delay of any satellite, and marking it as the first ionospheric delay; performing an initialization operation on the first ionospheric delay, including setting a first satellite sequence number and a number of observation values of the first ionospheric delay to an initial state, wherein the number of observation values is a number of raw observation data processed by a filter of a satellite system in a current epoch; Acquire the number of satellites in the satellite system, and determine whether a first loop condition is satisfied according to a quantitative relationship between the number of satellites and the first satellite sequence number; If the first loop condition is not met, then exit the loop and perform a difference operation; If the first loop condition is met, performing an outer loop on the first ionospheric delay after performing the initialization operation, and determining whether the first ionospheric delay meets the first condition; If the first condition is not met, the current first ionospheric delay is discarded, and the first ionospheric delay is reselected from the ionospheric delay data set; If the first condition is met, any ionospheric delay selected from the ionospheric delay data set except the first ionospheric delay is marked as a second ionospheric delay; and a second satellite sequence number of the second ionospheric delay is set according to the first satellite sequence number; Determining whether a second loop condition is satisfied according to a quantitative relationship between the number of satellites and the second satellite sequence number; If the second loop condition is not met, the current first ionospheric delay and the second ionospheric delay are discarded, and the first ionospheric delay is reselected from the ionospheric delay data set to execute the outer loop again; If the second loop condition is met, an inner loop is performed on the second ionospheric delay to determine whether the second ionospheric delay meets the second condition; If the second condition is not met, the current second ionospheric delay is discarded, the second ionospheric delay is reselected and the inner loop is executed again; If the second condition is met, the inter-satellite single-difference virtual observation value is generated according to the first ionospheric delay and the second ionospheric delay.
5. The floating point filter constraint solution method as claimed in claim 4, wherein: The performing an outer loop on the first ionospheric delay after the initialization operation to determine whether the first ionospheric delay satisfies a first condition includes: The first ionospheric delay is used as a filter input of a user side and a filter input of a product side, respectively, to obtain a first parameter processed by the filter of the user side and a second parameter processed by the filter of the product side; a difference processing is performed on the first parameter and the second parameter to obtain a first difference result output after the difference processing; and a first continuous epoch absolute difference value of the product side is obtained according to the first ionospheric delay; If the first difference result is less than or equal to a first threshold value, and the first absolute difference of consecutive epochs is less than or equal to a second threshold value, it is determined that the first ionospheric delay meets the first condition; The performing an inner loop on the second ionospheric delay to determine whether the second ionospheric delay satisfies a second condition includes: The second ionospheric delay is used as the filter input of the user side and the filter input of the product side, respectively, to obtain a third parameter after the filter processing of the user side and a fourth parameter after the filter processing of the product side; the difference processing is performed on the third parameter and the fourth parameter to obtain a second difference result output after the difference processing; and the second continuous epoch absolute difference value of the product side is obtained according to the second ionospheric delay; If the second difference result is less than or equal to a third threshold, and the second absolute difference between consecutive epochs is less than or equal to a fourth threshold, it is determined that the second ionospheric delay satisfies the second condition.
6. The floating point filter constraint solution method as claimed in claim 5, wherein: The preset matrix includes a first preset matrix R, a second preset matrix H and a third preset matrix v; The step of constructing a preset matrix according to the inter-satellite single-difference virtual observation values comprises: Obtain the number of observations nv and the number of parameters to be estimated nx in the inter-satellite single-difference virtual observations; construct the first preset matrix R according to the number of observations nv, and refer to the calculation process: R[nv]=9.0e-4; According to the inter-satellite single-difference virtual observation value, obtain the corresponding position idion_i of the first ionospheric delay in the Kalman filter and the corresponding position idion_j of the second ionospheric delay in the Kalman filter, and construct the second preset matrix H according to idion_i, idion_j, the number of observations nv and the number of parameters to be estimated nx, and construct the calculation process reference: H[idion_i+nv*nx]=1.0; H[idion_j+nv*nx]=-1.0; The third preset matrix v is constructed according to the first parameter x[i], the second parameter ion[i], the third parameter x[j] and the fourth parameter ion[j]. The construction calculation process refers to: v[nv]=(x[i]-x[j])-(ion[i]-ion[j]).
7. The floating point filter constraint solution method as claimed in claim 1, wherein: The preset matrix includes a first preset matrix R, a second preset matrix H and a third preset matrix v; The preset matrix is used to constrain the floating-point solution filter, including: Determine the measurement variance R of the inter-satellite single-difference virtual observation value according to the first preset matrix R k The second preset matrix H determines the coefficient matrix H of the inter-satellite single difference virtual observation value k ; Get the variance-covariance matrix P of the floating-point solution k,k-1 , to construct the filter gain matrix K k , construction process reference: Get the floating point solution vector X k,k-1 ; According to the third preset matrix v, the filter gain matrix K k and the floating point solution vector X k,k-1 Construct the filter solution vector X after ionospheric product constraints k , construction process reference: X k =X k,k-1 +K k v; According to the filter gain matrix K k , the coefficient matrix H of the inter-satellite single-difference virtual observation value k , the variance-covariance matrix P of the floating-point solution k,k-1 and the measured variance R of the intersatellite single-difference virtual observation k Construct the variance-covariance matrix P of the filtered solution after ionospheric product constraints k , construction process reference: In the above formula, I is the unit matrix; The filtered solution vector X after the ionospheric product constraint k And the variance-covariance matrix P of the filtered solution after the ionospheric product constraint k Used to constrain floating-point solution filters.
8. A virtual observation value constraint device, characterized in that: include: An acquisition module, used for acquiring an ionospheric delay data set, wherein the ionospheric delay data set is composed of ionospheric delays of multiple satellites, and the ionospheric delays have not been differentiated; A cyclic module, used for performing a cyclic difference operation on the ionospheric delay data set, wherein the cyclic difference operation is used for making a difference between the ionospheric delays in pairs to construct an inter-satellite single-difference virtual observation value that meets a preset condition; The enhancement module is used to construct a preset matrix according to the inter-satellite single-difference virtual observation value, and the preset matrix is used to constrain the floating-point solution filter.
9. A computer device, characterized in that: including a processor and a memory; The processor is configured to execute the computer program stored in the memory to implement the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.