A data processing method, device, apparatus, storage medium, and program product
By receiving and decoding the correction data products from the PPP-RTK server, and using the user's local approximate location and starting location to generate virtual observations for RTK calculation, the problem of frequent resetting of ambiguity parameters caused by base station location switching is solved, thus improving positioning accuracy and stability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-31
- Publication Date
- 2026-03-27
AI Technical Summary
Existing PPP-RTK technology frequently resets RTK ambiguity parameters during base station location switching, leading to a decrease in positioning accuracy. Furthermore, reducing the interpolation frequency of atmospheric correction products can affect correction accuracy.
By receiving SSR correction data products broadcast by the PPP-RTK server, atmospheric correction products are generated through decoding. Virtual observations are calculated using the user's local approximate location and starting location, and RTK calculations are performed to avoid the impact of base station location switching on ambiguity parameter updates.
It improves the stability and positioning accuracy of the RTK algorithm, reduces the accuracy decay of atmospheric correction products caused by the increase in baseline distance, and enhances the fixation rate and positioning stability of the user end.
Smart Images

Figure CN119881992B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of satellite positioning technology, in particular to a data processing method and device, computer equipment, computer readable storage medium and computer program product. BACKGROUND
[0002] PPP-RTK (Precise Point Positioning-Real Time Kinematic Positioning) technology uses relatively sparse ground stations to generate high-precision satellite precise products and atmospheric correction products, which can broadcast its correction numbers through low-orbit satellites, thereby providing real-time and continuous high-precision positioning services for the world. Due to its low cost, high precision, good privacy, and the natural attribute of perfect functional implementation, PPP-RTK technology has become the most suitable GNSS (Global Navigation Satellite Systems) positioning scheme for autonomous driving.
[0003] The mature RTK module (referring to the user end) on the market generally detects the base station position and grid ID, so as to determine whether the RTK ambiguity parameter needs to be updated. In order to ensure the RTK accuracy, the SSR2OSR (State Space Representation To Observation Space Representation) technology is currently used, which uses the position returned by the user end to interpolate the atmospheric correction product each time. The interpolated atmospheric correction product is theoretically consistent with the atmosphere of the user end, and the RTK accuracy will be the highest. However, the RTK algorithm will frequently reset the RTK ambiguity parameter due to frequent switching of the base station position, thereby greatly affecting its fixing. To solve this problem, one solution is to reduce the interpolation frequency of the atmospheric correction product, for example, interpolating the atmospheric correction product once every 5 kilometers. This can reduce the switching times of the base station position or grid ID, thereby reducing the frequency of resetting the RTK ambiguity parameter. However, this solution also brings another problem, that is, the correction accuracy of the atmospheric correction product may be reduced due to the increase of the interpolation interval, thereby affecting the positioning accuracy of the user end. SUMMARY
[0004] Therefore, the present application aims to provide a data processing method, device, computer equipment, computer readable storage medium and computer program product to solve at least one of the above technical problems.
[0005] In a first aspect, the application provides a data processing method, comprising: receiving an SSR correction number product broadcast by a PPP-RTK server; decoding the SSR correction number product; correcting satellite position and satellite clock obtained from broadcast ephemeris using the decoded data; generating an atmospheric correction product using the decoded data and a user's local approximate position; generating virtual observations using a user's initial position, the corrected satellite position and satellite clock, and the atmospheric correction product; and performing RTK calculation using the virtual observations.
[0006] In combination with the first aspect, in some optional embodiments, the virtual observations include an observation equation of the satellite i with respect to the user's local approximate position, an observation equation of the satellite i with respect to the user's local accurate position, an observation equation of the satellite j with respect to the user's local approximate position, and an observation equation of the satellite j with respect to the user's local accurate position.
[0007] In combination with the first aspect, in some optional embodiments, performing RTK calculation using the virtual observations includes: calculating a single-difference between the user's local approximate position and the user's local accurate position with respect to the satellite i and the satellite j respectively, and then calculating a double-difference between the satellite i and the satellite j; linearizing the equations obtained from the single-difference and the double-difference based on the user's initial position; solving the linearized equations using Kalman filtering to obtain a state vector; and calculating a high-precision coordinate of the user's local accurate position based on the state vector.
[0008] In combination with the first aspect, in some optional embodiments, the atmospheric correction product includes an ionospheric product and a tropospheric product; and generating the atmospheric correction product using the decoded data and the user's local approximate position includes: generating the ionospheric product using the decoded ionospheric polynomial coefficients and grid ionospheric residuals and the user's local approximate position; and generating the tropospheric product using the decoded tropospheric polynomial coefficients and grid tropospheric residuals and the user's local approximate position.
[0009] In combination with the first aspect, in some optional embodiments, the SSR correction number product includes GAD, OCB, STEC, and GTROP data; and decoding the SSR correction number product includes: decoding the GAD data to obtain geographical area information of a current region, including a region ID, a latitude, a longitude, and an altitude of a region origin, and a grid division of the region; decoding the OCB data to obtain orbit correction numbers, clock correction numbers, code bias correction numbers, and phase bias correction numbers of the satellites; decoding the STEC data to obtain ionospheric polynomial coefficients and grid ionospheric residuals; and decoding the GTROP data to obtain tropospheric polynomial coefficients and grid tropospheric residuals.
[0010] In combination with the first aspect, in some optional embodiments, before receiving the SSR correction number product broadcast by the PPP-RTK server, the method further comprises: calculating a user local approximate position based on the service area and the grid definition broadcast by the server; determining a current area based on the user local approximate position, and feeding back to the server to obtain the corresponding area product data including the SSR correction number product.
[0011] In the second aspect, the application provides a data processing device, which comprises: a data receiving module for receiving the SSR correction number product broadcast by the PPP-RTK server; a data decoding module for decoding the SSR correction number product; a first data calculation module for correcting the satellite position and satellite clock obtained from the broadcast ephemeris by using the decoded data; a second data calculation module for generating an atmospheric correction product by using the decoded data and a user local approximate position; a third data calculation module for generating virtual observations by using a user starting position, the corrected satellite position and satellite clock, and the atmospheric correction product; and an RTK solving module for performing RTK solving by using the virtual observations.
[0012] In the third aspect, the application provides a computer device comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the data processing method in any one of the embodiments of the first aspect when executing the computer program.
[0013] In the fourth aspect, the application provides a computer readable storage medium, which stores a computer program, and the steps of the data processing method in any one of the embodiments of the first aspect are implemented when the processor executes the computer program.
[0014] In the fifth aspect, the application provides a computer program product comprising a computer program, and the steps of the data processing method in any one of the embodiments of the first aspect are implemented when the processor executes the computer program.
[0015] Based on the above technical solutions, the data processing method, device, computer device, computer readable storage medium and computer program product provided by the application calculate the atmospheric correction product by using the user local approximate position close to the current position of the user, and calculate the virtual observations by using the user starting position, which can adapt to the RTK algorithm based on the NRTK strategy, so that the RTK algorithm does not need to consider the ambiguity parameter update problem caused by the switching of base station coordinates, and the precision of the atmospheric correction product will not be attenuated due to the lengthening of the baseline distance, thereby ensuring the precision of the atmospheric correction product and improving the fixing rate and stability of the user end. BRIEF DESCRIPTION OF DRAWINGS
[0016] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings needed to be used in the embodiments. It should be understood that the following drawings only show some of the embodiments of the present application, and therefore should not be regarded as limiting the scope, and for those of ordinary skill in the art, other related drawings can also be obtained without creative labor on the basis of these drawings.
[0017] Figure 1 An application environment diagram of a data processing method provided by the embodiments of the present application.
[0018] Figure 2 A flowchart of a data processing method provided by the embodiments of the present application.
[0019] Figure 3 A flowchart of a data decoding step provided by the embodiments of the present application.
[0020] Figure 4 A schematic diagram of a user position and a satellite position provided by the embodiments of the present application.
[0021] Figure 5 A structural block diagram of a data processing device provided by the embodiments of the present application.
[0022] Figure 6 An internal structure diagram of a computer device provided by the embodiments of the present application. DETAILED DESCRIPTION
[0023] The specific embodiments of the present application will be described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only some of the embodiments of the present application, rather than all the embodiments. Based on the description of the present application, all other embodiments obtained by those of ordinary skill in the art without creative labor fall within the scope of the present application.
[0024] The terms "comprise", "contain", "have" or any other variant thereof, are intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed, or further includes elements inherent to such process, method, article or device. Without more limitations, the element defined by the statement "comprising a" does not exclude the presence of other identical elements in the process, method, article or device comprising the element.
[0025] The terms "one embodiment," "an implementation," "as an example," "in an implementation," and the like describe a step, structure, material, or feature that is / are included in at least one embodiment or implementation of the present application. The description of such terms is not intended to limit the scope of the application to only the embodiment or implementation that includes the step, structure, material, or feature. Such terms can be used interchangeably with similar terms without limitation to the same embodiment or implementation. Embodiments and features of the present application can be combined with one another unless combined together is not feasible or the combined embodiments and features conflict with each other.
[0026] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs.
[0027] The data care method provided by the present application can be applied to an application environment as shown in the accompanying drawings, which involves a service end and a user end of a PPP-RTK positioning service. Before the data processing method of the present embodiment is executed, the communication interaction process between the service end and the user end is as follows: the user end sends a region list request to the service end (by means of HTTPS authentication); after receiving the region list request, the service end unidirectionally broadcasts information about service regions and grid definitions to the user end (by means of the HTTPS protocol); the user end calculates a local approximate position of the user by using the information, determines the current region by means of the local approximate position of the user, and then feeds back to the service end; after receiving the feedback from the user end, the service end unidirectionally broadcasts corresponding region product data to the user end (by means of the MQTT protocol). Figure 1
[0028] Among them, the service region refers to the geographical range in which the service end provides PPP-RTK positioning services for the user end. The grid is a network composed of horizontal and vertical lines with uniform intervals, which is usually used to identify various positions on a map. The grid definition is a specific description and specification of such a network, including the type, size, shape, numbering method, etc. of the grid. The region product data unidirectionally broadcasted by the service end to the user end includes but is not limited to SSR (State Space Representation) correction number products.
[0029] Further, the user end receives the SSR correction number products broadcasted by the PPP-RTK service end, decodes the SSR correction number products, corrects the satellite positions and satellite clocks obtained from the broadcast ephemeris by using the decoded data, generates atmospheric correction products by using the decoded data and the local approximate position of the user, generates virtual observations by using the initial position of the user, the corrected satellite positions and satellite clocks, and the atmospheric correction products, performs RTK calculation by using the virtual observations, and finally obtains high-precision position information.
[0030] It should be noted that the server-side is the backend server of the navigation and positioning system. This can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Optionally, this server can be a computing server belonging to the main control station or a computing server belonging to the monitoring station. The user end can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, etc., while portable wearable devices can include smartwatches, smart bracelets, head-mounted devices, etc.
[0031] The following describes a specific embodiment of a data processing method according to this application. Figure 2 This is a flowchart illustrating a data processing method provided in an embodiment of this application. This specification provides the operational steps of the method as shown in the embodiments or flowcharts, but based on conventional or non-inventive methods, more or fewer operational steps may be included. The order of steps listed in the embodiments is merely one possible execution order among many and does not represent the only possible execution order. In actual system or server product execution, the method can be executed sequentially or in parallel (e.g., in a parallel processor or multi-threaded processing environment) as shown in the embodiments or accompanying drawings. Specifically, as... Figure 2 As shown, this method is applied to Figure 1 Taking the user client in the example, the explanation includes the following steps:
[0032] Step S101: Receive the SSR correction data product broadcast by the PPP-RTK server.
[0033] In one embodiment, the SSR correction product includes GAD, OCB, STEC, and GTROP data. The GAD is an abbreviation of Geographic Area Definition, which means a geographic area division table. After decoding the GAD data, geographic area information such as a region ID, a latitude and longitude and an altitude of a region origin, and a grid division of the region can be obtained. The OCB is an abbreviation of Orbit, Clock, Bias (code bias and phase bias), which means orbit, clock, and bias (code bias and phase bias). After decoding the OCB data, orbit correction, clock correction, code bias correction, and phase bias correction of the satellite can be obtained. The STEC means Slant ionosphere correction, which means GNSS slant path ionosphere correction. After decoding the STEC data, ionosphere polynomial coefficients and grid ionosphere residuals can be obtained. The GTROP means Grid Troposphere Wet Correction, which means grid troposphere wet delay correction. After decoding the GTROP data, troposphere polynomial coefficients and grid troposphere residuals can be obtained.
[0034] It should be noted that the OCB, STEC, and GTROP data are directly related to the SSR correction data. The GAD data is not directly provided with the correction data, but plays an auxiliary and defining role in the application of the SSR correction data.
[0035] It should be noted that, since the embodiment is implemented in the user end, the SDK (Software Development Kit) interface in the user end can be used to receive the region product data broadcast by the service end.
[0036] In one embodiment, before receiving the SSR correction data broadcast by the PPP-RTK service end, the data processing method further includes the following steps: calculating a local approximate position of the user based on the service area and the grid definition broadcast by the service end according to the region list request of the user end; determining a current region based on the local approximate position of the user, and feeding back to the service end to obtain corresponding region product data, wherein the region product data includes the SSR correction product.
[0037] In step S102, the SSR correction product is decoded and processed.
[0038] In one embodiment, as shown in FIG. 4, the data processing method further includes the following steps: Figure 3As shown, the decoding process of the SSR correction number product includes: decoding the GAD data to obtain the geographic area information of the current area including the area ID, the longitude, latitude and altitude of the area origin, and the grid division of the area; decoding the OCB data to obtain the orbit correction number, the clock correction number, the code bias correction number, and the phase bias correction number of the satellite; decoding the STEC data to obtain the ionosphere polynomial coefficient and the grid ionosphere residual; decoding the GTROP data to obtain the troposphere polynomial coefficient and the grid troposphere residual.
[0039] In step S103, the satellite position and the satellite clock obtained from the broadcast ephemeris are corrected by using the decoded data.
[0040] In one embodiment, the orbit correction vector is calculated by using the orbit correction number obtained by decoding the OCB data, and the satellite position obtained from the broadcast ephemeris is corrected by using the orbit correction vector to obtain the accurate satellite position, wherein the orbit correction number includes the orbit radial correction number, the orbit tangential correction number, and the orbit normal correction number. The specific calculation process is as follows:
[0041] Orbit correction vector The calculation is performed by formula (1), and formula (1) is as follows:
[0042] (1)
[0043] wherein, represents the orbit radial unit vector, represents the orbit tangential unit vector, represents the orbit normal unit vector, represents the orbit radial correction number, represents the orbit tangential correction number, represents the orbit normal correction number.
[0044] Orbit tangential unit vector , orbit normal unit vector , orbit radial unit vector The calculation is performed by formula (2), (3), (4), and formula (2), (3), (4) are as follows:
[0045] (2)
[0046] (3)
[0047] (4)
[0048] wherein, r represents the satellite position obtained from the broadcast ephemeris, t represents the time, represents the satellite position vector, represents a satellite velocity vector.
[0049] Satellite position after orbit correction The calculation is performed by formula (5), which is:
[0050] (5)
[0051] wherein r represents a satellite position obtained from broadcast ephemeris, represents an orbit correction vector.
[0052] In one embodiment, the satellite clock is corrected by using the satellite clock correction obtained from the decoded OCB data, to obtain an accurate satellite clock.
[0053] Satellite clock after clock correction The calculation is performed by formula (6), which is:
[0054] (6)
[0055] wherein represents a satellite clock correction, represents a satellite clock obtained from broadcast ephemeris, represents the speed of light.
[0056] Step S104, using the decoded data and the user's local approximate position to generate an atmospheric correction product.
[0057] The atmospheric correction product includes ionospheric product and tropospheric product. In one embodiment, the atmospheric correction product is generated by using the decoded data and the user's local approximate position, including: using the ionospheric polynomial coefficients and the grid ionospheric residual obtained from the decoded STEC data and the user's local approximate position to generate an ionospheric product; using the tropospheric polynomial coefficients and the grid tropospheric residual obtained from the decoded GTROP data and the user's local approximate position to generate a tropospheric product.
[0058] wherein the ionospheric product is generated by using the ionospheric polynomial coefficients and the grid ionospheric residual obtained from the decoded STEC data and the user's local approximate position, and the specific calculation process is as follows:
[0059] The slant path ionospheric delay of the pseudorange measurement value is calculated by formula (7), which is:
[0060] (7)
[0061] The slant path ionospheric delay of the carrier phase measurement value is calculated by formula (8), which is:
[0062] (8)
[0063] wherein, represents the slant path ionospheric delay of satellite i at grid point k at time t, in meters; represents the slant path ionospheric delay of satellite i at grid point k at time t, in meters; represents the signal frequency corresponding to the pseudo-range or carrier phase observation, in Hz; represents the slant path ionospheric delay residual of satellite i, in TECU; represents the slant path ionospheric delay of satellite i, in TECU.
[0064] Further, the slant path ionospheric delay residual of satellite i is obtained by grid interpolation. When the decoded STEC data does not contain the grid ionospheric residual, is 0; when the decoded STEC data contains the grid ionospheric residual, the formula (9) is used for calculation, and the formula (9) is:
[0065] (9)
[0066] wherein, represents the weight of grid point k participating in the interpolation calculation, which can be obtained by the inverse distance method; represents the slant path ionospheric delay residual of satellite i at grid point k, in TECU; represents the number of grids participating in the interpolation calculation, which is 1-4.
[0067] Further, the slant path ionospheric delay of satellite i is related to the longitude and latitude of the user's local approximate position P1 and the longitude and latitude of the grid center point, and can be calculated by the ionospheric polynomial equation, so the formula (10), (11), (12) can be used for calculation, and the formula (10), (11), (12) are:
[0068] (10)
[0069] (11)
[0070] (12)
[0071] wherein, represents a polynomial function, represents the difference in longitude between the user's local approximate position P1 and the grid center point, represents the difference in latitude between the user's local approximate position P1 and the grid center point, longitude of the user's local approximate position P1, latitude of the user's local approximate position P1, longitude of the grid center point, latitude of the grid center point.
[0072] wherein, determined by the ionosphere correction type: when the ionosphere correction type is 0 (0-order correction), when the ionosphere correction type is 1 (1-order correction), when the ionosphere correction type is 2 (2-order correction), wherein, is an ionosphere polynomial coefficient.
[0073] In one embodiment, troposphere polynomial coefficients obtained by decoding GTROP data, grid troposphere residuals and the user's local approximate position are used to generate a troposphere product, and the specific calculation process is as follows:
[0074] The correction value of the slant-path troposphere delay wet component is calculated using formula (13), which is:
[0075] (13)
[0076] wherein, represents the slant-path troposphere wet delay correction value of satellite i at the user's local approximate position P1; represents the projection function of the troposphere delay wet component at the user's local approximate position P1, represents the satellite elevation angle; represents the zenith troposphere wet delay residual of the user's local approximate position P1, in meters; represents the zenith troposphere wet delay of satellite i, in meters.
[0077] Further, the zenith troposphere wet delay residual of the user's local approximate position P1 is obtained by grid interpolation, which can be calculated using formula (14):
[0078] (14)
[0079] wherein, represents the weight of grid point k participating in the interpolation calculation, which can be obtained by the inverse distance method; represents the zenith troposphere wet delay residual of the user's local approximate position P1 at grid point k; represents the number of grids participating in the interpolation calculation, which is 1-4.
[0080] Further, the zenith tropospheric wet delay of satellite i Related to the longitude and latitude of the user's local approximate position P1 and the longitude and latitude of the grid center point, the zenith tropospheric wet delay can be calculated by the tropospheric wet delay polynomial equation, so the formula (15) can be used to calculate in combination with the formula (11) and (12), and the formula (15) is as follows:
[0081] (15)
[0082] wherein, represents the difference between the longitude of the user's local approximate position P1 and the longitude of the grid center point, represents the difference between the latitude of the user's local approximate position P1 and the latitude of the grid center point. The tropospheric wet delay correction type is determined: when the tropospheric wet delay correction type is 0 (0-order correction), when the tropospheric wet delay correction type is 1 (1-order correction), when the tropospheric wet delay correction type is 2 (2-order correction), . Wherein, , , , is the tropospheric polynomial coefficient.
[0083] Step S105, using the user's starting position, the corrected satellite position and satellite clock, and the atmospheric correction product to generate virtual observations.
[0084] In one embodiment, the virtual observations include an observation equation of the user's local approximate position on satellite i, an observation equation of the user's local accurate position on satellite i, an observation equation of the user's local approximate position on satellite j, and an observation equation of the user's local accurate position on satellite j.
[0085] Specifically, as shown in Figure 4 , for satellite i, at time t, the observation equation (16) of the user's local approximate position P1 on satellite i is as follows:
[0086] (16)
[0087] wherein, represents the pseudo-range observation value of the user's local approximate position P1 on satellite i, represents the carrier phase observation value of the user's local approximate position P1 on satellite i, represents the geometric distance from the user's starting position P0 to satellite i, represents the clock error of satellite i, represents the ionospheric product calculated from the user's local approximate position P1 and satellite i data, represents the ionosphere product calculated from the user's local rough position P1 and satellite i data, represents the code bias of satellite i, represents the phase bias of satellite i.
[0088] At time t, the observation equation (17) of the user's local accurate position P2 to satellite i is:
[0089] (17)
[0090] wherein, represents the pseudo-range observation value of the user's local accurate position P2 to satellite i, represents the carrier phase observation value of the user's local accurate position P2 to satellite i, represents the geometric distance from the user's local accurate position P2 to satellite i, represents the receiver (i.e., user end) clock error, represents the clock error of satellite i, represents the ionosphere product calculated from the user's local accurate position P2 and satellite i data, represents the troposphere product calculated from the user's local accurate position P2 and satellite i data, represents the code bias of satellite i, represents the phase bias of satellite i, represents the integer ambiguity of satellite i.
[0091] Similarly, for satellite j, at time t, the observation equation (18) of the user's local rough position P1 to satellite j is:
[0092] (18)
[0093] wherein, represents the pseudo-range observation value of the user's local rough position P1 to satellite j, represents the carrier phase observation value of the user's local rough position P1 to satellite j, represents the geometric distance from the user's initial position P0 to satellite j, represents the clock error of satellite j, represents the ionosphere product calculated from the user's local rough position P1 and satellite j data, represents the troposphere product calculated from the user's local rough position P1 and satellite j data, represents the code bias of satellite j, represents the phase bias of satellite j.
[0094] At time t, the observation equation (19) of the user's local accurate position P2 to satellite j is:
[0095] (19)
[0096] wherein, represents the pseudo-range observation value of the user's local accurate position P2 to satellite j, represents the carrier phase observation value of the user's local accurate position P2 to satellite j, represents the geometric distance from the user's local accurate position P2 to satellite j, represents the clock error of the receiver (i.e., the user end), represents the clock error of satellite j, represents the ionospheric product calculated from the user's local accurate position P2 and satellite j data, represents the tropospheric product calculated from the user's local accurate position P2 and satellite j data, represents the code bias of satellite j, represents the phase bias of satellite j, represents the integer ambiguity of satellite j.
[0097] Step S106, RTK resolving is performed by using the virtual observation.
[0098] In one embodiment, the RTK resolving by using the virtual observation includes: based on the observation equations of the user's local approximate position and the user's local accurate position to satellite i, and the observation equations of the user's local approximate position and the user's local accurate position to satellite j, calculating the inter-station single difference between the user's local approximate position and the user's local accurate position for satellite i and satellite j respectively, and then calculating the inter-satellite single difference between satellite i and satellite j; based on the user's initial position, linearizing the equation obtained by the inter-station single difference and the inter-satellite single difference; using Kalman filter to resolve the linearized equation to obtain the state vector; and based on the state vector, calculating the high-precision coordinate of the user's local accurate position.
[0099] Specifically, the inter-station single difference between the user's local approximate position P1 and the user's local accurate position P2 for satellite i and satellite j is calculated respectively to eliminate the satellite clock error, the code bias, the phase bias, and the ionospheric error and the tropospheric error, and then the inter-satellite single difference between satellite i and satellite j is calculated to eliminate the clock error of the receiver (i.e., the user end), the code bias and the phase bias. The equation (20) can be obtained:
[0100] (20)
[0101] wherein, represents the residual error of the pseudo-range observation value after the inter-station single difference and the inter-satellite single difference between the user's local approximate position P1 and the user's local accurate position P2 for satellite i and satellite j, denotes the residual of the carrier phase observation after the inter-station single-difference and the inter-satellite single-difference between the user local rough position Pi and the user local accurate position P2 of satellite i and satellite j, and denotes the geometric distance from the user local rough position Pi to satellite i and satellite j, respectively, and denotes the geometric distance from the user local accurate position P2 to satellite i and satellite j, respectively, denotes the error term containing other unknown errors, denotes the integer ambiguity of satellite i, denotes the integer ambiguity of satellite j.
[0102] Further, based on the user initial position Po, the equation (18) is linearized to obtain the equation (21):
[0103] (21)
[0104] wherein, denotes the residual of the pseudo-range observation after linearization, denotes the residual of the carrier phase observation after linearization, denotes the partial derivative matrix of the geometric distance from the user local accurate position P2 to satellite i with respect to the position vector, denotes the partial derivative matrix of the geometric distance from the user local accurate position P2 to satellite j with respect to the position vector, denotes the correction of the position vector of the user local accurate position P2, denotes the error term containing other unknown errors, denotes the difference between the integer ambiguities of satellite i and satellite j of the user local accurate position P2. Wherein, , is the position vector of the user local accurate position P2, denotes the position vector of the user initial position Po.
[0105] Then, the state vector can be obtained by solving the equation (21) using Kalman filter.
[0106] Further, based on the state vector, the high-precision coordinates of the user local accurate position P2 can be obtained by calculation.
[0107] From the above calculation process, it can be seen that the observation equation is simplified to only the inter-satellite ambiguity parameter of the user's local accurate position P2. Since the ambiguity parameter is stable, in theory, the RTK program should not reset the ambiguity parameter regardless of the switching of the base station coordinates, grid region ID, etc., as long as the relative position relationship between the user's local accurate position and the satellite is unchanged. However, for the NRTK network service, when the physical station ID is switched, the ambiguity parameter may change due to the position difference between the base stations and the atmospheric condition difference. Therefore, the RTK program should reset the ambiguity. Therefore, the present data processing method calculates the atmospheric correction product using the user's local approximate position coordinates close to the user's current position (i.e., the user's local accurate position), and calculates the virtual observation using the user's starting position coordinates, which can adapt to the RTK algorithm based on the NRTK strategy. Since the user's local approximate position P1 coordinates are closer to the user's current position, the atmospheric correction product calculated is more accurate. In this way, the user's end RTK algorithm does not need to consider the ambiguity parameter update problem caused by the switching of the base station coordinates, and the atmospheric correction product precision is not attenuated due to the lengthening of the baseline distance, thereby ensuring the precision of the atmospheric correction product and improving the fixing rate and stability of the user's end.
[0108] Based on the same inventive concept, the embodiments of the present application also provide a data processing device for implementing the above-mentioned data processing method. The implementation scheme of the device for solving the problem is similar to the implementation scheme described in the above method, and therefore the specific limitations in one or more device embodiments provided below can be referred to the limitations of the method described above, which will not be described here again.
[0109] In one embodiment, as shown in Figure 5 a data processing device is provided, which comprises:
[0110] a data receiving module 201 configured to receive the SSR correction number product broadcast by the PPP-RTK server end;
[0111] a data decoding module 202 configured to perform decoding processing on the SSR correction number product;
[0112] a first data calculation module 203 configured to correct the satellite position and satellite clock obtained from the broadcast ephemeris using the decoded data;
[0113] a second data calculation module 204 configured to generate an atmospheric correction product using the decoded data and the user's local approximate position;
[0114] a third data calculation module 205 configured to generate a virtual observation using the user's starting position, the corrected satellite position and satellite clock, and the atmospheric correction product; and
[0115] The RTK solving module 206 is configured to perform RTK solving by using the virtual observation.
[0116] Each module in the data processing apparatus can be implemented by software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in the computer device in hardware form, or stored in a memory in the computer device in software form, so as to be invoked and executed by the processor to perform operations corresponding to each module.
[0117] In an embodiment, a computer device is provided, which can be a smart in-vehicle device. The internal structure of the computer device can be as shown in Figure 6 The computer device includes a processor, a memory, a communication interface, and a database connected by a system bus. The processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operating system and the computer program in the non-volatile storage medium to run. The communication interface of the computer device is configured to perform wired or wireless communication with an external terminal. The wireless communication can be achieved by WIFI, mobile cellular network, NFC (Near Field Communication), or other technologies. The database of the computer device is configured to store processing data. The computer program is executed by the processor to implement a data processing method.
[0118] Those skilled in the art can understand that Figure 6 The structure shown in the above-mentioned embodiment is only a block diagram of part of the structure related to the present request scheme, and does not constitute a limitation on the computer device to which the present request scheme is applied. The specific computer device can include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0119] In an embodiment, a computer device is provided, which includes a memory and a processor. The memory stores a computer program. The processor executes the computer program to implement the steps in each method embodiment.
[0120] In an embodiment, a computer readable storage medium is provided, which stores a computer program. The computer program is executed by a processor to implement the steps in each method embodiment.
[0121] In an embodiment, a computer program product is provided, which includes computer instructions stored in a computer readable storage medium. A processor of a computer device reads the computer instructions from the computer readable storage medium. The processor executes the computer instructions to cause the computer device to perform the steps in each method embodiment.
[0122] The specific limitation of the steps can refer to the above-mentioned data processing method in the method embodiments, which will not be repeated here.
[0123] A person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned method embodiments can be completed by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer readable storage medium. When the computer program is executed, it can include the processes of the above-mentioned method embodiments. Any reference to memory, storage, database or other medium used in the embodiments provided by the present application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration but not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink), DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
[0124] The above-mentioned embodiments only express several implementation manners of the present application, which are described in detail and specifically, but should not be understood as a limitation on the patent scope of the present application. It should be pointed out that for a person of ordinary skill in the art, several modifications and improvements can be made without departing from the concept of the present application, which all belong to the protection scope of the present application. Therefore, the patent protection scope of the present application should be subject to the appended claims.
Claims
1. A data processing method, characterized by, The method comprises: receiving an SSR correction number product broadcast by a PPP-RTK server; decoding the SSR correction number product; correcting the satellite position and satellite clock obtained from the broadcast ephemeris using the decoded data; generating an atmospheric correction product using the decoded data and the user's local approximate position; generating virtual observations using the user's initial position, the corrected satellite position and satellite clock, and the atmospheric correction product; performing RTK calculation using the virtual observations; wherein the virtual observations include observation equations of the user's local approximate position on satellite i, observation equations of the user's local accurate position on satellite i, observation equations of the user's local approximate position on satellite j, and observation equations of the user's local accurate position on satellite j; the RTK calculation using the virtual observations comprises: calculating the single difference between the user's local approximate position and the user's local accurate position for satellite i and satellite j, and then calculating the inter-satellite single difference between satellite i and satellite j; linearizing the equations obtained from the inter-satellite single difference and the inter-satellite single difference based on the user's initial position; solving the linearized equations using Kalman filtering to obtain a state vector; calculating the high-precision coordinates of the user's local accurate position based on the state vector.
2. The method of claim 1, wherein, The atmospheric correction product includes ionospheric product and tropospheric product; the generation of the atmospheric correction product using the decoded data and the user's local approximate position comprises: generating an ionospheric product using the decoded ionospheric polynomial coefficients and grid ionospheric residuals and the user's local approximate position; generating a tropospheric product using the decoded tropospheric polynomial coefficients and grid tropospheric residuals and the user's local approximate position.
3. The method of claim 1, wherein, The SSR correction number product includes GAD, OCB, STEC, and GTROP data; the decoding of the SSR correction number product comprises: decoding the GAD data to obtain geographical area information of the current area, including area ID, latitude, longitude, and height of the area origin, and grid division of the area; decoding the OCB data to obtain orbit correction numbers, clock correction numbers, code bias correction numbers, and phase bias correction numbers of the satellite; decoding the STEC data to obtain ionospheric polynomial coefficients and grid ionospheric residuals; decoding the GTROP data to obtain tropospheric polynomial coefficients and grid tropospheric residuals.
4. The method of claim 1, wherein, Before the receiving of the SSR correction number product broadcast by the PPP-RTK server, the method further comprises: calculating the user's local approximate position based on the service area and grid definition broadcast by the server; determining the current area based on the user's local approximate position, and feeding back to the server to obtain the corresponding regional product data including the SSR correction number product.
5. A data processing apparatus, characterized by, The device comprises: a data receiving module for receiving an SSR correction number product broadcast by a PPP-RTK server; a data decoding module for decoding the SSR correction number product; A first data calculation module is configured to correct satellite positions and satellite clocks obtained from broadcast ephemeris by using decoded data; A second data calculation module is configured to generate an atmospheric correction product by using decoded data and a user's local approximate position; A third data calculation module is configured to generate virtual observations by using a user's initial position, corrected satellite positions and satellite clocks, and the atmospheric correction product; An RTK solution module is configured to perform RTK solution by using the virtual observations; The virtual observations include an observation equation of the user's local approximate position to satellite i, an observation equation of the user's local accurate position to satellite i, an observation equation of the user's local approximate position to satellite j, and an observation equation of the user's local accurate position to satellite j; The RTK solution by using the virtual observations includes: calculating inter-station single differences between the user's local approximate position and the user's local accurate position for satellite i and satellite j, and then calculating inter-satellite single differences between satellite i and satellite j; linearizing equations obtained from the inter-station single differences and the inter-satellite single differences based on the user's initial position; solving the linearized equations by using Kalman filtering to obtain a state vector; calculating a high-precision coordinate of the user's local accurate position based on the state vector. 6.A computer device, comprising a memory and a processor, wherein the memory stores a computer program, and the computer device is configured to perform the method according to any one of claims 1-5 when the computer program is executed by the processor. The processor executes the computer program to implement the steps of the method in any one of claims 1 to 4.
7. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method in any one of claims 1 to 4.
8. A computer program product comprising a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method in any one of claims 1 to 4.
Citation Information
Patent Citations
Short-distance large-height-difference NRTK troposphere delay correction method based on PPP
CN115144878A
Data processing method, computer equipment and storage medium
CN117890944A