Positioning method and device of mobile equipment, electronic equipment and storage medium
By receiving navigation data from multiple satellites on mobile devices, filtering effective satellites and available satellites, solving the estimated position of mobile devices and calculating carrier phase floating point solution and double-difference ambiguity, the problem of positioning accuracy and speed reduction in complex environments is solved, and high-precision target position determination is achieved.
Patent Information
- Application Number
- CN202510370216.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-27
- Publication Date
- 2025-06-27
- Estimated Expiration
- 2045-03-27
AI Technical Summary
In complex environments such as cities or forests, mobile devices weaken their satellite signals due to occlusion from buildings and tall trees, resulting in a degradation of positioning performance.
By receiving navigation data from multiple target satellites, the position data, speed data and positioning data of the mobile device are determined, and the effective satellites and available satellites are selected. These data are used to solve the estimated position of the mobile device, and the carrier phase floating point solution and double-difference ambiguity of each available satellite are calculated to finally determine the high-precision target position of the target mobile device.
It effectively improves the positioning accuracy and positioning speed in complex environments, and enhances the positioning ability of mobile devices in multi-path interference and occlusion.
Smart Images

Figure CN120214852A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of navigation technology, and in particular, to a positioning method, device, electronic device, and storage medium for a mobile device. Background Art
[0002] Since the completion of China's Beidou system, the Real-Time Kinematic (RTK) positioning technology has been widely used in fields such as disaster monitoring and autonomous driving. The RTK technology realizes high-precision positioning by receiving signals from multiple satellites and using differential algorithms. In an open environment, the RTK technology can meet the positioning needs of users.
[0003] However, in complex environments such as cities or forests, due to the occlusion of buildings and tall trees, the direct signals received by mobile devices will be significantly weakened. At the same time, mobile devices are also interfered by non-direct signals. Due to the poor anti-multipath ability of mobile devices themselves, the positioning performance deteriorates. Summary of the Invention
[0004] In view of this, the embodiments of this application provide a positioning method, device, electronic device, and storage medium for a mobile device, effectively improving the positioning accuracy and speed in complex environments.
[0005] This application mainly includes the following aspects:
[0006] In a first aspect, the embodiments of this application provide a positioning method for a mobile device, and the positioning method includes:
[0007] Based on the navigation data of multiple target satellites received by a target mobile device, determine the position data, speed data, and positioning data of the target mobile device;
[0008] Based on the position data of the target mobile device, determine the position residual corresponding to each target satellite, and determine the target satellites with position residuals meeting the preset conditions as valid satellites;
[0009] Based on the speed data of the target mobile device, determine the speed residual corresponding to each valid satellite, and determine the valid satellites with speed residuals meeting the preset conditions as available satellites;
[0010] Based on multiple available satellites and the position data of the target mobile device, determine the estimated position of the target mobile device;
[0011] Based on the estimated position of the target mobile device and the positioning data of the target mobile device, determine the carrier phase floating point solution and double difference ambiguity corresponding to each available satellite;
[0012] Use the double difference ambiguity corresponding to each available satellite to determine multiple target positioning satellites;
[0013] Determine the target position of the target mobile device by using the floating-point solution of the carrier phase corresponding to each target positioning satellite.
[0014] Further, determining the position residual corresponding to each target satellite based on the position data of the target mobile device includes:
[0015] Input the position data of the target mobile device into the positioning observation model to obtain the predicted position of the target mobile device output by the positioning observation model;
[0016] Based on the predicted position of the target mobile device, determine the predicted distance of the target mobile device corresponding to each target satellite;
[0017] Determine the pseudo-range observation value corresponding to each target satellite from the position data of the target mobile device;
[0018] Take the difference between the predicted distance of the target mobile device corresponding to each target satellite and the pseudo-range observation value corresponding to each target satellite to obtain the position residual corresponding to each target satellite.
[0019] Further, determining the velocity residual corresponding to each effective satellite based on the velocity data of the target mobile device, and determining the effective satellite whose velocity residual meets the preset condition as an available satellite includes:
[0020] Determine the velocity observation value corresponding to each effective satellite from the velocity data of the target mobile device;
[0021] If the sampling rate of the target mobile device is less than or equal to the preset sampling rate threshold, input the velocity data of the target mobile device into the first velocity estimation model to obtain the predicted velocity of the target mobile device output by the first velocity estimation model; for each effective satellite, determine the difference between the predicted velocity of the target mobile device and the velocity observation value corresponding to this effective satellite as the first velocity residual corresponding to this effective satellite; determine the effective satellite with the first velocity residual less than the first preset velocity residual as the effective satellite meeting the preset condition, and determine this effective satellite as an available satellite;
[0022] If the sampling rate of the target mobile device is greater than the preset sampling rate threshold, then input the velocity data of the target mobile device into the second velocity estimation model to obtain the average velocity of the target mobile device between the current epoch and the previous epoch output by the second velocity estimation model; for each effective satellite, determine the difference between the average velocity of the target mobile device between the current epoch and the previous epoch and the velocity observation value corresponding to this effective satellite as the second velocity residual corresponding to this effective satellite; determine the effective satellite with the second velocity residual less than the second preset velocity residual as the effective satellite meeting the preset condition, and determine this effective satellite as an available satellite.
[0023] Further, determining the carrier phase floating-point solution and double-difference ambiguity corresponding to each available satellite based on the estimated position of the target mobile device and the positioning data of the target mobile device includes:
[0024] If the sampling rate of the target mobile device is lower than or equal to the preset sampling rate threshold, the predicted speed of the target mobile device is determined as the virtual speed observable;
[0025] If the sampling rate of the target mobile device is higher than the preset sampling rate threshold, the variance between the average speed of the target mobile device between the current epoch and the previous epoch and the predicted speed of the target mobile device is weighted and averaged to obtain the weighted speed of the target mobile device, and the weighted speed of the target mobile device is determined as the virtual speed observable;
[0026] Input the estimated position of the target mobile device, the virtual speed observable, and the positioning data of the target mobile device into the positioning model to obtain the carrier phase floating-point solution and double-difference ambiguity corresponding to each available satellite output by the positioning model.
[0027] Further, determining multiple target positioning satellites by using the double-difference ambiguity corresponding to each available satellite includes:
[0028] For each available satellite, search for the available satellite in the historical target satellite set of the previous epoch. If the available satellite is not in the historical target satellite set, the available satellite is determined as a newly emerged satellite;
[0029] If the number of available satellites is greater than the preset number of satellites, the newly emerged satellites with double-difference ambiguity greater than the preset double-difference ambiguity threshold are excluded from the multiple available satellites to obtain multiple target positioning satellites;
[0030] If the number of available satellites is less than or equal to the preset number of satellites, each available satellite is determined as a target positioning satellite.
[0031] Further, determining the target position of the target mobile device by using the carrier phase floating-point solution corresponding to each target positioning satellite includes:
[0032] Combine multiple target positioning satellites to form a target positioning satellite set;
[0033] Perform ambiguity fixing on the carrier phase floating-point solution corresponding to each target positioning satellite in the target positioning satellite set to obtain the integer ambiguity corresponding to each target positioning satellite;
[0034] Input the integer ambiguity corresponding to each target positioning satellite into the positioning model to obtain the target position of the target mobile device output by the positioning model.
[0035] In a second aspect, an embodiment of the present application further provides a positioning device for a mobile device, the device comprising:
[0036] A data processing module, which determines the position data, speed data and positioning data of the target mobile device based on the navigation data of multiple target satellites received by the target mobile device;
[0037] A position residual calculation module, which determines the position residual corresponding to each target satellite based on the position data of the target mobile device, and determines the target satellites whose position residuals meet the preset conditions as valid satellites;
[0038] A speed residual calculation module, which determines the speed residual corresponding to each valid satellite based on the speed data of the target mobile device, and determines the valid satellites whose speed residuals meet the preset conditions as available satellites;
[0039] An estimated position determination module, which determines the estimated position of the target mobile device based on multiple available satellites and the position data of the target mobile device;
[0040] A floating-point solution and double-difference ambiguity determination module, which determines the carrier phase floating-point solution and double-difference ambiguity corresponding to each available satellite based on the estimated position of the target mobile device and the positioning data of the target mobile device;
[0041] A target positioning satellite determination module, which determines multiple target positioning satellites by using the double-difference ambiguity corresponding to each available satellite;
[0042] A target position determination module, which determines the target position of the target mobile device by using the carrier phase floating-point solution corresponding to each target positioning satellite.
[0043] Further, when the position residual calculation module is used to determine the position residual corresponding to each target satellite based on the position data of the target mobile device, it is further specifically used for:
[0044] Inputting the position data of the target mobile device into the positioning observation model to obtain the predicted position of the target mobile device output by the positioning observation model;
[0045] Determining the predicted distance of the target mobile device corresponding to each target satellite based on the predicted position of the target mobile device;
[0046] Determining the pseudo-range observation value corresponding to each target satellite from the position data of the target mobile device;
[0047] Taking the difference between the predicted distance of the target mobile device corresponding to each target satellite and the pseudo-range observation value corresponding to each target satellite to obtain the position residual corresponding to each target satellite.
[0048] In a third aspect, an embodiment of the present application further provides an electronic device, including: a processor, a memory, and a bus. The memory stores machine-readable instructions executable by the processor. When the electronic device runs, the processor communicates with the memory through the bus. When the machine-readable instructions are run by the processor, the steps of the positioning method of the mobile device described in the first aspect or any possible implementation manner of the first aspect are executed.
[0049] In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium. A computer program is stored on the computer-readable storage medium. When the computer program is run by a processor, the steps of positioning the mobile device described in the first aspect or any possible implementation manner of the first aspect are executed.
[0050] A positioning method, device, electronic device, and storage medium for a mobile device provided by an embodiment of the present application first calculates the position, speed, and positioning data of a target mobile device, then filters out valid satellites and available satellites based on position residuals and speed residuals, further uses the available satellite data to calculate the estimated position of the target mobile device, and calculates the carrier phase floating-point solution and double-difference ambiguity of each available satellite. Finally, the high-precision target position of the target mobile device is determined through the carrier phase floating-point solution of the target positioning satellite.
[0051] In this way, the positioning accuracy and positioning speed in a complex environment are effectively improved.
[0052] To make the above objects, features, and advantages of the present application more obvious and understandable, the following specifically enumerates preferred embodiments and, in conjunction with the accompanying drawings, makes a detailed description as follows. Description of the Drawings
[0053] To more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings required for the embodiments. It should be understood that the following drawings only show some embodiments of the present application and should not be regarded as limiting the scope. For those of ordinary skill in the art, other related drawings can be obtained based on these drawings without creative efforts.
[0054] Figure 1 Shows one of the flowcharts of a positioning method for a mobile device provided by an embodiment of the present application;
[0055] Figure 2 Shows another flowchart of a positioning method for a mobile device provided by an embodiment of the present application;
[0056] Figure 3 Shows yet another flowchart of a positioning method for a mobile device provided by an embodiment of the present application;
[0057] Figure 4 FIG. 4 shows a flowchart of a positioning method for a mobile device provided by an embodiment of the present application;
[0058] Figure 5 FIG. 5 shows a flowchart of a positioning method for a mobile device provided by an embodiment of the present application;
[0059] Figure 6 FIG. shows a schematic structural diagram of a positioning device for a mobile device provided by an embodiment of the present application;
[0060] Figure 7 FIG. shows a schematic structural diagram of an electronic device provided by an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0061] To make the objectives, technical solutions, and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. It should be understood that the accompanying drawings in the present application are only for the purposes of illustration and description, and are not used to limit the protection scope of the present application. In addition, it should be understood that the schematic drawings are not drawn to scale. The flowcharts used in the present application show operations implemented according to some embodiments of the present application. It should be understood that the operations in the flowcharts may not be implemented in sequence, and steps without logical context relationships may be reversed or implemented simultaneously. In addition, those skilled in the art can add one or more other operations to the flowchart or remove one or more operations from the flowchart under the guidance of the content of the present application.
[0062] In addition, the described embodiments are only some embodiments of the present application, rather than all embodiments. The components of the embodiments of the present application 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 application provided in the accompanying drawings is not intended to limit the scope of the present application claimed, but is only representative of the selected embodiments of the present application. All other embodiments obtained by those skilled in the art based on the embodiments of the present application without creative efforts fall within the protection scope of the present application.
[0063] The following methods, devices, electronic devices, or computer-readable storage media in the embodiments of the present application can be applied to any scenario where positioning of a mobile device is required. The embodiments of the present application do not limit the specific application scenarios, and any solution using the positioning method and device for a mobile device provided by the embodiments of the present application falls within the protection scope of the present application.
[0064] It should be noted that since the completion of China's Beidou system, the Real-Time Kinematic (RTK) technology has been widely used in fields such as disaster monitoring and autonomous driving. The RTK technology realizes high-precision positioning by receiving signals from multiple satellites and using differential algorithms. In an open environment, the RTK technology can meet the positioning needs of users. However, in complex environments such as cities or forests, due to the occlusion of buildings and tall trees, the direct signals received by mobile devices will be significantly weakened, and at the same time, mobile devices will also be interfered by non-line-of-sight (NLOS) signals. Due to the poor multi-path resistance ability of mobile devices themselves, the positioning performance deteriorates.
[0065] In view of the above problems, the embodiments of the present application propose a positioning method, device, electronic device and storage medium for mobile devices, which effectively improve the positioning accuracy and positioning speed in complex environments.
[0066] To facilitate the understanding of the present application, the technical solutions provided by the present application will be described in detail below with reference to specific embodiments.
[0067] Please refer to Figure 1 , Figure 1 which is one of the flowcharts of a positioning method for a mobile device provided by an embodiment of the present application.
[0068] In the present application, mobile devices include: vehicles, mobile phones, ships, airplanes, spacecraft, etc. There is a satellite navigation receiver on the mobile device, and the satellite navigation receiver is used to receive navigation data of multiple target satellites.
[0069] As Figure 1 shown in, the positioning method for a mobile device provided by an embodiment of the present application includes the following steps:
[0070] Step S101, based on the navigation data of multiple target satellites received by the target mobile device, determine the position data, speed data and positioning data of the target mobile device.
[0071] Here, the navigation data includes: Global Navigation Satellite System (GNSS) observation data and navigation messages, etc. Among them, the GNSS observation data includes: pseudo-range observations, carrier phases and Doppler frequency shifts between the receiver and the satellite, etc. The navigation messages include: ephemeris data, almanac data and time information, etc. The position data of the target mobile device is data related to the position of the target mobile device. The speed data of the target mobile device is data related to the speed of the target mobile device. The positioning data of the target mobile device is data related to the precise positioning of the target mobile device.
[0072] In this step, by calculating and processing the navigation data of multiple target satellites received by the target mobile device, the position data, speed data, and positioning data of the target mobile device can be obtained. The position data of the target mobile device may include at least one of the following items: the pseudo-range observation value from the mobile device to the satellite, the coordinates of the satellite, and the satellite clock error. The speed data of the target mobile device may include at least one of the following items: the change in the satellite-earth distance, the wavelength of the frequency point, the Doppler frequency shift, the clock rate of the satellite, the change in the ionosphere, the change in the troposphere, the change in the random error, the direction cosine matrix between the mobile device and the satellite, the position change of the satellite in the x, y, and z directions, the change in the satellite clock error, the difference between the carrier differential velocity measurement observation value and the change in the distance between the mobile device and the satellite, the coordinate vector of the satellite, and the difference in ambiguity. The positioning data of the target mobile device may include at least one of the following items: the carrier double-difference observation value, the pseudo-range double-difference observation value, the pseudo-range observation value, the satellite-earth distance, the tropospheric error, the ionospheric error, the carrier observation value, the wavelength of the frequency point, the remaining error term, and the direction cosine matrix between the mobile device and the satellite.
[0073] Step S102: Based on the position data of the target mobile device, determine the position residual corresponding to each target satellite, and determine the target satellites whose position residuals meet the preset conditions as valid satellites.
[0074] Here, the residual is the difference between the observed value and the predicted value. In this step, taking the position residual not being the maximum as the preset condition, that is, retaining the target satellites with non-maximum position residuals as valid satellites and excluding the target satellite with the maximum position residual.
[0075] Next, it will be combined with Figure 2 to illustrate how to determine the position residual corresponding to each target satellite based on the position data of the target mobile device.
[0076] Please refer to Figure 2 , Figure 2 , which is the second flowchart of a positioning method for a mobile device provided by an embodiment of the present application.
[0077] As shown in Figure 2 , regarding determining the position residual corresponding to each target satellite based on the position data of the target mobile device in step S102, in specific implementation, as an example, it may include the following steps:
[0078] Step S1021: Input the position data of the target mobile device into the positioning observation model to obtain the predicted position of the target mobile device output by the positioning observation model.
[0079] Here, a positioning observation model is constructed based on the position data of the target mobile device. As an example, the positioning observation model can be represented by formula (1).
[0080]
[0081] where is the pseudorange observation value from mobile device k to satellite s, (X s , Y s , Z s ) is the coordinate of satellite s, (X k , Y k , Z k ) is the coordinate of mobile device k, C is the speed of light, dt k is the clock offset of mobile device k, and dt s is the clock offset of satellite s.
[0082] Substitute the position data of the target mobile device into formula (1). Assuming that the target mobile device receives navigation data from h target satellites, then there are h equations forming a system of equations. Using the least squares or Kalman filtering algorithm for positioning calculation, the coordinate of mobile device k, that is, the predicted position of the target mobile device, can be obtained. Here, when the target mobile device receives navigation data from more than four target satellites, the coordinate of mobile device k can be obtained.
[0083] Step S1022: Based on the predicted position of the target mobile device, determine the predicted distance of the target mobile device corresponding to each target satellite.
[0084] Substitute the predicted position of the target mobile device into the system of equations, and the predicted distance of the target mobile device corresponding to each target satellite can be obtained.
[0085] Step S1023: Determine the pseudorange observation value of each target satellite corresponding to the target mobile device from the position data of the target mobile device.
[0086] Here, extract the pseudorange observation value of each target satellite corresponding to the target mobile device from the position data of the target mobile device.
[0087] Step S1024: Subtract the predicted distance of the target mobile device corresponding to each target satellite from the pseudorange observation value of each target satellite corresponding to the target mobile device to obtain the position residual of each target satellite corresponding to the target mobile device.
[0088] Refer to Figure 1 again. In step S103, based on the speed data of the target mobile device, determine the speed residual of each valid satellite corresponding to the target mobile device, and determine the valid satellites whose speed residuals meet the preset conditions as available satellites.
[0089] Here, eliminate the valid satellites whose speed residuals do not meet the preset conditions.
[0090] When the number of valid satellites is sufficient (e.g., 30), sort them in descending order according to the magnitude of the residual values, and sequentially eliminate the satellites with larger residuals until the number of remaining valid satellites reaches a preset empirical threshold. As an example, the preset empirical threshold is 25, which can also be set according to other experiences here and is not limited.
[0091] The following will be combined with Figure 3 to illustrate how to determine the velocity residual corresponding to each valid satellite based on the velocity data of the target mobile device.
[0092] Please refer to Figure 3 , Figure 3 which is the third flowchart of a positioning method for a mobile device provided by an embodiment of the present application.
[0093] As Figure 3 shown, regarding determining the velocity residual corresponding to each valid satellite based on the velocity data of the target mobile device in step S103, in specific implementation, as an example, it may include the following steps:
[0094] Step S1031: Determine the velocity observation value corresponding to each valid satellite from the velocity data of the target mobile device.
[0095] Here, extract the change amount of the satellite-ground distance between the mobile device and the valid satellite from the velocity data of the target mobile device, and divide the change amount of the satellite-ground distance between the mobile device and the valid satellite by the time interval between the current epoch and the previous epoch to obtain the velocity observation value corresponding to each valid satellite.
[0096] Step S1032: If the sampling rate of the target mobile device is less than or equal to the preset sampling rate threshold, input the velocity data of the target mobile device into the first velocity estimation model to obtain the predicted velocity of the target mobile device output by the first velocity estimation model.
[0097] Here, as an example, the preset sampling rate threshold is 5 Hz.
[0098] Here, the first velocity estimation model is constructed based on the velocity data of the target mobile device. As an example, the first velocity estimation model can be represented by formula (2).
[0099]
[0100] is the change amount of the satellite-ground distance, that is, the change amount of the satellite-ground distance between mobile device k and satellite s, λ is the wavelength of the frequency point. In the present application, the frequency points include: L1 frequency point, L2 frequency point, and L5 frequency point, D k s is the Doppler frequency shift, that is, the frequency shift generated by the relative motion between mobile device k and satellite s; is the clock speed of the mobile device k, is the clock speed of the satellite s, is the change amount of the ionosphere, is the change amount of the troposphere, is the change amount of the random error. is the change amount of the distance between the mobile device k and the satellite s at time t. Here, the change amounts of the ionosphere and the troposphere are the change amounts between epochs. When the epoch interval is short, the change amounts of the ionosphere and the troposphere are both approximately 0. Therefore, in this application, the change amounts of the ionosphere and the troposphere are both set to 0. As an example, the epoch interval can be within 1 second. In this application, the change amount of the random error is set to 0. As an example, the change amount of the distance between the mobile device k and the satellite s at time t can be calculated by formula (3).
[0101]
[0102] Among them, is the direction cosine matrix between the mobile device k and the satellite s at time t, are the position change amounts of the satellite s in the x, y, and z directions at time t, that is, the satellite velocity, are the position change amounts of the mobile device k in the x, y, and z directions at time t, that is, the velocity of the mobile device k.
[0103] Substitute the velocity data of the target mobile device into formula (2) and formula (3), and after performing the earth rotation correction, the solution can be obtained by the least squares method, and the position change amounts of the mobile device in the x, y, and z directions at time t can be obtained, that is, the predicted velocity of the target mobile device.
[0104] Step S1033, for each valid satellite, determine the difference between the predicted velocity of the target mobile device and the velocity observation value corresponding to the valid satellite as the first velocity residual corresponding to the valid satellite.
[0105] Step S1034, determine the valid satellites with the first velocity residual less than the first preset velocity residual as the valid satellites that meet the preset conditions, and determine the valid satellites as available satellites.
[0106] Step S1035, if the sampling rate of the target mobile device is greater than the preset sampling rate threshold, input the velocity data of the target mobile device into the second velocity estimation model, and obtain the average velocity of the target mobile device between the current epoch and the previous epoch output by the second velocity estimation model.
[0107] Here, the second velocity estimation model is constructed based on the velocity data of the target mobile device. As an example, the second velocity estimation model can be represented by formula (4).
[0108]
[0109] where \(v\) is the speed of mobile device \(k\), and \(\Delta\delta t\) k is the change in clock offset of mobile device \(k\), \(l\) is the difference between the carrier differential velocity measurement and the change in the distance between mobile device \(k\) and satellite \(s\), is the direction cosine matrix between mobile device \(k\) and satellite \(s\), \(r\) is the coordinate vector of mobile device \(k\); \(\Delta r\) is the change in the coordinate of mobile device \(k\), is the difference in ambiguity, \(R\) s is the coordinate vector of satellite \(s\), \(t_1\) is the time at \(t_1\), \(t_2\) is the time at \(t_2\), \(\Delta\delta t\) s is the change in the clock offset of satellite \(s\).
[0110] Substitute the position data of the target mobile device into formula (4), and the speed of the mobile device can be obtained by using the least squares method, that is, the average speed of the target mobile device between the current epoch and the previous epoch. Here, when the target mobile device receives navigation data from more than four target satellites, the speed of the mobile device can be obtained.
[0111] Step S1036, for each valid satellite, determine the difference between the average speed of the target mobile device between the current epoch and the previous epoch and the speed observation value corresponding to the valid satellite as the second speed residual corresponding to the valid satellite.
[0112] Step S1037, determine the valid satellites with the second speed residual less than the second preset speed residual as the valid satellites meeting the preset conditions, and determine the valid satellites as available satellites.
[0113] Here, the average speed of the target mobile device between the current epoch and the previous epoch is the inter-epoch speed. When the speed of the mobile device has a large maneuver, the average speed performs poorly. Therefore, only when the receiver sampling rate of the mobile device is greater than 5 Hz and the corresponding maneuver of the mobile device is small, steps S1035 - S1037 are executed. When the receiver sampling rate of the mobile device is greater than 5 Hz, the accuracy of speed estimation using the second speed estimation model is higher.
[0114] Refer to again Figure 1 , step S104, based on the position data of multiple available satellites and the target mobile device, determine the estimated position of the target mobile device.
[0115] Here, input the position data of the target mobile device and the position data related to multiple available satellites into the positioning observation model, and use the least squares or Kalman filtering algorithm for positioning solution to obtain the estimated position of the target mobile device output by the positioning observation model, and update the predicted position of the target mobile device.
[0116] Step S105: Based on the estimated position of the target mobile device and the positioning data of the target mobile device, determine the carrier phase floating-point solution and the double-difference ambiguity corresponding to each available satellite.
[0117] Here, the carrier phase floating-point solution is the carrier phase single-difference deviation.
[0118] The following will be combined with Figure 4 to illustrate how to determine the carrier phase floating-point solution corresponding to each available satellite based on the estimated position of the target mobile device and the positioning data of the target mobile device.
[0119] Please refer to Figure 4 , Figure 4 which is the fourth flowchart of a positioning method for a mobile device provided by an embodiment of the present application.
[0120] As shown in Figure 4 , regarding step S105, in specific implementation, as an example, it may include the following steps:
[0121] Step S1051: If the sampling rate of the target mobile device is lower than or equal to the preset sampling rate threshold, then determine the predicted speed of the target mobile device as the virtual speed observable.
[0122] Here, the virtual speed observable is a constraint on the state vector.
[0123] Step S1052: If the sampling rate of the target mobile device is higher than the preset sampling rate threshold, then perform a weighted average on the variance between the average speed of the target mobile device between the current epoch and the previous epoch and the predicted speed of the target mobile device to obtain the weighted speed of the target mobile device, and determine the weighted speed of the target mobile device as the virtual speed observable.
[0124] Here, as an example, the weighted average of the variance between the average speed of the target mobile device between the current epoch and the previous epoch and the predicted speed of the target mobile device to obtain the weighted speed of the target mobile device is represented by formula (5).
[0125]
[0126] Wherein, V is the weighted speed of mobile device k, v1 is the predicted speed of mobile device k, v2 is the average speed of mobile device k between the current epoch and the previous epoch, is the variance of the predicted speed of mobile device k, is the variance of the average speed of mobile device k between the current epoch and the previous epoch.
[0127] Step S1053: Input the estimated position of the target mobile device, the virtual speed observation, and the positioning data of the target mobile device into the positioning model to obtain the carrier phase floating-point solution and the double-difference ambiguity corresponding to each available satellite output by the positioning model.
[0128] Here, a positioning model is constructed based on the estimated position of the target mobile device, the virtual speed observation, and the positioning data of the target mobile device. As an example, the positioning model can be represented by Equation (6).
[0129] V = L - AX (6)
[0130] Where, L is the observation value, A is the coefficient matrix, X is the state vector, and V is the residual vector of the observation value. As an example, the observation value, the coefficient matrix, and the state vector can be represented by Equation (7).
[0131]
[0132] Where, the D matrix is the coefficient matrix, λ1 is the wavelength of the L1 frequency band, λ2 is the wavelength of the L2 frequency band, λ3 is the wavelength of the L5 frequency band, is the mobile device position vector, v r T is the mobile device speed vector, are the single-difference biases of the carrier phase of the L1 frequency band, the L2 frequency band, and the L5 frequency band respectively, are the double-difference observations of the carrier phase of the three frequency bands of the L1 frequency band, the L2 frequency band, and the L5 frequency band respectively, are the pseudo-range double-difference observations of the L1 frequency band, the L2 frequency band, and the L5 frequency band, V T is the virtual speed observation, the E matrix, that is is the direction cosine matrix between the mobile device and the satellite, and I is the identity matrix.
[0133] In this step, the estimated position of the target mobile device is used as the initial value of the mobile device position vector, and the positioning data of the target mobile device is substituted into Equation (6) and Equation (7). The carrier phase floating-point solution corresponding to each available satellite can be obtained by using the Kalman filter. Further, based on the carrier phase floating-point solution corresponding to each satellite, and the matrix A and the matrix X, the double-difference ambiguity is obtained.
[0134] Refer to Figure 1 again, in step S106, use the double-difference ambiguity corresponding to each available satellite to determine multiple target positioning satellites.
[0135] Regarding step S106, in specific implementation, as an example, it may include the following steps:
[0136] First, for each available satellite, search for it in the set of historical target satellites in the previous epoch. If the available satellite is not in the set of historical target satellites, then determine the available satellite as a newly emerged satellite.
[0137] Subsequently, if the number of available satellites is greater than the preset number of satellites, then eliminate the newly emerged satellites with double-difference ambiguities greater than the preset double-difference ambiguity threshold from the multiple available satellites to obtain multiple target positioning satellites.
[0138] Here, as an example, the preset number of satellites is 15.
[0139] If the number of available satellites is less than or equal to the preset number of satellites, then determine each available satellite as a target positioning satellite.
[0140] Step S107: Use the carrier phase floating-point solution corresponding to each target positioning satellite to determine the target position of the target mobile device.
[0141] Next, in conjunction with Figure 5 it will be described how to use the carrier phase floating-point solution corresponding to each target positioning satellite to determine the target position of the target mobile device.
[0142] Please refer to Figure 5 , Figure 5 which is the fifth flowchart of a positioning method for a mobile device provided by an embodiment of the present application.
[0143] As Figure 5 shown in, regarding step S107, in specific implementation, as an example, it may include the following steps:
[0144] Step S1071: Combine the multiple target positioning satellites to form a set of target positioning satellites.
[0145] Step S1072: Fix the ambiguity of the carrier phase floating-point solution corresponding to each target positioning satellite in the set of target positioning satellites to obtain the integer ambiguity corresponding to each target positioning satellite.
[0146] Here, the correlation of the ambiguity is reduced by the transformation matrix Z so that the search domain is close to a circle. As an example, the integer transformation and ambiguity search conditions can be as shown in formula (8).
[0147]
[0148] Among them, N is the ambiguity vector, is the carrier phase floating-point solution corresponding to each target positioning satellite, M is the transformed ambiguity vector, is the transformed carrier phase floating-point solution corresponding to each target positioning satellite, is the inverse of the covariance matrix of the original float solution of the ambiguity, is the inverse of the covariance matrix of the transformed float solution of the ambiguity. It can be seen from formula (8) that the original narrow search space N is transformed into M, and the coefficient matrix is transformed from the original to When the transformed coefficient matrix is a diagonal matrix, the optimal solution is the rounding result of the vector Then, the inverse transformation is performed on the optimal solution to obtain the optimal solution of the integer ambiguity As an example, the inverse transformation can be performed on the optimal solution through formula (9).
[0149]
[0150] Step S1073: Input the integer ambiguity corresponding to each target positioning satellite into the positioning model, and obtain the target position of the target mobile device output by the positioning model.
[0151] Here, the integer ambiguity corresponding to each target positioning satellite is input into the positioning model to update the position vector of the mobile device and the speed vector of the mobile device.
[0152] In this application, the double-difference integer ambiguity corresponding to each target positioning satellite is respectively converted into the carrier phase single-difference deviation and stored in the state vector. The carrier phase single-difference deviation corresponding to each target positioning satellite can be used as the initial value of the carrier phase single-difference deviation in formula (7) when calculating the target position of the target mobile device in the next epoch.
[0153] The core of GNSS positioning lies in ambiguity fixation, and the key to improving the ambiguity fixation rate and fixation speed lies in comprehensively using various information for gross error detection and satellite screening. Aiming at the characteristics of low GNSS data quality, significant multipath effects, and severe non-line-of-sight (NLOS) interference in complex environments such as cities or forests, the present invention proposes a comprehensive RTK positioning algorithm. This algorithm combines velocity-aided gross error detection, partial ambiguity fixation, and a posteriori residual test, effectively improving the positioning accuracy and efficiency.
[0154] During the entire RTK solution process, the float solution calculation and the ambiguity fixation stage have an important impact on the positioning accuracy and positioning time. In this application, residual tests are performed to eliminate satellites with large errors, and new satellites and satellites with large double-difference ambiguities are also eliminated. Through multiple elimination operations, the ambiguity fixation speed and fixation rate are further improved. This application proposes a robust RTK algorithm that combines velocity-aided gross error detection, partial ambiguity fixation, and a posteriori residual test.
[0155] A positioning method for a mobile device provided by an embodiment of the present application effectively improves the positioning accuracy and positioning speed in a complex environment through the method.
[0156] Based on the same inventive concept, an embodiment of the present application also provides a positioning device for a mobile device corresponding to the positioning method for the mobile device provided in the above embodiment. Since the principle of solving problems by the device in the embodiment of the present application is similar to the positioning method for the mobile device in the above embodiment of the present application, the implementation of the device can refer to the implementation of the method, and the repeated parts will not be elaborated.
[0157] Please refer to Figure 6 , Figure 6 which is a schematic structural diagram of a positioning device for a mobile device provided by an embodiment of the present application.
[0158] As Figure 6 shown, the positioning device 210 for a mobile device provided by an embodiment of the present application includes:
[0159] A data processing module 211 determines the position data, speed data, and positioning data of the target mobile device based on the navigation data of multiple target satellites received by the target mobile device;
[0160] A position residual calculation module 212 determines the position residual corresponding to each target satellite based on the position data of the target mobile device, and determines the target satellites with position residuals meeting the preset conditions as valid satellites;
[0161] A speed residual calculation module 213 determines the speed residual corresponding to each valid satellite based on the speed data of the target mobile device, and determines the valid satellites with speed residuals meeting the preset conditions as available satellites;
[0162] An estimated position determination module 214 determines the estimated position of the target mobile device based on multiple available satellites and the position data of the target mobile device;
[0163] A floating-point solution and double-difference ambiguity determination module 215 determines the carrier phase floating-point solution and double-difference ambiguity corresponding to each available satellite based on the estimated position of the target mobile device and the positioning data of the target mobile device;
[0164] A target positioning satellite determination module 216 determines multiple target positioning satellites by using the double-difference ambiguity corresponding to each available satellite;
[0165] A target position determination module 217 determines the target position of the target mobile device by using the carrier phase floating-point solution corresponding to each target positioning satellite.
[0166] Further, when the position residual calculation module 212 is used to determine the position residual corresponding to each target satellite based on the position data of the target mobile device, it is specifically further used for:
[0167] Input the position data of the target mobile device into the positioning observation model to obtain the predicted position of the target mobile device output by the positioning observation model;
[0168] Based on the predicted position of the target mobile device, determine the predicted distance of the target mobile device corresponding to each target satellite;
[0169] Determine the pseudo-range observation value corresponding to each target satellite from the position data of the target mobile device;
[0170] Subtract the predicted distance of the target mobile device corresponding to each target satellite from the pseudo-range observation value corresponding to each target satellite to obtain the position residual corresponding to each target satellite.
[0171] Further, the velocity residual calculation module 213 is specifically used for:
[0172] Determine the velocity observation value corresponding to each valid satellite from the velocity data of the target mobile device;
[0173] If the sampling rate of the target mobile device is less than or equal to the preset sampling rate threshold, input the velocity data of the target mobile device into the first velocity estimation model to obtain the predicted velocity of the target mobile device output by the first velocity estimation model; for each valid satellite, determine the difference between the predicted velocity of the target mobile device and the velocity observation value corresponding to the valid satellite as the first velocity residual corresponding to the valid satellite; determine the valid satellite with the first velocity residual less than the first preset velocity residual as the valid satellite meeting the preset conditions, and determine the valid satellite as an available satellite;
[0174] If the sampling rate of the target mobile device is greater than the preset sampling rate threshold, input the velocity data of the target mobile device into the second velocity estimation model to obtain the average velocity of the target mobile device between the current epoch and the previous epoch output by the second velocity estimation model; for each valid satellite, determine the difference between the average velocity of the target mobile device between the current epoch and the previous epoch and the velocity observation value corresponding to the valid satellite as the second velocity residual corresponding to the valid satellite; determine the valid satellite with the second velocity residual less than the second preset velocity residual as the valid satellite meeting the preset conditions, and determine the valid satellite as an available satellite.
[0175] Further, the floating-point solution and double-difference ambiguity determination module 215 is specifically used for:
[0176] If the sampling rate of the target mobile device is lower than or equal to the preset sampling rate threshold, determine the predicted velocity of the target mobile device as the virtual velocity observation quantity;
[0177] If the sampling rate of the target mobile device is higher than the preset sampling rate threshold, the variance between the average speed of the target mobile device between the current epoch and the previous epoch and the predicted speed of the target mobile device is weighted and averaged to obtain the weighted speed of the target mobile device, and the weighted speed of the target mobile device is determined as the virtual speed observation quantity;
[0178] Input the estimated position of the target mobile device, the virtual speed observation quantity, and the positioning data of the target mobile device into the positioning model to obtain the carrier phase floating-point solution and double-difference ambiguity corresponding to each available satellite output by the positioning model.
[0179] Further, the target positioning satellite determination module 216 is specifically configured to:
[0180] For each available satellite, search for the available satellite in the historical target satellite set of the previous epoch. If the available satellite is not in the historical target satellite set, the available satellite is determined as a newly emerged satellite;
[0181] If the number of available satellites is greater than the preset number of satellites, the newly emerged satellites with double-difference ambiguities greater than the preset double-difference ambiguity threshold are excluded from the multiple available satellites to obtain multiple target positioning satellites;
[0182] If the number of available satellites is less than or equal to the preset number of satellites, each available satellite is determined as a target positioning satellite.
[0183] Further, the target position determination module 217 is specifically configured to:
[0184] Combine multiple target positioning satellites to form a target positioning satellite set;
[0185] Perform ambiguity fixing on the carrier phase floating-point solution corresponding to each target positioning satellite in the target positioning satellite set to obtain the integer ambiguity corresponding to each target positioning satellite;
[0186] Input the integer ambiguity corresponding to each target positioning satellite into the positioning model to obtain the target position of the target mobile device output by the positioning model.
[0187] A positioning device for a mobile device provided by an embodiment of the present application effectively improves the positioning accuracy and positioning speed in a complex environment through the device.
[0188] Please refer to Figure 7 , Figure 7 which is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
[0189] As Figure 7As shown in the figure, the electronic device 300 includes a processor 310, a memory 320, and a bus 330.
[0190] The memory 320 stores machine-readable instructions executable by the processor 310. When the electronic device 300 runs, the processor 310 communicates with the memory 320 through the bus 330. When the machine-readable instructions are executed by the processor 310, they can execute the steps of the positioning method of the mobile device in the method embodiments as described above Figure 1 , Figure 2 , Figure 3 , Figure 4 and Figure 5 shown. For the specific implementation manner, reference may be made to the method embodiments, which will not be elaborated herein.
[0191] An embodiment of the present application further provides a computer-readable storage medium. A computer program is stored on the computer-readable storage medium. When the computer program is run by a processor, it can execute the steps of the positioning method of the mobile device in the method embodiments as described above Figure 1 , Figure 2 , Figure 3 , Figure 4 and Figure 5 shown. For the specific implementation manner, reference may be made to the method embodiments, which will not be elaborated herein.
[0192] Those skilled in the art can clearly understand that for the convenience and conciseness of description, the specific working processes of the systems and devices described above can refer to the corresponding processes in the foregoing method embodiments, which will not be elaborated herein. In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices, and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of the units is only a logical function division, and there may be other division methods in actual implementation. For another example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed mutual coupling or direct coupling or communication connection may be through some communication interfaces. The indirect coupling or communication connection of the devices or units may be in an electrical, mechanical, or other form.
[0193] The units described as separate components may or may not be physically separated. The components displayed as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0194] In addition, in each embodiment of the present application, each functional unit can be integrated into one processing unit, can exist physically alone for each unit, or two or more units can be integrated into one unit.
[0195] If the described function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a non-volatile computer-readable storage medium executable by a processor. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in each embodiment of the present application. The foregoing storage medium includes: various 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.
[0196] The above is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present application can easily think of changes or substitutions, which should all be covered by the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Claims
1. A method for positioning a mobile device, characterized in that: The positioning method comprises: Determine the position data, speed data and positioning data of the target mobile device based on the navigation data of the plurality of target satellites received by the target mobile device; Based on the position data of the target mobile device, determine the position residual corresponding to each target satellite, and determine the target satellite whose position residual meets the preset conditions as a valid satellite; Based on the speed data of the target mobile device, a speed residual corresponding to each valid satellite is determined, and a valid satellite whose speed residual meets a preset condition is determined as an available satellite; determining an estimated location of the target mobile device based on a plurality of available satellites and location data of the target mobile device; Determine a carrier phase float solution and a double-difference ambiguity corresponding to each available satellite based on the estimated position of the target mobile device and the positioning data of the target mobile device; Using the double-difference ambiguity corresponding to each available satellite, multiple target positioning satellites are determined; The target position of the target mobile device is determined using the carrier phase floating point solution corresponding to each target positioning satellite.
2. The positioning method according to claim 1, characterized in that: The determining of the position residual corresponding to each target satellite based on the position data of the target mobile device includes: Inputting the location data of the target mobile device into the positioning observation model to obtain the predicted location of the target mobile device output by the positioning observation model; Determine a predicted distance of the target mobile device corresponding to each target satellite based on the predicted position of the target mobile device; Determine a pseudorange observation value corresponding to each target satellite from the position data of the target mobile device; The predicted distance of the target mobile device corresponding to each target satellite and the pseudo-range observation value corresponding to each target satellite are subtracted to obtain the position residual corresponding to each target satellite.
3. The positioning method according to claim 1, characterized in that: The method of determining the velocity residual corresponding to each valid satellite based on the velocity data of the target mobile device, and determining the valid satellite whose velocity residual meets a preset condition as an available satellite, includes: Determine the velocity observation value corresponding to each valid satellite from the velocity data of the target mobile device; If the sampling rate of the target mobile device is less than or equal to a preset sampling rate threshold, input the speed data of the target mobile device into the first speed estimation model to obtain the predicted speed of the target mobile device output by the first speed estimation model; for each valid satellite, determine the difference between the predicted speed of the target mobile device and the speed observation value corresponding to the valid satellite as the first speed residual corresponding to the valid satellite; determine the valid satellite whose first speed residual is less than the first preset speed residual as a valid satellite that meets the preset condition, and determine the valid satellite as an available satellite; If the sampling rate of the target mobile device is greater than a preset sampling rate threshold, the speed data of the target mobile device is input into the second speed estimation model to obtain the average speed of the target mobile device between the current epoch and the previous epoch output by the second speed estimation model; for each valid satellite, the difference between the average speed of the target mobile device between the current epoch and the previous epoch and the speed observation value corresponding to the valid satellite is determined as the second speed residual corresponding to the valid satellite; a valid satellite whose second speed residual is less than a second preset speed residual is determined as a valid satellite that meets preset conditions, and the valid satellite is determined as an available satellite.
4. The positioning method according to claim 3, characterized in that: The method of determining a carrier phase floating point solution and a double-difference ambiguity corresponding to each available satellite based on the estimated position of the target mobile device and the positioning data of the target mobile device includes: If the sampling rate of the target mobile device is lower than or equal to a preset sampling rate threshold, the predicted speed of the target mobile device is determined as a virtual speed observation; If the sampling rate of the target mobile device is higher than the preset sampling rate threshold, the average speed of the target mobile device between the current epoch and the previous epoch and the variance of the predicted speed of the target mobile device are weighted averaged to obtain the weighted speed of the target mobile device, and the weighted speed of the target mobile device is determined as the virtual speed observation; The estimated position, virtual velocity observation and positioning data of the target mobile device are input into the positioning model, and the carrier phase floating point solution and double difference ambiguity corresponding to each available satellite output by the positioning model are obtained.
5. The positioning method according to claim 1, characterized in that: Using the double-difference ambiguity corresponding to each available satellite, multiple target positioning satellites are determined, including: For each available satellite, searching for the available satellite in a historical target satellite set of a previous epoch, and if the available satellite is not in the historical target satellite set, determining the available satellite as a newly appeared satellite; If the number of available satellites is greater than the preset number of satellites, newly appeared satellites whose double-difference ambiguity is greater than the preset double-difference ambiguity threshold are eliminated from the multiple available satellites to obtain multiple target positioning satellites; If the number of available satellites is less than or equal to the preset number of satellites, each available satellite is determined as a target positioning satellite.
6. The positioning method according to claim 1, characterized in that: The method of determining the target position of the target mobile device by using the carrier phase floating point solution corresponding to each target positioning satellite includes: Combine multiple target positioning satellites to form a target positioning satellite set; Fix the ambiguity of the carrier phase floating point solution corresponding to each target positioning satellite in the target positioning satellite set to obtain the integer ambiguity corresponding to each target positioning satellite; The integer ambiguity corresponding to each target positioning satellite is input into the positioning model to obtain the target position of the target mobile device output by the positioning model.
7. A positioning device for a mobile device, characterized in that: The device comprises: A data processing module, which determines the position data, speed data and positioning data of the target mobile device based on the navigation data of multiple target satellites received by the target mobile device; The position residual solution module determines the position residual corresponding to each target satellite based on the position data of the target mobile device, and determines the target satellite whose position residual meets the preset conditions as a valid satellite; The velocity residual solution module determines the velocity residual corresponding to each valid satellite based on the velocity data of the target mobile device, and determines the valid satellite whose velocity residual meets the preset conditions as an available satellite; an estimated location determination module, which determines an estimated location of a target mobile device based on a plurality of available satellites and location data of the target mobile device; A floating point solution and double difference ambiguity determination module, which determines a carrier phase floating point solution and a double difference ambiguity corresponding to each available satellite based on an estimated position of the target mobile device and positioning data of the target mobile device; The target positioning satellite determination module determines multiple target positioning satellites using the double difference ambiguity corresponding to each available satellite; The target position determination module determines the target position of the target mobile device using the carrier phase floating point solution corresponding to each target positioning satellite.
8. The positioning device according to claim 7, characterized in that: The position residual solving module is used to determine the position residual corresponding to each target satellite based on the position data of the target mobile device, and is also specifically used to: Inputting the location data of the target mobile device into the positioning observation model to obtain the predicted location of the target mobile device output by the positioning observation model; Determine a predicted distance of the target mobile device corresponding to each target satellite based on the predicted position of the target mobile device; Determine a pseudorange observation value corresponding to each target satellite from the position data of the target mobile device; The predicted distance of the target mobile device corresponding to each target satellite and the pseudo-range observation value corresponding to each target satellite are subtracted to obtain the position residual corresponding to each target satellite.
9. An electronic device, characterized in that: include: A processor, a memory and a bus, wherein the memory stores machine-readable instructions executable by the processor, and when the electronic device is running, the processor and the memory communicate through the bus, and the machine-readable instructions are executed by the processor to perform the steps of the positioning method for a mobile device as described in any one of claims 1 to 6.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method for positioning a mobile device according to any one of claims 1 to 6 are executed.
Citation Information
Patent Citations
Method and equipment for testing measurement error of satellite navigation receiver under dynamic condition
CN112987038A
Satellite navigation positioning method and device, electronic equipment and readable storage medium
CN118642144A
Monitor based ambiguity verification for enhanced guidance quality
US20160097859A1