PPP-B2b-Based Positioning and Timing Method, System, Device, and Readable Storage Medium
By receiving PPP-B2b messages and GNSS raw observation data, using technologies such as support vector machines and Kalman filtering, a positioning and timing method based on PPP-B2b is realized, solving the problem that positioning is less used in the prior art for timing and quality control thresholds and difficult to adapt to different scenarios, and achieving high-precision positioning and timing.
Patent Information
- Application Number
- CN202411399411.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-09
- Publication Date
- 2025-06-24
- Estimated Expiration
- 2044-10-09
AI Technical Summary
The existing precision single-point positioning method based on PPP-B2b is mainly used for positioning, and is rarely used for timing, and the residual quality control method commonly used in quality control is difficult to adapt to different complex scenarios.
By receiving PPP-B2b messages and GNSS raw observation data, using support vector machines to learn and match key features, combining broadcast ephemeris to correlate satellite positions and satellite clock differences, building error models and optimizing nonlinear least squares method, establishing a dual-frequency ionosphere-free combination model, using Kalman filtering for parameter estimation, real-time positioning and timing are achieved.
It realizes real-time high-precision positioning of a single station without networking, and synchronizes the local clock with the satellite system clock through phase adjustment, effectively improving positioning and timing accuracy.
Smart Images

Figure CN119395970B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of information technology, and in particular, to a positioning and timing method, system, device and readable storage medium based on PPP-B2b. Background Art
[0002] With the rapid development of the Global Navigation Satellite System (GNSS) in recent decades, the navigation, positioning and timing services of GNSS have been integrated into all aspects of human life and social production and construction, from the establishment of the global reference frame to vehicle navigation and so on. Precise Point Positioning (PPP), with its centimeter-level positioning accuracy achievable with only a single station, is a widely used navigation and positioning method at present. In addition, China issued the "Performance Specification for Precise Point Positioning Service of Beidou Satellite Navigation System (Version 1.0)" in 2020, which broadcasts correction parameters such as precise orbits and clock biases of the Beidou-3 system and other global satellite navigation systems (PPP-B2b) through the geostationary orbit (GEO) satellites of Beidou-3. It can achieve real-time PPP only through Beidou satellites without the need to connect to the network, and has great application prospects in the military field.
[0003] At present, most precise point positioning methods based on PPP-B2b are only used for positioning and less for timing. Moreover, the commonly used residual quality control methods (carrier phase, pseudorange) in quality control use fixed parameter thresholds and are difficult to adapt to different complex scenarios. For example, the invention patent with the application publication number [CN114280644A] discloses a precise point positioning system and method based on PPP-B2b service, which receives the PPP-B2b signal broadcast by the Beidou-3 system, decodes and preprocesses the PPP-B2b signal to obtain correction numbers, then corrects based on broadcast ephemeris, and finally outputs the corresponding precise point positioning result. Summary of the Invention
[0004] The purpose of the present invention is to provide a positioning and timing method, system, device and readable storage medium based on PPP-B2b to improve the above problems. To achieve the above purpose, the technical solutions adopted by the present invention are as follows:
[0005] In a first aspect, the present application provides a positioning and timing method based on PPP-B2b, including:
[0006] Receive PPP-B2b messages and GNSS raw observation data. Each information type of the PPP-B2b message performs self-matching through the data version number. Extract key features from the self-matched PPP-B2b messages, and use a support vector machine to learn and match the key features, analyze the matching results, and associate the matching results with the broadcast ephemeris. The data version number includes SSR, IODP, IODN, and IOD Corr, and the key features include the data version numbers of different information types;
[0007] Based on the matching results, use the PPP-B2b orbit and clock correction data to calculate the satellite position and satellite clock error, construct an error model containing error terms, and optimize the error model using the nonlinear least squares method. The error terms include ionospheric delay, tropospheric delay, satellite and receiver hardware delays;
[0008] Perform data quality control on the GNSS raw observation data obtained at fixed time intervals by the receiver for a period of time, and use the calculated satellite position and satellite clock error to establish a dual-frequency ionosphere-free combination model;
[0009] According to the dual-frequency ionosphere-free combination model, use Kalman filtering for parameter estimation to complete real-time positioning and timing.
[0010] Preferably, each information type of the PPP-B2b message performs self-matching through the data version number, including:
[0011] Traverse the saved satellite mask messages and clock correction messages, and judge whether the SSR and IODP of the satellite mask message are the same as those of the clock correction message. If they are the same, save the corresponding satellite and proceed to the next step; if not, continue to judge;
[0012] Traverse the saved orbit correction messages and inter-code bias correction messages, and select the orbit correction messages and inter-code bias correction messages that are consistent with the SSR successfully matched in the previous step to form a final pairing group;
[0013] Based on the final pairing group, for the satellites with PPP-B2b correction messages, judge whether the IOD Corr in the orbit correction message is the same as the IOD Corr in the clock correction message. If they are the same, save the corresponding satellite orbit, clock correction, and inter-code bias data, and proceed to the next step;
[0014] For all the satellites saved in the previous step, judge whether the IODN in each satellite orbit correction message is the same as the IODC of the known broadcast ephemeris. If they are the same, continue to judge whether the satellite orbit and clock correction data exceed the available validity period. If not, use the orbit correction and clock correction data to calculate the satellite position and satellite clock error.
[0015] Preferably, extract key features from the self-matched PPP-B2b messages, and use a support vector machine to learn and match the key features, and analyze the matching results, including:
[0016] Extract key features from the self-matched PPP-B2b messages to obtain the first key features;
[0017] Use the first key features to train a support vector machine model, where the SVM model is used to distinguish different data types or categories according to the analyzed and learned features;
[0018] Compare the results obtained by analyzing the first key features in the messages according to the SVM model with the patterns learned in the training stage to determine the best matching results;
[0019] Analyze the matching results provided by the SVM model, verify the accuracy of the matching, and then evaluate the performance of the SVM model.
[0020] Preferably, perform data quality control on the GNSS raw observation data of the receiver at fixed time intervals for a period of time, including:
[0021] Preprocess the GNSS raw observation data of the receiver at fixed time intervals, including removing outliers, filling missing values, and data smoothing, to obtain the raw error data for error model construction;
[0022] Perform gross error rejection and cycle slip detection on the pseudorange / carrier phase observations respectively, and screen out the qualified observation data according to the preset data quality standards to provide input items for model establishment.
[0023] Preferably, construct an error model including error terms, and optimize the error model using the nonlinear least squares method, including:
[0024] Based on the raw error data, through the identification and parameterization of error sources, define the error terms of ionospheric delay, tropospheric delay, satellite and receiver hardware delay, construct an error model, and make the solution parameter θ minimize S(θ);
[0025] Use the Gauss-Newton method to perform iterative solution on the error model and update the parameter estimation until it converges to the minimum objective function.
[0026] In a second aspect, the present application also provides a positioning and timing system based on PPP-B2b, including:
[0027] Matching module: It is used to receive PPP-B2b messages and GNSS raw observation data. Each information type of the PPP-B2b message performs self-matching through the data version number, extracts key features from the self-matched PPP-B2b messages, and uses a support vector machine to learn and match the key features, analyze the matching results, and associate the matching results with the broadcast ephemeris. The data version number includes SSR, IODP, IODN, and IOD Corr, and the key features include the data version numbers of different information types;
[0028] Calculation module: It is used to calculate the satellite position and satellite clock error based on the matching results, using PPP-B2b orbit and clock error correction data, construct an error model containing error terms, and optimize the error model using the nonlinear least squares method. The error terms include ionospheric delay, tropospheric delay, satellite and receiver hardware delays;
[0029] Establishment module: It is used to perform data quality control on the GNSS raw observation data obtained at fixed time intervals by the receiver for a period of time, and establish a dual-frequency ionosphere-free combination model using the calculated satellite position and satellite clock error;
[0030] Timing module: It is used to perform parameter estimation using the Kalman filter according to the dual-frequency ionosphere-free combination model to complete real-time positioning and timing.
[0031] In a third aspect, the present application also provides a positioning and timing device based on PPP-B2b, including:
[0032] A memory, used to store computer programs;
[0033] A processor, used to implement the steps of the positioning and timing method based on PPP-B2b when executing the computer program.
[0034] In a fourth aspect, the present application also provides a readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, it implements the steps of the above positioning and timing method based on PPP-B2b.
[0035] The beneficial effects of the present invention are:
[0036] The present invention proposes an improved positioning and timing method based on PPP-B2b. This method uses PPP-B2b correction information to flexibly adjust the residual quality control threshold according to the actual situation. Without being connected to the network, it not only realizes single-station real-time high-precision positioning, but also realizes the synchronization of the local clock and the satellite system clock through the phase modulation method.
[0037] Based on broadcast ephemeris, the present invention uses the BeiDou-3 PPP-B2b correction message to calculate the accurate satellite position and satellite clock error; then, for the GNSS raw observation data (carrier phase, pseudorange), the quality control of the observation data is carried out; then, for the satellites with good observation data, an ionosphere-free dual-frequency model is established using the accurate satellite position and satellite clock error; finally, Kalman filtering is used for parameter estimation, and the positioning and timing results are obtained through the quality control of the a posteriori residuals of the filtering. It not only realizes PPP positioning but also realizes single-station timing service, and the synchronization between the local clock and the satellite system clock is completed by modulating the phase using the receiver clock error. Through the present invention, the quality control threshold of the residuals is flexibly adjusted according to the actual situation to achieve high-precision positioning and timing. Compared with the traditional residual quality control method with fixed parameters, the proposed method can effectively improve the positioning and timing accuracy.
[0038] Other features and advantages of the present invention will be described in the subsequent specification, and, in part, will be obvious from the specification, or can be understood by implementing the embodiments of the present invention. The objectives and other advantages of the present invention can be achieved and obtained through the structures specifically pointed out in the written specification, claims, and drawings. Brief Description of the Drawings
[0039] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following will briefly introduce the drawings required for use in the embodiments. It should be understood that the following drawings only show some embodiments of the present invention, and therefore should not be regarded as a limitation of the scope. For those of ordinary skill in the art, without creative efforts, other related drawings can also be obtained based on these drawings.
[0040] Figure 1 It is a schematic flow chart of a positioning and timing method based on PPP-B2b described in the embodiments of the present invention;
[0041] Figure 2 It is a schematic structural diagram of a positioning and timing system based on PPP-B2b described in the embodiments of the present invention;
[0042] Figure 3 It is a schematic structural diagram of a positioning and timing device based on PPP-B2b described in the embodiments of the present invention;
[0043] Figure 4 It is a receiver clock error graph in a positioning and timing experiment based on PPP-B2b described in the embodiments of the present invention.
[0044] In the figure: 701, matching module; 702, calculation module; 703, establishment module; 704, timing module; 800, positioning and timing device based on PPP-B2b; 801, processor; 802, memory; 803, multimedia component; 804, I / O interface. Detailed implementation manners
[0045] To make the objectives, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are some but not all of the embodiments of the present invention. The components of the embodiments of the present invention usually described and illustrated in the accompanying drawings here can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the claimed present invention, but merely represents selected embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts fall within the scope of protection of the present invention.
[0046] It should be noted that similar reference numerals and letters denote similar items in the following drawings. Therefore, once an item is defined in one drawing, it does not need to be further defined and explained in subsequent drawings. At the same time, in the description of the present invention, the terms "first", "second", etc. are only used for differential description and cannot be understood as indicating or implying relative importance.
[0047] The objective of the present invention is to overcome the deficiencies of the prior art and provide an improved positioning and timing method based on PPP-B2b. Different from the conventional positioning method based on PPP-B2b, the method of the present invention can achieve real-time timing function and can flexibly adjust the residual quality control threshold according to actual situations, effectively improving the positioning and timing accuracy.
[0048] Embodiment 1:
[0049] This embodiment provides a positioning and timing method based on PPP-B2b.
[0050] See Figure 1 , which shows that this method includes step S100, step S200, step S300, step S400 and step S500.
[0051] S100. Receive PPP-B2b messages and GNSS raw observation data. Each information type of the PPP-B2b message performs self-matching through the data version number, extract key features from the self-matched PPP-B2b messages, and use a support vector machine to learn and match the key features, analyze the matching results, and associate the matching results with the broadcast ephemeris, where the data version number includes SSR, IODP, IODN, and IOD Corr, and the key features include the data version numbers of different information types.
[0052] It is understandable that in this step S100, it includes S101, S102, S103 and S104, which include:
[0053] S101. Traverse the saved satellite mask messages and clock difference correction messages, and judge whether the SSR and IODP of the satellite mask message are the same as those of the clock difference correction message. If they are the same, save the corresponding satellite and proceed to the next step; if not, continue to judge.
[0054] S102. Traverse the saved orbit correction messages and inter-code bias correction messages, and select the orbit correction messages and inter-code bias correction messages with the same SSR as the one successfully matched in the previous step to form a final pairing group.
[0055] S103. Based on the final pairing group, for the satellites with PPP-B2b correction messages, judge whether the IODCorr in the orbit correction message is the same as the IOD Corr in the clock difference correction message. If they are the same, save the corresponding satellite orbit, clock difference correction and inter-code bias data, and proceed to the next step.
[0056] S104. For all the satellites saved in the previous step, judge whether the IODN in each satellite's orbit correction message is the same as the known broadcast ephemeris IODC. If they are the same, continue to judge whether the satellite orbit and clock difference correction data exceed the available validity period. If not, calculate the satellite position and satellite clock difference using the orbit correction and clock difference correction data.
[0057] It should be noted that the key features are the data version number, the carrier-to-noise ratio of the satellite signal and the signal-to-noise ratio of the observation value. In particular, the orbit correction and clock difference correction data are respectively represented as δO and C0, and δO = [δO radial δO along δO cross T which are the orbit correction numbers in the along-cross-radial (ACR) satellite-fixed coordinate system.
[0058] It should be noted that in step S100, it also includes S105, S106, S107 and S108, which include:
[0059] S105. Extract the key features from the self-matched PPP-B2b messages to obtain the first key features.
[0060] S106. Use the first key features to train a support vector machine model, where the SVM model is used to distinguish different data types or categories according to the features through analysis and learning.
[0061] S107. Compare the result obtained by analyzing the first key feature in the message according to the SVM model with the patterns learned during the training phase to determine the best matching result;
[0062] S108. Analyze the matching result provided by the SVM model, verify the accuracy of the match, and then evaluate the performance of the SVM model.
[0063] It can be understood that, first, key features are extracted from the PPP - B2b message, and these features may include but are not limited to data version numbers (SSR, IODP, IODN, and IOD Corr), etc. These features help to describe the characteristics of the message and are used in the subsequent matching process; after training, the SVM model will be used to classify and match new PPP - B2b messages. In this step, the SVM model analyzes the features in the message and compares them with the patterns learned during the training phase to determine the best match; in terms of analyzing the matching result, evaluate the performance of the SVM model, including metrics such as its classification accuracy, precision, recall rate, etc. These metrics help to understand the performance of the model in actual applications. For cases with matching errors, conduct in - depth analysis to identify possible reasons. This may include checking for outliers in the data, limitations of the model, or deficiencies in the feature extraction process. Through these three steps, the SVM can be effectively used to perform feature matching on PPP - B2b messages and ensure the accuracy and efficiency of the matching process.
[0064] S200. Based on the matching result, use the PPP - B2b orbit and clock offset correction data to calculate the satellite position and satellite clock offset, construct an error model containing error terms, and optimize the error model using the nonlinear least - squares method, where the error terms include ionospheric delay, tropospheric delay, satellite and receiver hardware delays.
[0065] It can be understood that in this step, the calculation formula for the satellite position is:
[0066] X orbit =X broadcast -δX
[0067] where X orbit is the accurate position of the satellite in the Earth - centered Earth - fixed coordinate system after orbit correction, X broadcast is the satellite position in the ECEF coordinate system calculated from the broadcast ephemeris, and δX is the orbit correction number of the satellite in the ECEF coordinate system; it needs to be obtained by converting coordinates using the PPP - B2b orbit correction data δO:
[0068] δX=[e radial e along e cross ·δO
[0069] where, [eradial e along e cross respectively correspond to the unit vectors in the radial, tangential, and normal directions, denoted as:
[0070]
[0071] e along = e cross × e radial
[0072] where r is the satellite position vector calculated from the broadcast ephemeris; is the satellite velocity vector calculated from the broadcast ephemeris.
[0073] The calculation formula for the satellite clock bias is:
[0074]
[0075] where t b is the satellite clock bias calculated using the broadcast ephemeris, t s is the satellite clock bias after PPP - B2b clock bias correction, c is the speed of light, and C0 is the PPP - B2b clock bias correction data.
[0076] In step S200, it also includes:
[0077] Based on the original error data, through the identification and parameterization of error sources, error terms for ionospheric delay, tropospheric delay, satellite and receiver hardware delay are defined, an error model is constructed, and the solution parameter θ is made to minimize S(θ). Its calculation formula is as follows:
[0078]
[0079] where S(θ) is the objective function, y i is the observed data, x i is the corresponding independent variable, f is the non - linear model function, θ is the model parameter vector, and n is the number of observed data;
[0080] Use the Gauss - Newton method to iteratively solve the error model and update the parameter estimation until it converges to minimize the objective function.
[0081] It should be noted that, based on the satellite orbit and clock offset information provided by the PPP-B2b message, after data preprocessing, including removing outliers, filling in missing values, data smoothing, etc., the original error data for error model construction is obtained; through the above formula, our goal is to solve for the parameter S(θ) to be minimized; and according to the constructed error model, through iterative solution and parameter estimation, using non-linear least squares optimization algorithms such as the Gauss-Newton method or the Levenberg-Marquardt algorithm, etc., to gradually update the parameter estimation until it converges to the minimized objective function.
[0082] S300. Perform data quality control on the GNSS raw observation data at fixed time intervals of the receiver over a period of time, and use the calculated satellite positions and satellite clock offsets to establish a dual-frequency ionosphere-free combination model.
[0083] It should be noted that perform data quality control on the GNSS raw observation data (pseudorange / carrier phase) of the receiver with information once every 6 seconds over a period of time, and use the accurate satellite positions and clock offsets calculated in the above steps to establish a dual-frequency ionosphere-free combination model.
[0084] It can be understood that in this step S300, it includes S301, S302, S303, S304, and S305, where:
[0085] S301. Preprocess the GNSS raw observation data at fixed time intervals of the receiver, including removing outliers, filling in missing values, and data smoothing, to obtain the original error data for error model construction;
[0086] S302. Perform gross error rejection and cycle slip detection on the pseudorange / carrier phase observations respectively, and according to the preset data quality standards, screen out the qualified observation data to provide input items for model establishment.
[0087] S303. Process the GNSS raw observation data to obtain the preliminary processing results, where the GNSS raw observation data includes pseudorange observations and carrier phase observations. The calculation formula for processing the pseudorange observations using the gross error rejection method is as follows:
[0088] |P1 - P2| > 50
[0089] where P1 and P2 respectively represent the pseudoranges of two frequency points. If the absolute value of the difference between the pseudoranges of a certain satellite at two frequency points is greater than 50m, it is considered that the observation of this satellite at this epoch is invalid;
[0090] It can be understood that data quality control is an important factor affecting the PPP accuracy. It is crucial to perform relevant processing on the observation data in real time before parameter estimation.
[0091] Carrier phase observables may experience cycle slips, and the cycle slip detection uses the TurboEdit algorithm; the TurboEdit algorithm constructs GF (Geometry-free) combinations and MW (Melbourne Wubben) combinations for cycle slip detection.
[0092] The calculation formula for applying the TurboEdit algorithm to carrier phase observables is as follows:
[0093] L GF = λ1L1 - λ2L2
[0094] where L GF is the GF combination observable, L1 and L2 are the carrier observations of two frequency points, λ1 and λ2 are the wavelengths corresponding to the frequencies;
[0095]
[0096] where N MW is the MW wide-lane ambiguity, N1 and N2 are the ambiguities of two frequency points, f1 and f2 are the corresponding frequencies, L1 and L2 are the carrier observations of two frequency points, λ1 and λ2 are the wavelengths corresponding to the frequencies, and P1 and P2 respectively represent the pseudoranges of the two frequency points;
[0097] It can be understood that in this step, the changes in the GF combination observables and the MW combination ambiguities between adjacent epochs are not significant. If the difference between the GF combination observables of adjacent epochs or the difference between the MW combination ambiguities exceeds a certain threshold, it is considered that a cycle slip has occurred; otherwise, the carrier phase data is considered normal, that is:
[0098]
[0099] where L GF,d = L GF,k - L GF,k-1 ,N MW,d = N MW,k - N MW,k-1 ,k represents the kth epoch, L GF,k is the GF combination observable of the kth epoch, L GF,k-1 is the GF combination observable of the (k - 1)th epoch, L GF,d is the difference between the GF combination observables of two adjacent epochs, th GF is the GF combination threshold; N MW,k is the MW wide-lane ambiguity of the kth epoch, N MW,k-1 is the MW wide-lane ambiguity of the (k - 1)th epoch, N MW,d is the difference between the MW wide-lane ambiguities of two adjacent epochs, th MW is the MW combination ambiguity threshold;
[0100] S304. Establish a dual-frequency ionosphere-free combination model using the satellite position, clock error, and preliminary processing results:
[0101]
[0102] Among them, f1 and f2 are the frequencies of two frequency points, P IF is the pseudorange observation value after combining P1 and P2, L IF is the phase observation value after combining L1 and L2, dt r is the deviation of the receiver clock relative to the satellite system time, that is, the receiver clock error, t s is the satellite clock error, δ trop is the tropospheric delay, c is the speed of light, λ IF represents the ionosphere-free combination wavelength, N IF is the ionosphere-free combination ambiguity, ε P,IF and ε L,IF respectively represent the noises of the dual-frequency ionosphere-free combination pseudorange and phase observation values, is the geometric distance between the receiver and the satellite;
[0103] S305. According to the coordinates [x r y r z r of the receiver and the satellite position X orbit =[x s y s z s , the calculation formula is as follows:
[0104]
[0105] In the formula, is the geometric distance between the receiver and the satellite, [x r y r z r is the approximate coordinate of the receiver, [x s y s z s is the satellite position.
[0106] S400. According to the dual-frequency ionosphere-free combination model, use Kalman filtering for parameter estimation to complete real-time positioning and timing.
[0107] 1) It can be understood that in this step, the linearization of the observation model:
[0108] The prerequisite for using Kalman filtering is that the observation equation is linear, while the observation model established in the above steps is non-linear. Therefore, linearization processing is required before applying Kalman filtering, and the observation model is rewritten as follows:
[0109]
[0110] where p IF and l IF are respectively the combined pseudorange and the phase observation value minus the geometric distance between the receiver and the satellite, the satellite clock error, and various error corrections (tropospheric delay, relativistic effect, phase winding, earth rotation correction, etc.); δr is the receiver coordinate increment; M trop,w represents the tropospheric wet delay projection function, and its calculation adopts the Saastamoinen model; δ trop,w is the tropospheric wet delay in the zenith direction; e is calculated as follows according to the approximate receiver coordinates [x r y r z r and the accurate satellite position X orbit = [x s y s z s :
[0111] e = [α β γ]
[0112]
[0113] It can be seen from the linearized observation model that the parameters to be estimated include the receiver coordinate increment δr, the receiver clock error dt r , the tropospheric wet delay δ trop,w in the zenith direction, and the ambiguity N IF , which are expressed as follows:
[0114]
[0115] where n is the number of satellites, and each satellite has an ambiguity parameter.
[0116] 2) Based on the linearized observation model, the observation equation is expressed as:
[0117]
[0118] where P and L are vectors composed of p IF and l IF of n BDS-3 satellites; H is the observation matrix, which is obtained by taking the partial derivative of the vector to be estimated according to the linearized observation model; ε P and ε L represent vectors composed of ε P,IF and ε L,IF of n BDS-3 satellites, specifically as follows:
[0119]
[0120] where and The values obtained by subtracting the satellite-to-ground distance and various errors from the combined pseudorange and carrier phase of n satellites respectively, and The combined pseudorange noise and carrier phase noise of n satellites respectively, is the tropospheric wet delay projection of n satellites.
[0121] 3) Based on the above observation equations, the Kalman filtering algorithm is used for filtering estimation.
[0122] 4) Quality control is performed on the filtering estimation results:
[0123] Quality control is performed on the filtering estimation results using the a posteriori residuals of the filter. The residual calculation is as follows:
[0124] V = L - Hx
[0125] Quality analysis is performed on the maximum residuals of the pseudorange and carrier phase respectively. If the maximum residual of the pseudorange / carrier phase is greater than a certain threshold, it is considered that there is a gross error. After removing the corresponding satellite, filtering is performed again until all residuals are less than the threshold, which is considered that the filtering is successful, that is, the following formula is satisfied:
[0126]
[0127] Among them, V P,max is the maximum residual of the pseudorange, V L,max is the maximum residual of the carrier phase, th P and th L are the control thresholds of the pseudorange and carrier phase respectively, and the result of the filtering is the positioning and timing result.
[0128] Usually, th P 、th L are constants. However, in practical engineering applications, a set of th P 、th L is difficult to meet the requirements of various environments and long-term positioning and timing. Therefore, the present invention proposes to appropriately adjust th P 、th L according to the actual situation, and it is confirmed that by appropriately adjusting th P 、th L the positioning and timing accuracy is greatly improved:
[0129] Among them, in this embodiment, the specific adjustment strategy of the thresholds th P 、th L is as follows:
[0130] The standard deviation (STD) is statistically calculated for the original observations of a certain number of epochs m after being processed by the double-difference method. Assume that the pseudorange / carrier phase of the i-th epoch is P i 、L i, the pseudorange / carrier phase at the (i - 1)-th epoch is P i-1 , L i-1 , the pseudorange / carrier phase at the (i - 2)-th epoch is P i-2 , L i-2 , using a sliding window of m epochs, the pseudorange / carrier phase is processed by the double-difference method and the standard deviation (STD) is calculated.
[0131] The double-difference method formula is as follows: (taking pseudorange as an example only, the carrier phase is similar)
[0132] dP i = P i - P i-1
[0133] dP i-1 = P i-1 - P i-2
[0134] ddP i = dP i - dP i-1
[0135] where, dP i is the single-difference value of the pseudorange at the i-th epoch, dP i-1 is the single-difference value of the pseudorange at the (i - 1)-th epoch, and ddP i is the double-difference value of the pseudorange at the i-th epoch.
[0136] Next, calculate the standard deviation (STD) for the processed double-difference value of the pseudorange ddP i :
[0137]
[0138] where, P STD is the standard deviation of the double-difference of the pseudorange, ddP i is the double-difference value of the pseudorange at the i-th epoch, is the average value of the double-difference of the pseudorange for m epochs, m is the number of epochs, and the value of th P is determined according to the standard deviation of the double-difference of the pseudorange P STD :
[0139]
[0140] The above is only the algorithm steps for one epoch (sampling time). The receiver position estimated by Kalman filtering is the positioning result, and the estimated receiver clock offset is the timing result. Phase adjustment (phase synchronization) can be performed according to the timing result to achieve the synchronization of the local clock and the satellite system clock. The receiver position and receiver clock offset can be estimated iteratively according to the above steps for multiple epochs (fixed time interval) to achieve single-station real-time positioning and timing.
[0141] In some embodiments, to evaluate the performance of the improved PPP-B2b-based positioning and timing method, it is compared with the positioning and timing results of a commercial Zhongsen PPP receiver (MT0303T1). The specific experimental process is as follows:
[0142] The experimental time was from 12:00:00 on August 27, 2024 to 20:00:00 the next day (UTC). The location was on the roof of a building in downtown Chengdu. The antenna was connected to the Sinan K823 receiver and the Zhongsen PPP receiver through a power splitter for zero-baseline measurement. The Sinan K823 receiver was used to obtain original observation information for real-time positioning and timing, and the Zhongsen receiver saved the real-time PPP positioning results as the positioning reference value. At the same time, the seconds output by the Sinan K823 receiver and the seconds output by the Zhongsen receiver were connected to a multi-channel counter to analyze the timing accuracy. Since there is a certain convergence time for the proposed positioning method, the results 0.5 hours after the start of the experiment were selected for positioning accuracy evaluation in this experiment, and the evaluation time was 7.5 hours, as shown in Table 1:
[0143] Table 1 Statistical table of positioning accuracy in the positioning experiment
[0144]
[0145] Table 1 gives the RMS statistical values of the positioning error sequences of the PPP-B2b positioning and timing method in the four dimensions of north-south, east-west, vertical, and 3D. In addition, Figure 4 the receiver clock error curve and the RMS statistical value of the proposed method are given. It can be seen that the positioning accuracy of the proposed method can reach the centimeter level, and the timing accuracy reaches 5 ns, with high positioning and timing accuracy, and can be widely applied to the military field without network communication environment.
[0146] In summary, the present invention provides an improved PPP-B2b-based positioning and timing method. First, the proposed method is based on broadcast ephemeris, uses the Beidou-3 PPP-B2b correction message to calculate the accurate satellite position and satellite clock error; then performs observation data quality control on the GNSS original observation data (carrier phase, pseudorange); then for satellites with good observation data, uses the accurate satellite position and satellite clock error to establish a dual-frequency ionosphere-free model; finally, uses Kalman filtering for parameter estimation, and obtains the positioning and timing results through post-filtering residual quality control. The present invention not only realizes PPP positioning, but also realizes single-station timing service, and synchronizes the local clock with the satellite system clock by modulating the phase using the receiver clock error. Through the present invention, the residual quality control threshold is flexibly adjusted according to the actual situation to achieve high-precision positioning and timing. Compared with the traditional fixed-parameter residual quality control method, the proposed method can effectively improve the positioning and timing accuracy.
[0147] Embodiment 2:
[0148] As shown Figure 2 in the figure, this embodiment provides a positioning and timing system based on PPP-B2b. Refer to Figure 2 the following for details. The system includes:
[0149] A matching module 701: configured to receive PPP-B2b packets and GNSS raw observation data. Each information type of the PPP-B2b packet performs self-matching through a data version number, extracts key features from the self-matched PPP-B2b packets, learns and matches the key features using a support vector machine, analyzes the matching results, and associates the matching results with broadcast ephemeris. The data version number includes SSR, IODP, IODN, and IOD Corr, and the key features include data version numbers of different information types;
[0150] A calculation module 702: configured to calculate satellite positions and satellite clock offsets based on the matching results, using PPP-B2b orbit and clock offset correction data, construct an error model including error terms, and optimize the error model using the nonlinear least squares method. The error terms include ionospheric delay, tropospheric delay, satellite and receiver hardware delays;
[0151] An establishment module 703: configured to perform data quality control on the GNSS raw observation data obtained at fixed time intervals by the receiver over a period of time, and establish a dual-frequency ionosphere-free combination model using the calculated satellite positions and satellite clock offsets;
[0152] A timing module 704: configured to perform parameter estimation using the Kalman filter according to the dual-frequency ionosphere-free combination model to complete real-time positioning and timing.
[0153] Specifically, the matching module 701 includes:
[0154] An extraction unit: configured to extract key features from the self-matched PPP-B2b packets to obtain first key features;
[0155] A training unit: configured to train a support vector machine model using the first key features, where the SVM model is used to distinguish different data types or categories according to the analyzed and learned features;
[0156] A comparison unit: configured to compare the results obtained by analyzing the first key features in the packet according to the SVM model with the patterns learned during the training phase to determine the best matching result;
[0157] A matching unit: configured to analyze the matching results provided by the SVM model, verify the accuracy of the matching, and further evaluate the performance of the SVM model.
[0158] Specifically, the establishment module 703 includes:
[0159] Pretreatment unit: used to preprocess the GNSS raw observation data at fixed time intervals of the receiver, including removing outliers, filling in missing values, and data smoothing, to obtain the raw error data for error model construction;
[0160] Screening unit: used to respectively perform gross error rejection and cycle slip detection on the pseudorange / carrier phase observations, and screen out the qualified observation data according to the preset data quality standards, providing input items for model establishment.
[0161] Specifically, the calculation module 702 includes:
[0162] Error construction unit: used to, based on the raw error data, through the identification and parameterization of error sources, define the error terms of ionospheric delay, tropospheric delay, satellite and receiver hardware delays, construct an error model, and make the solution parameter θ minimize S(θ), and its calculation formula is as follows:
[0163]
[0164] In the formula, S(θ) is the objective function, y i is the observation data, x i is the corresponding independent variable, f is the non-linear model function, θ is the model parameter vector, and n is the number of observation data;
[0165] Solution and update unit: used to iteratively solve the error model using the Gauss-Newton method and update the parameter estimation until convergence to the minimized objective function.
[0166] Specifically, the establishment module 703 includes:
[0167] Preliminary processing unit: used to process the GNSS raw observation data to obtain the preliminary processing result, where the GNSS raw observation data includes pseudorange observations and carrier phase observations. For the pseudorange observations, gross error rejection is adopted, and the calculation formula is as follows:
[0168] |P1 - P2| > 50
[0169] where P1 and P2 respectively represent the pseudoranges of two frequency points. If the absolute value of the difference between the pseudoranges of two frequency points of a certain satellite is greater than 50m, it is considered that the observation of this satellite at this epoch is invalid;
[0170] For the carrier phase observations, the calculation formula using the TurboEdit algorithm is as follows:
[0171] L GF = λ1L1 - λ2L2
[0172] where L GFis the GF combined observable, L1 and L2 are the carrier observations of two frequency bands, and λ1 and λ2 are the wavelengths corresponding to the frequencies;
[0173]
[0174] where N MW is the MW wide-lane ambiguity, N1 and N2 are the ambiguities of two frequency bands, f1 and f2 are the corresponding frequencies, L1 and L2 are the carrier observations of two frequency bands, λ1 and λ2 are the wavelengths corresponding to the frequencies, and P1, P2 respectively represent the pseudorange of two frequency bands;
[0175]
[0176] where L GF,d = L GF,k - L GF,k-1 , N MW,d = N MW,k - N MW,k-1 , k represents the kth epoch, L GF,k is the GF combined observable of the kth epoch, L GF,k-1 is the GF combined observable of the (k - 1)th epoch, L GF,d is the difference between the GF combined observables of two adjacent epochs, th GF is the GF combined threshold; N MW,k is the MW wide-lane ambiguity of the kth epoch, N MW,k-1 is the MW wide-lane ambiguity of the (k - 1)th epoch, N MW,d is the difference between the MW wide-lane ambiguities of two adjacent epochs, th MW is the MW combined ambiguity threshold;
[0177] Establishment unit: used to establish a dual-frequency ionosphere-free combination model by using satellite position, clock error and preliminary processing results:
[0178]
[0179] where P IF is the combined pseudorange observation value of P1 and P2, L IF is the combined phase observation value of L1 and L2, dt r is the deviation of the receiver clock relative to the satellite system time, that is, the receiver clock error, t s is the satellite clock error, δ trop is the tropospheric delay, c is the speed of light, λ IF represents the ionosphere-free combination wavelength, N IF is the ionosphere-free combination ambiguity, ε P,IF and ε L,IF respectively represent the noises of the dual-frequency ionosphere-free combination pseudorange and phase observations, is the geometric distance between the receiver and the satellite;
[0180] Calculation unit: for calculating according to the coordinates [x r y r z r of the receiver and the satellite position X orbit =[x s y s z s , the calculation formula is as follows:
[0181]
[0182] In the formula, is the geometric distance between the receiver and the satellite, [x r y r z r is the approximate coordinate of the receiver, [x s y s z s is the satellite position.
[0183] It should be noted that for the system in the above embodiment, the specific manners in which each module performs operations have been described in detail in the embodiment of the method, and will not be elaborated here.
[0184] Embodiment 3:
[0185] Corresponding to the above method embodiment, in this embodiment, a positioning and timing device based on PPP-B2b is further provided. A positioning and timing device based on PPP-B2b described below can be correspondingly referred to the positioning and timing method based on PPP-B2b described above.
[0186] Figure 3 is a block diagram of a positioning and timing device 800 based on PPP-B2b shown according to an exemplary embodiment. As Figure 3 shown, the positioning and timing device 800 based on PPP-B2b includes: a processor 801 and a memory 802. The positioning and timing device 800 based on PPP-B2b further includes a multimedia component 803 and an I / O interface 804.
[0187] Among them, the processor 801 is used to control the overall operation of the PPP-B2b-based positioning and timing device 800 to complete all or part of the steps in the above PPP-B2b-based positioning and timing method. The memory 802 is used to store various types of data to support the operation of the PPP-B2b-based positioning and timing device 800. These data may include, for example, instructions for any application or method operating on the PPP-B2b-based positioning and timing device 800, as well as application-related data, such as PPP-B2b message data, raw observation data, and so on. The memory 802 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk, or optical disk. The multimedia component 803 may include a screen and an audio component. The screen can be, for example, a touch screen, and the audio component is used to output and / or input audio signals. For example, the audio component may include a microphone for receiving external audio signals. The received audio signal can be further stored and sent by the memory 802. The audio component also includes at least one speaker for outputting audio signals. The I / O interface 804 provides an interface between the processor 801 and other interface modules, and the above other interface modules can be a keyboard, a mouse, or buttons, etc. These buttons can be virtual buttons or physical buttons.
[0188] In an exemplary embodiment, the PPP-B2b-based positioning and timing device 800 can be implemented by one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components, and is used to execute the above PPP-B2b-based positioning and timing method.
[0189] In another exemplary embodiment, a computer-readable storage medium including program instructions is also provided. When the program instructions are executed by a processor, the steps of the above PPP-B2b-based positioning and timing method are implemented. For example, the computer-readable storage medium can be the above-mentioned memory 802 including program instructions, and the above program instructions can be executed by the processor 801 of the PPP-B2b-based positioning and timing device 800 to complete the above PPP-B2b-based positioning and timing method.
[0190] Embodiment 4:
[0191] Corresponding to the above method embodiment, a readable storage medium is also provided in this embodiment. A readable storage medium described below can be correspondingly referred to with a PPP-B2b-based positioning and timing method described above.
[0192] A computer program is stored on the readable storage medium. When the computer program is executed by a processor, the steps of the PPP-B2b-based positioning and timing method of the above method embodiment are implemented.
[0193] The readable storage medium can specifically be various readable storage media such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disc that can store program codes.
[0194] The above are only the preferred embodiments of the present invention and are not used to limit the present invention. For those skilled in the art, the present invention can have various changes and modifications. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included within the protection scope of the present invention.
[0195] As described above, it is only the specific implementation manner of the present invention. However, the protection scope of the present invention is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present invention can easily think of changes or substitutions, which should all be covered within the protection scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.
Claims
1. A positioning and timing method based on PPP-B2b, characterized in that: include: Receive PPP-B2b messages and GNSS raw observation data, self-match each information type of the PPP-B2b message through a data version number, extract key features from the self-matched PPP-B2b message, learn and match the key features using a support vector machine, analyze the matching results, and associate the matching results with the broadcast ephemeris, wherein the data version number includes SSR, IODP, IODN, and IOD Corr, and the key features include data version numbers of different information types; Based on the matching results, the satellite position and satellite clock error are calculated using the PPP-B2b orbit and clock correction data, and an error model including error terms is constructed. The error model is optimized using the nonlinear least squares method, where the error terms include ionospheric delay, tropospheric delay, and satellite and receiver hardware delay. The data quality control is performed on the original GNSS observation data obtained from the receiver at fixed time intervals over a period of time, and a dual-frequency ionosphere-free combination model is established using the calculated satellite positions and satellite clock errors; Based on the dual-frequency ionosphere-free combination model, Kalman filtering is used for parameter estimation to complete real-time positioning and timing.
2. The positioning and timing method based on PPP-B2b according to claim 1, characterized in that: Each information type of the PPP-B2b message is self-matched through the data version number, including: Traverse the saved satellite mask messages and clock correction messages to determine whether the SSR and IODP of the satellite mask message are the same as the SSR and IODP of the clock correction message. If they are the same, save the corresponding satellite and proceed to the next step. If they are not the same, continue to determine. Traverse the saved orbit correction messages and inter-code deviation correction messages, select the orbit correction message and inter-code deviation correction message that are consistent with the SSR successfully matched in the previous step, and form the final pairing group; Based on the final pairing group, for the satellites with PPP-B2b correction messages, determine whether the IOD Corr in the orbit correction message is the same as the IOD Corr in the clock correction message. If they are the same, save the corresponding satellite orbit, clock correction and inter-code deviation data and proceed to the next step; For all satellites saved in the previous step, determine whether the IODN in each satellite orbit correction message is the same as the known broadcast ephemeris IODC. If they are the same, continue to determine whether the satellite orbit and clock correction data exceed the available validity period. If not, use the orbit correction and clock correction data to calculate the satellite position and satellite clock error.
3. The positioning and timing method based on PPP-B2b according to claim 1, characterized in that: The key features are extracted from the self-matched PPP-B2b message, and the key features are learned and matched by a support vector machine, and the matching results are analyzed, including: Extracting key features from the self-matched PPP-B2b message to obtain a first key feature; Using the first key feature, a support vector machine model is trained, wherein the SVM model is used to analyze and learn to distinguish different data types or categories according to the feature; The result obtained by analyzing the first key feature in the message according to the SVM model is compared with the pattern learned in the training phase to determine the best matching result; Analyze the matching results provided by the SVM model, verify the accuracy of the matching, and then evaluate the performance of the SVM model.
4. The positioning and timing method based on PPP-B2b according to claim 1, characterized in that: The satellite position and satellite clock error are calculated by using the PPP-B2b orbit and clock error correction data. The calculation formula is as follows: The satellite position is calculated as: X orbit =X broadcast -δX Among them, X orbit is the position of the satellite in the Earth-centered fixed system after orbit correction, X broadcast is the satellite position in the ECEF coordinate system calculated by broadcast ephemeris, δX is the orbit correction number of the satellite in the ECEF coordinate system; The calculation formula of satellite clock error is: Among them, t b is the satellite clock error calculated using the broadcast ephemeris, t s is the satellite clock error after PPP-B2b clock error correction, c is the speed of light, and C0 is the PPP-B2b clock error correction data.
5. The positioning and timing method based on PPP-B2b according to claim 1, characterized in that: The data quality control of the GNSS raw observation data obtained at fixed time intervals by the receiver within a period of time includes: Preprocess the original GNSS observation data of the receiver at fixed time intervals, including removing outliers, filling missing values and data smoothing, to obtain the original error data for building the error model; The pseudorange / carrier phase observations are subjected to gross error elimination and cycle slip detection, and qualified observation data are screened out according to the preset data quality standards to provide input items for model building.
6. The positioning and timing method based on PPP-B2b according to claim 1, characterized in that: The error model including the error term is constructed and the error model is optimized by using the nonlinear least square method, which includes: Based on the original error data, after the error source identification and parameterization processing, the error terms of ionospheric delay, tropospheric delay, satellite and receiver hardware delay are defined, and the error model is constructed to solve the parameter θ so that S(θ) is minimized. The calculation formula is as follows: Where S(θ) is the objective function, y i is the observed data, x i is the corresponding independent variable, f is the nonlinear model function, θ is the model parameter vector, and n is the number of observations; The error model is iteratively solved using the Gauss-Newton method, and the parameter estimates are updated until convergence to minimize the objective function.
7. The positioning and timing method based on PPP-B2b according to claim 1, characterized in that: The data quality control is performed on the GNSS raw observation data obtained at fixed time intervals of the receiver within a period of time, and the calculated satellite positions and satellite clock errors are used to establish a dual-frequency ionosphere-free combination model, which includes: The GNSS original observation data is processed to obtain preliminary processing results, where the GNSS original observation data includes pseudo-range observations and carrier phase observations. The pseudo-range observations are subjected to gross error elimination, and the calculation formula is as follows: |P1-P2|>50 Among them, P1 and P2 represent the pseudoranges of two frequency points respectively. If the absolute value of the difference between the pseudoranges of two frequency points of a satellite is greater than 50m, the observation of the satellite in this epoch is considered invalid. The calculation formula of the carrier phase observation using the TurboEdit algorithm is as follows: L GF =λ1L1-λ2L2 Among them, L GF is the GF combined observation, L1 and L2 are the carrier observation values of two frequency points, λ1 and λ2 are the wavelengths of the corresponding frequencies; Among them, N MW is the MW wide lane ambiguity, N1 and N2 are the ambiguities of the two frequencies, f1 and f2 are the corresponding frequencies, L1 and L2 are the carrier observation values of the two frequencies, λ1 and λ2 are the wavelengths of the corresponding frequencies, and P1 and P2 represent the pseudoranges of the two frequencies respectively; Among them, L GF,d =L GF,k -L GF,k-1 , N MW,d =N MW,l -N MW,l-1 , k represents the kth epoch, L GF,k is the GF combined observation at the kth epoch, L GF,k-1 is the GF combined observation at the k-1th epoch, L GF,d is the difference between the GF combination observations of two adjacent epochs, th GF is the GF combination threshold; N MW,k is the MW widelane ambiguity at the kth epoch, N MW,k-1 is the MW widelane ambiguity at the k-1th epoch, N MW,d is the difference in MW wide lane ambiguity between two adjacent epochs, th MW is the MW combined ambiguity threshold; Using satellite positions, clock errors and preliminary processing results, a dual-frequency ionosphere-free combination model is established: in, f1 and f2 are the frequencies of two frequency points, P IF is the pseudo-range observation value after P1 and P2 are combined, L IF is the phase observation value after L1 and L2 are combined, dt r is the deviation of the receiver clock relative to the satellite system time, that is, the receiver clock error, t s is the satellite clock error, δ trop is the tropospheric delay, c is the speed of light, λ IF represents the ionosphere-free combined wavelength, N IF is the ionospheric-free combined ambiguity, ε P,IF and ε L,IF They represent the noise of the dual-frequency ionosphere-free combined pseudorange and phase observation values, is the geometric distance between the receiver and the satellite; According to the receiver coordinates [x r y r z r ] and satellite position X orbit =[x s y s z s The calculation formula of ] is as follows: In the formula, is the geometric distance between the receiver and the satellite, [x r y r z r ] is the approximate coordinate of the receiver, [x s y s z s ] is the satellite position.
8. A positioning and timing system based on PPP-B2b, based on the positioning and timing method based on PPP-B2b according to claim 1, characterized in that: include: Matching module: used for receiving PPP-B2b messages and GNSS original observation data, each information type of the PPP-B2b message is self-matched through the data version number, key features are extracted from the self-matched PPP-B2b message, and the key features are learned and matched by a support vector machine, the matching results are analyzed, and the matching results are associated with the broadcast ephemeris, wherein the data version number includes SSR, IODP, IODN and IOD Corr, wherein the key features include data version numbers of different information types; Calculation module: used to calculate satellite position and satellite clock error based on the matching results and PPP-B2b orbit and clock correction data, build an error model including error terms, and optimize the error model using nonlinear least squares method. The error terms include ionospheric delay, tropospheric delay, satellite and receiver hardware delay. Establishment module: used to perform data quality control on the original GNSS observation data obtained from the receiver at fixed time intervals over a period of time, and to establish a dual-frequency ionosphere-free combination model using the calculated satellite positions and satellite clock errors; Timing module: It is used to perform parameter estimation based on the dual-frequency ionosphere-free combination model using Kalman filtering to complete real-time positioning and timing.
9. A positioning and timing device based on PPP-B2b, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the positioning and timing method based on PPP-B2b as described in any one of claims 1 to 7 when executing the computer program.
10. A readable storage medium, characterized in that: The readable storage medium stores a computer program, and when the computer program is executed by a processor, the positioning and timing method based on PPP-B2b as claimed in any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Precision point positioning system and method based on PPP-B2b service
CN114280644A
Time synchronization method based on Beidou satellite
CN117215174A
Carrier real-time positioning method based on PPP-B2b signal
CN118169726A