Positioning method and apparatus, electronic device, and storage medium

By classifying and clustering satellite frequency pseudorange values, and using least squares positioning solutions and cluster calculations, abnormal observations in GNSS carrier differential positioning are eliminated, solving the problem of large positioning result deviations in existing technologies and improving positioning accuracy and precision.

CN115902972BActive Publication Date: 2026-05-29QIANXUN SPATIAL INTELLIGENCE INC

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
QIANXUN SPATIAL INTELLIGENCE INC
Filing Date
2021-08-16
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

Existing methods for eliminating abnormal observations are prone to large deviations in positioning results in GNSS carrier differential positioning and cannot correctly identify abnormal observations. Especially in harsh environments with severe multipath effects, existing methods may misjudge or fail to eliminate abnormal observations.

Method used

Clustering algorithms are used to classify pseudorange values ​​at multiple frequency points of the satellite. Least squares positioning and clustering calculations are used to identify abnormal observations. Abnormal pseudorange values ​​are eliminated by difference sorting and clustering analysis to ensure that only observations with consistent errors are eliminated and more redundant observations are retained.

Benefits of technology

It effectively eliminates abnormal observations, reduces positioning result deviations, ensures the accuracy and precision of carrier differential positioning, avoids positioning deviations caused by misjudgments, and retains more effective observations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115902972B_ABST
    Figure CN115902972B_ABST
Patent Text Reader

Abstract

The application discloses a positioning method and device, electronic equipment and storage medium, wherein the positioning method comprises the following steps: acquiring a plurality of frequency point pseudo-range values of satellites, wherein the number of satellites is multiple; taking a first frequency point pseudo-range value in the plurality of frequency point pseudo-range values as a reference, and recalculating the remaining frequency point pseudo-range values except the first frequency point pseudo-range value to the reference to obtain a plurality of target pseudo-range values with consistent recalculation; performing size sorting on the plurality of target pseudo-range values; calculating the difference between every two adjacent target pseudo-range values after sorting; dividing the plurality of target pseudo-range values into multiple categories according to the obtained difference values to obtain multiple pseudo-range values of each satellite; for the multiple pseudo-range values of all satellites, eliminating any category of pseudo-range value of any satellite and performing least square positioning calculation respectively to obtain a plurality of first positioning results; and determining a final target pseudo-range value elimination set and calculating a final positioning result according to the aggregation state of the plurality of first positioning results.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of satellite positioning technology, specifically to a positioning method, device, electronic device, and storage medium. Background Technology

[0002] Before GNSS carrier differential positioning, pseudorange point positioning is required to obtain initial positioning coordinates. In harsh environments, pseudorange errors caused by multipath effects can reach tens or hundreds of meters. If these abnormal observations are involved in pseudorange positioning, the deviation of point positioning will be large, thus affecting the convergence of ambiguity during carrier differential positioning. Due to the large initial position deviation, the ambiguity may converge incorrectly, ultimately leading to failure to fix the ambiguity or incorrect ambiguity fixation, with a fixed solution deviation of tens or hundreds of meters.

[0003] Existing methods for anomaly detection removal mostly employ Regression-Based Imaging (RAIM), which uses the receiver's own redundant observations based on least-squares residuals to monitor and identify anomalies. Currently, the main RAIM methods are residual analysis and maximum separation. Residual analysis compares the sum of residuals for each observation obtained after least-squares localization with a set threshold; if it exceeds the threshold, it is considered an anomaly. Maximum separation divides the observations into groups, removes one observation or all observations from a single satellite within each group, performs least-squares localization on each group, calculates the sum of squared residuals, and sorts these sums. The observation with the smallest sum of squared residuals is identified as the anomaly.

[0004] Both of these methods rely on least-squares residuals to detect outliers. However, when large outliers exist, they can lead to significant biases in the localization results. This can result in small residuals for outliers and large residuals for normal observations, often leading to misjudgments, failing to correctly identify outliers, and incorrectly removing normal observations. Furthermore, when the number of observations is very large, the sum of squared residuals after localization is usually small, and the change in the sum of squared residuals after removing outliers is also small. Therefore, it may be impossible to identify outliers based on this method alone. Summary of the Invention

[0005] The purpose of this application is to provide a positioning method, device, electronic device, and storage medium to at least solve the problem that large anomaly detection errors in existing systems lead to large deviations in positioning results.

[0006] The technical solution of this application is as follows:

[0007] According to a first aspect of the embodiments of this application, a positioning method is provided, the method including:

[0008] Obtain pseudorange values ​​at multiple frequency points of a satellite, where there are multiple satellites;

[0009] For each of the multiple satellites, the pseudorange at the first frequency point among the multiple pseudorange values ​​is used as the reference, and the pseudorange values ​​at the other frequencies other than the first frequency point are reduced to the reference to obtain multiple target pseudorange values ​​that are reduced in a consistent manner.

[0010] For each of the multiple satellites, sort the multiple target pseudorange values ​​by size;

[0011] For each of the multiple satellites, calculate the difference between every two adjacent target pseudorange values ​​after sorting;

[0012] For each of the multiple satellites, the multiple target pseudorange values ​​are divided into multiple categories based on the obtained differences, thus obtaining the multiple categories of pseudorange values ​​for each satellite.

[0013] For all satellite pseudorange values ​​of various types, remove any pseudorange value of any satellite and perform least squares positioning calculations to obtain multiple first positioning results;

[0014] The final target pseudorange value elimination set is determined based on the aggregation state of multiple first positioning results, and the final positioning result is calculated.

[0015] Furthermore, based on the aggregation state of multiple first positioning results, the target pseudorange values ​​that need to be removed are determined, and the final positioning result is calculated, including:

[0016] Multiple initial positioning results are converted into multiple corresponding initial latitude, longitude, and elevation coordinates to obtain multiple corresponding elevation values;

[0017] Calculate the sum of the differences between each elevation value and all other elevation values ​​to obtain multiple first sum values;

[0018] Sort the multiple first sum values ​​by size and perform clustering calculations to obtain a preset number of clusters;

[0019] Compare the first sum value of each of the clusters with the highest outlier degree among the preset number of clusters with the first preset threshold.

[0020] When any first sum value in the cluster with the highest outlier degree is greater than the first preset threshold, the target pseudorange value corresponding to the first sum value that is greater than the first preset threshold is included in the first target pseudorange value elimination set.

[0021] The first target pseudorange value removal set is removed from the total set of pseudorange values ​​of multiple targets from multiple satellites, and the second positioning result is obtained by solving the problem.

[0022] The final positioning result is obtained based on the second positioning result.

[0023] Furthermore, the clustering calculation is a k-means clustering calculation, which sorts multiple first sum values ​​by size and performs clustering calculation to obtain a preset number of clusters, specifically including:

[0024] Sort multiple first sum values ​​by size;

[0025] Determine the value of k, and select k values ​​from multiple first sum values ​​as the initial cluster centers;

[0026] Calculate the distance between each of the multiple first sums and its corresponding initial cluster center;

[0027] The first sum value corresponding to the minimum distance is reclassified until the k centers no longer change or no object is reassigned to a different cluster, resulting in a preset number of clusters.

[0028] Furthermore, after removing the first target pseudorange value removal set from the total set of pseudorange values ​​for multiple targets from multiple satellites and solving to obtain the second positioning result, the method also includes:

[0029] The second positioning result is converted into a second latitude and longitude coordinate system, resulting in multiple latitude and longitude values;

[0030] Calculate the sum of the horizontal distances of each latitude and longitude value from the other latitude and longitude values ​​to obtain multiple second sum values;

[0031] Arrange the multiple second sums in ascending order, and calculate the difference between the two largest second sums to obtain the target difference;

[0032] When the target difference is greater than the first preset threshold, the target pseudorange value corresponding to the largest second sum value will be included in the second target pseudorange value elimination set.

[0033] The first target pseudorange value removal set and the second target pseudorange value removal set are removed from the total set of pseudorange values ​​of multiple targets from multiple satellites, and the final positioning result is obtained by solving the problem.

[0034] According to a second aspect of the embodiments of this application, a positioning method is provided, the method including:

[0035] Obtain pseudorange values ​​at multiple frequency points of a satellite, where there are multiple satellites;

[0036] For each of the multiple satellites, the pseudorange at the first frequency point among the multiple pseudorange values ​​is used as the reference, and the pseudorange values ​​at the other frequencies other than the first frequency point are reduced to the reference to obtain multiple target pseudorange values ​​that are reduced in a consistent manner.

[0037] For each of the multiple satellites, sort the multiple target pseudorange values ​​by size;

[0038] For each of the multiple satellites, calculate the difference between every two adjacent target pseudorange values ​​after sorting;

[0039] For each of the multiple satellites, the multiple target pseudorange values ​​are divided into multiple categories based on the obtained differences, thus obtaining the multiple categories of pseudorange values ​​for each satellite.

[0040] For all satellites, remove any pseudorange value of any satellite and perform least squares positioning calculations to obtain multiple first positioning results and a first target pseudorange removal set.

[0041] Multiple first positioning results are converted into multiple corresponding first latitude and longitude coordinates to obtain multiple corresponding latitude and longitude values;

[0042] Calculate the sum of the horizontal distances of each latitude and longitude value from the other latitude and longitude values ​​to obtain multiple second sum values;

[0043] Arrange the multiple second sums in ascending order, and calculate the difference between the two largest second sums to obtain the target difference;

[0044] When the target difference is greater than the first preset threshold, the pseudorange value corresponding to the target difference is removed, and then any type of pseudorange value of any satellite is removed in turn, and the least squares positioning solution is performed respectively to obtain multiple second positioning results and a second target pseudorange removal set;

[0045] The single-point localization result is obtained by solving the pseudorange elimination set of the first target and the pseudorange elimination set of the second target.

[0046] The point positioning results are used to perform carrier differential positioning calculations to obtain the final positioning result.

[0047] According to a third aspect of the embodiments of this application, a positioning method is provided, the method including:

[0048] Obtain pseudorange values ​​at multiple frequency points of a satellite, where there are multiple satellites;

[0049] The pseudorange values ​​at multiple frequencies from multiple satellites are classified into multiple categories.

[0050] For all satellite pseudorange values ​​of various types, remove any pseudorange value of any satellite and perform least squares positioning calculations to obtain multiple first positioning results;

[0051] The final target pseudorange value elimination set is determined based on the aggregation state of multiple first positioning results, and the final positioning result is calculated.

[0052] Furthermore, the pseudorange values ​​at multiple frequencies across multiple satellites are categorized into several types, including at least one of the following:

[0053] Sort the pseudorange values ​​at multiple frequency points by size, calculate the difference between every two adjacent pseudorange values ​​after sorting, and classify the pseudorange values ​​into multiple categories based on the obtained differences to obtain multi-category pseudorange values; or

[0054] The pseudorange values ​​at multiple frequency points are classified according to the satellites corresponding to each pseudorange value, resulting in multiple categories of pseudorange values; or

[0055] Multiple pseudorange values ​​at different frequencies are classified into categories according to each pseudorange value at a different frequency, resulting in multiple categories of pseudorange values.

[0056] According to a fourth aspect of the embodiments of this application, a positioning device is provided, the device including:

[0057] The first acquisition module is used to acquire pseudorange values ​​of multiple frequency points of satellites, wherein there are multiple satellites;

[0058] The first reduction module is used to take the pseudorange of the first frequency point among the multiple frequency pseudorange values ​​as the reference for each of the multiple satellites, and reduce the pseudorange values ​​of the other frequency points among the multiple frequency pseudorange values ​​except the first frequency pseudorange value to the reference, so as to obtain multiple target pseudorange values ​​that are reduced in a consistent manner.

[0059] The first sorting module is used to sort the multiple target pseudorange values ​​by size for each of the multiple satellites.

[0060] The first difference calculation module is used to calculate the difference between every two adjacent target pseudorange values ​​after sorting for each of the multiple satellites.

[0061] The first classification module is used to classify multiple target pseudorange values ​​into multiple categories for each of the multiple satellites based on the obtained differences, so as to obtain the multiple pseudorange values ​​of each satellite.

[0062] The first positioning solution module is used to eliminate any pseudorange value of any satellite from the multiple pseudorange values ​​of all satellites and perform least squares positioning solution for each satellite to obtain multiple first positioning results.

[0063] The first final positioning module is used to determine the final target pseudorange value elimination set based on the aggregation state of multiple first positioning results and to calculate the final positioning result.

[0064] According to a fifth aspect of the embodiments of this application, a positioning device is provided, the device including:

[0065] The second acquisition module is used to acquire pseudorange values ​​of multiple frequency points of the satellite, wherein the number of satellites is multiple;

[0066] The second reduction module is used to take the first frequency pseudorange value among the multiple frequency pseudorange values ​​as the reference for each of the multiple satellites, and reduce the other frequency pseudorange values ​​among the multiple frequency pseudorange values ​​except the first frequency pseudorange value to the reference, so as to obtain multiple target pseudorange values ​​that are reduced in a consistent manner.

[0067] The second sorting module is used to sort the multiple target pseudorange values ​​by size for each of the multiple satellites.

[0068] The second difference calculation module is used to calculate the difference between every two adjacent target pseudorange values ​​after sorting for each of the multiple satellites.

[0069] The second classification module is used to classify multiple target pseudorange values ​​into multiple categories for each of the multiple satellites based on the obtained differences, thus obtaining multiple pseudorange values ​​for each satellite.

[0070] The second positioning solution module is used to eliminate any pseudorange value of any satellite from the multiple pseudorange values ​​of all satellites and perform least squares positioning solution respectively to obtain multiple first positioning results and a first target pseudorange elimination set.

[0071] The latitude and longitude conversion module is used to convert multiple first positioning results into multiple corresponding first latitude and longitude coordinates to obtain multiple corresponding latitude and longitude values;

[0072] The sum calculation module is used to calculate the sum of the horizontal distances between each of the multiple latitude and longitude values ​​and the other latitude and longitude values, and to obtain multiple second sums;

[0073] The third difference calculation module is used to arrange multiple second sums in ascending order and calculate the difference between the two largest second sums to obtain the target difference.

[0074] The third positioning solution module is used to remove the pseudorange value corresponding to the target difference when the target difference is greater than the first preset threshold, and then remove any type of pseudorange value of any satellite in sequence and perform least squares positioning solution respectively to obtain multiple second positioning results and a second target pseudorange removal set.

[0075] The single-point localization module is used to calculate the single-point localization result based on the first target pseudorange elimination set and the second target pseudorange elimination set;

[0076] The carrier differential positioning solution module is used to perform carrier differential positioning solution on the point positioning results to obtain the final positioning result.

[0077] According to a sixth aspect of the embodiments of this application, a positioning device is provided, the device may include:

[0078] The third acquisition module is used to acquire pseudorange values ​​of multiple frequency points of the satellite, where there are multiple satellites.

[0079] The third classification module is used to classify pseudorange values ​​at multiple frequency points from multiple satellites into multiple categories of pseudorange values.

[0080] The fourth positioning solution module is used to eliminate any pseudorange value of any satellite from the multiple pseudorange values ​​of all satellites and perform least squares positioning solution for each satellite to obtain multiple first positioning results.

[0081] The second final positioning module is used to determine the final target pseudorange value elimination set based on the aggregation state of multiple first positioning results and to calculate the final positioning result.

[0082] According to a seventh aspect of the embodiments of this application, an electronic device is provided, which may include:

[0083] processor;

[0084] Memory used to store processor-executable instructions;

[0085] The processor is configured to execute instructions to implement the information processing method as shown in any embodiment of the first aspect.

[0086] According to an eighth aspect of the embodiments of this application, a storage medium is provided that, when instructions in the storage medium are executed by a processor of an information processing apparatus or a server, causes the information processing apparatus or server to implement the information processing method as shown in any embodiment of the first aspect.

[0087] The technical solutions provided by the embodiments of this application bring at least the following beneficial effects:

[0088] This application embodiment obtains multiple pseudorange values ​​at multiple frequency points from a satellite, wherein there are multiple satellites; the pseudorange at the first frequency point among the multiple pseudorange values ​​is used as a reference, and the pseudorange values ​​at other frequency points besides the first frequency point are reduced to the reference, resulting in multiple target pseudorange values ​​that are uniformly reduced; the multiple target pseudorange values ​​are sorted by size; the difference between each pair of adjacent target pseudorange values ​​after sorting is calculated; the multiple target pseudorange values ​​are divided into multiple categories based on the obtained differences, resulting in multiple categories of pseudorange values ​​for each satellite; any category of pseudorange values ​​for any satellite is removed, and least squares positioning calculation is performed on each, resulting in multiple first positioning results; the final target pseudorange value removal set is determined based on the aggregation state of the multiple first positioning results, and the final positioning result is calculated. This method avoids two drawbacks of least squares residual-based methods. It uses a clustering algorithm to identify outliers in the least squares elevation data, performing the first stage of outlier removal. Then, it uses the least squares horizontal coordinates to calculate the distance between multiple results. By detecting the largest outlier, it performs the second stage of outlier removal. Based on the consistency of errors, it classifies the observations of multiple frequency points of a satellite. When removing observations, it removes one type of observation at a time, ensuring that the situation where removing only one observation due to the consistency of errors across multiple frequency points has a minimal impact on the results, and also retaining as many redundant observations as possible.

[0089] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this application. Attached Figure Description

[0090] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application, and do not constitute an undue limitation of this application.

[0091] Figure 1 This is a schematic flowchart illustrating a positioning method according to an exemplary embodiment;

[0092] Figure 2 This is a schematic diagram of a positioning method flow according to another exemplary embodiment;

[0093] Figure 3 This is a schematic diagram of a positioning method according to yet another exemplary embodiment;

[0094] Figure 4 This is a schematic diagram of a GNSS positioning satellite selection method according to a specific embodiment;

[0095] Figure 5 This is a schematic diagram of an electronic device structure according to an exemplary embodiment. Detailed Implementation

[0096] To enable those skilled in the art to better understand the technical solutions of this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.

[0097] It should be noted that the terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0098] The positioning method provided in this application will be described in detail below with reference to the accompanying drawings, through specific embodiments and application scenarios.

[0099] like Figure 1 As shown, in a first aspect of the embodiments of this application, a positioning method is provided, which may include:

[0100] S110: Obtain pseudorange values ​​at multiple frequency points of the satellite;

[0101] S120: Take the pseudorange of the first frequency point among the multiple frequency pseudorange values ​​as the reference, and reduce the pseudorange values ​​of the other frequency points among the multiple frequency pseudorange values ​​except the first frequency pseudorange value to the reference, so as to obtain multiple target pseudorange values ​​that are uniformly reduced.

[0102] S130: Sort multiple target pseudorange values ​​by size;

[0103] S140: Calculate the difference between every two adjacent pseudorange values ​​of the target after sorting;

[0104] S150: Based on the obtained differences, the pseudorange values ​​of multiple targets are divided into multiple categories to obtain the pseudorange values ​​of each satellite.

[0105] S160: Remove any pseudorange value of any satellite and perform least squares positioning calculations to obtain multiple first positioning results;

[0106] S170: Determine the final target pseudorange value elimination set based on the aggregation state of multiple first positioning results and calculate the final positioning result.

[0107] The above-described method avoids the two drawbacks of least squares residuals. It uses a clustering algorithm to identify outliers in the least squares elevation data and performs the first stage of outlier observation removal. Then, it uses the least squares horizontal coordinates to calculate the distance between multiple results. By detecting the largest outlier, it performs the second stage of outlier observation removal. Based on the consistency of the error, the observations of multiple frequency points of a satellite are classified. When removing observations, one type of observation is removed to ensure that the situation where removing only one observation due to the consistency of errors of multiple frequency points has little impact on the result is not encountered. It can also retain as many redundant observations as possible.

[0108] The following is a description of each of the above steps:

[0109] First, in step S110, multiple pseudorange values ​​of the satellite at multiple frequency points are obtained; and in step S120, the pseudorange of the first frequency point among the multiple pseudorange values ​​is used as a reference, and the pseudorange values ​​of the other frequency points among the multiple pseudorange values ​​except the first frequency point are reduced to the reference, so as to obtain multiple target pseudorange values ​​that are uniformly reduced.

[0110] The pseudorange values ​​at multiple frequencies in the above steps are pseudorange values ​​at multiple satellite frequencies. For each of these satellites, due to the existence of differential code deviation, the pseudorange values ​​at all frequencies need to be uniformly calculated. Using the pseudorange at the first frequency as a reference, the pseudorange values ​​at all remaining frequencies are uniformly calculated to the first frequency.

[0111] pr i= pr_raw i +DCB i

[0112] In the formula: pr i pr_raw is the pseudorange value after being reduced to the first frequency point. i The original pseudorange value, DCB i This is the deviation between the pseudorange of other frequency points (excluding the first frequency point) and the pseudorange of the first frequency point. This value can generally be obtained in advance.

[0113] Next, we will introduce step S130, which sorts the multiple target pseudorange values ​​by size; step S140, which calculates the difference between each pair of adjacent target pseudorange values ​​after sorting; and step S150, which divides the multiple target pseudorange values ​​into multiple categories based on the obtained differences, thus obtaining multiple categories of pseudorange values ​​for each satellite.

[0114] For each of the multiple satellites, the above steps sort the consistent pseudoranges from largest to smallest. Starting with the first pseudorange, the difference between consecutive pseudoranges is calculated sequentially. If the difference is less than a preset range (usually 10-20 meters), the two pseudoranges are grouped together. If the difference is greater than the preset range, the difference between consecutive pseudoranges is calculated sequentially starting with the pseudorange greater than the preset range. Similarly, pseudoranges at different frequencies of the same satellite can be divided into m categories based on pseudorange consistency.

[0115] For example, if a satellite has pseudoranges at three frequencies, and after sorting, the difference between the first and second pseudoranges is less than 10 meters, and the difference between the second and third pseudoranges is also less than 10 meters, then they are classified into one category; if the difference between the first and second pseudoranges is less than 10 meters, and the difference between the second and third pseudoranges is greater than 10 meters, then they are classified into two categories, i.e., the first and second pseudoranges are in one category, and the third pseudorange is in another category; if the difference between the first and second pseudoranges is greater than 10 meters, and the difference between the second and third pseudoranges is also greater than 10 meters, then they are classified into three categories.

[0116] Finally, let's introduce step S160, which removes any type of pseudorange value from any satellite and performs least squares positioning calculations to obtain multiple first positioning results; and step S170, which determines the final target pseudorange value removal set based on the aggregation state of the multiple first positioning results and calculates the final positioning result.

[0117] For example, for all satellite pseudorange values ​​of various types, after sequentially removing pseudoranges of the same type from all satellites, least squares positioning is performed to obtain n solutions, which are then converted into latitude, longitude, and elevation coordinates. The sum of the differences between each elevation value and all other elevation values ​​is calculated, and these n sums of differences are sorted in ascending order. The k-means clustering algorithm is used to divide these sorted sums of differences into three clusters. It is determined whether the sum of all differences in the third cluster, which has the highest outlier, is greater than a threshold. If it is, the corresponding pseudorange is considered to have the highest cluster degree, i.e., a large pseudorange error, and is marked as an anomalous pseudorange, which is no longer included in subsequent positioning calculations. After again sequentially removing pseudoranges of the same type from all satellites, least squares positioning is performed to obtain p solutions, which are then converted into latitude, longitude, and elevation coordinates. The sum of the horizontal distances between the latitude and longitude values ​​of each result and other results is calculated, and these p sums of distances are sorted in ascending order. The process involves determining if the difference between the sum of the last and second-to-last distances exceeds a threshold. If it does, the pseudorange corresponding to that sum is marked as an anomalous pseudorange, and this anomalous pseudorange is no longer used in subsequent positioning calculations. This elimination step is repeated until the difference between the sum of the last and second-to-last distances is less than the threshold. After eliminating all anomalous pseudoranges, the least squares calculation is performed again to obtain the single-point positioning result. Carrier differential positioning is then performed, and anomalous pseudoranges are again excluded from this calculation to ensure that initializing ambiguity using pseudoranges does not introduce significant errors that could affect ambiguity convergence.

[0118] The horizontal and vertical coordinates of the least-squares positioning results in the above embodiments avoid two drawbacks of relying solely on least-squares residuals. Machine learning clustering algorithms are used to identify outliers in the least-squares elevation data; the horizontal coordinates are used to calculate the distance between multiple results, and the largest outlier is detected to remove abnormal observations. Furthermore, observations from multiple frequency points of a satellite are classified based on error consistency. When removing observations, only one class of observations is removed, ensuring that removing only one observation due to consistent errors across multiple frequency points has minimal impact on the results, and also ensuring that as many redundant observations as possible are retained.

[0119] In some optional embodiments of this application, determining the target pseudorange value to be removed based on the aggregation state of multiple first positioning results and calculating the final positioning result includes: converting multiple first positioning results into multiple corresponding first latitude, longitude, and elevation coordinates to obtain multiple corresponding elevation values; calculating the sum of the differences between each elevation value and all other elevation values ​​to obtain multiple first sum values; sorting the multiple first sum values ​​by size and performing clustering calculations to obtain a preset number of clusters; comparing each first sum value in the cluster with the highest outlier degree among the preset number of clusters with a first preset threshold; when any first sum value in the cluster with the highest outlier degree is greater than the first preset threshold, including the target pseudorange value corresponding to the first sum value greater than the first preset threshold in the first target pseudorange value removal set; removing the first target pseudorange value removal set from the total set of multiple target pseudorange values ​​of multiple satellites and solving to obtain a second positioning result; and obtaining the final positioning result based on the second positioning result.

[0120] In this embodiment, after sequentially removing pseudoranges of the same type from all satellites, least squares positioning is performed to obtain a solution. This solution is then converted into latitude, longitude, and elevation coordinates. The sum of the differences between each elevation value and all other elevation values ​​is calculated and sorted in ascending order. A clustering algorithm is used to cluster these sorted sums of differences. After removing all anomalous pseudoranges, least squares positioning is performed again to obtain a single-point positioning result. Finally, carrier differential positioning is performed based on the single-point positioning result to obtain the final positioning result. Anomalous pseudoranges are also excluded from carrier differential positioning to ensure that initializing ambiguity using pseudoranges does not introduce significant errors that could affect ambiguity convergence.

[0121] In some optional embodiments of this application, the clustering calculation is a k-means clustering calculation, which sorts multiple first sum values ​​by size and performs clustering calculation to obtain a preset number of clusters, specifically including:

[0122] Sort multiple first sum values ​​by size;

[0123] Determine the value of k, and select k values ​​from multiple first sum values ​​as the initial cluster centers;

[0124] Calculate the distance between each of the multiple first sums and its corresponding initial cluster center;

[0125] The first sum value corresponding to the minimum distance is reclassified until the k centers no longer change or no object is reassigned to a different cluster, resulting in a preset number of clusters.

[0126] For example, the k value is first selected for multiple first sums. The choice of k value has a great impact on the result. Based on experience, the k value is selected as 3, that is, the elevation values ​​are divided into 2-4 clusters using the k-means algorithm. In this embodiment, it is divided into 3 clusters. These 3 clusters represent 3 types of data: cluster 1 has the highest aggregation degree, cluster 2 is in the middle, and cluster 3 has the highest outlier degree.

[0127] After determining the value of k, it is necessary to select the initial cluster centers, and the selection of these centers will greatly affect the final result. Select 3 from the sum of these n differences as the initial cluster centers, namely the first, the middle, and the last of the sorted sum of differences, and denote them as μ1, μ2, and μ3.

[0128] The input sample D is the sum of all differences {x1, x2, ..., x}. n The output cluster C is {C1, C2, ..., C}. k}

[0129] For each sum of differences, calculate its distance to each center:

[0130] d ij =‖x i -μ j ||

[0131] The calculated x i The smallest d ij Mark it, and re-mark x i It is assigned to its corresponding new class C j .

[0132] For each cluster C j Recalculate the new cluster centers:

[0133]

[0134] Repeat the above process until convergence occurs, i.e., all k centers no longer change or no objects are reassigned to different clusters.

[0135] In some optional embodiments of this application, after removing the first target pseudorange value removal set from the total set of multiple target pseudorange values ​​of multiple satellites and calculating the second positioning result, the method further includes: converting the second positioning result into second latitude and longitude coordinates to obtain multiple latitude and longitude values; calculating the sum of the horizontal distances of each latitude and longitude value and other latitude and longitude values ​​to obtain multiple second sums; arranging the multiple second sums in ascending order and calculating the difference between the two largest second sums to obtain the target difference; when the target difference is greater than a first preset threshold, including the target pseudorange value corresponding to the largest second sum in the second target pseudorange value removal set; removing the first target pseudorange value removal set and the second target pseudorange value removal set from the total set of multiple target pseudorange values ​​of multiple satellites and calculating the final positioning result.

[0136] This embodiment involves sequentially removing pseudoranges of the same type from all satellites before performing least-squares positioning calculations to obtain p results. These results are then converted to latitude, longitude, and height coordinates. The sum of the horizontal distances between the latitude and longitude values ​​of each result and the latitude and longitude values ​​of other results is calculated, and these p distance sums are sorted in ascending order. The difference between the last distance sum and the second-to-last distance sum is checked to see if it exceeds a threshold. If it does, the pseudorange corresponding to that distance sum is marked as having an abnormal pseudorange, and this abnormal pseudorange will not participate in subsequent positioning calculations. This process continues until the difference between the last distance sum and the second-to-last distance sum is less than the threshold. After removing all abnormal pseudoranges, least-squares calculations are performed again to obtain single-point positioning results. Carrier differential positioning calculations are then performed, and abnormal pseudoranges are again excluded from the carrier differential positioning calculations to ensure that pseudorange initialization of ambiguity does not introduce significant errors that could affect ambiguity convergence.

[0137] like Figure 2 As shown, in a second aspect of the embodiments of this application, a positioning method is provided, which may include:

[0138] S210: Obtain pseudorange values ​​for multiple frequency points of a satellite, where the number of satellites is multiple;

[0139] S220: For each of the multiple satellites, the pseudorange of the first frequency point among the multiple frequency pseudorange values ​​is used as the reference, and the pseudorange values ​​of the other frequency points other than the first frequency point pseudorange value are reduced to the reference to obtain multiple target pseudorange values ​​that are reduced in a consistent manner.

[0140] S230: For each of the multiple satellites, sort the multiple target pseudorange values ​​by size;

[0141] S240: For each of the multiple satellites, calculate the difference between every two adjacent target pseudorange values ​​after sorting;

[0142] S250: For each of the multiple satellites, the multiple target pseudorange values ​​are divided into multiple categories according to the obtained differences, and the multiple categories of pseudorange values ​​for each satellite are obtained.

[0143] S260: For all satellites, remove any pseudorange value of any satellite and perform least squares positioning calculations to obtain multiple first positioning results and a first target pseudorange removal set.

[0144] S270: Convert multiple first positioning results into multiple corresponding first latitude and longitude coordinates to obtain multiple corresponding latitude and longitude values;

[0145] S280: Calculate the sum of the horizontal distances of each latitude and longitude value from the other latitude and longitude values ​​to obtain multiple second sum values;

[0146] S290: Arrange multiple second sums in ascending order and calculate the difference between the two largest second sums to obtain the target difference;

[0147] S2100: When the target difference is greater than the first preset threshold, after removing the pseudorange value corresponding to the target difference, remove any type of pseudorange value of any satellite in sequence and perform least squares positioning calculation respectively to obtain multiple second positioning results and a second target pseudorange removal set;

[0148] S2110: The single-point positioning result is obtained by solving the first target pseudorange elimination set and the second target pseudorange elimination set;

[0149] S2120: Perform carrier differential positioning calculation on the point positioning results to obtain the final positioning result.

[0150] This embodiment utilizes the horizontal coordinates of the least squares positioning results, avoiding two drawbacks of relying solely on least squares residuals. Distances between multiple results are calculated using the least squares horizontal coordinates, and outlier observations are removed again by detecting the largest outlier. Furthermore, observations from multiple frequency points of a satellite are categorized based on error consistency. When removing observations, only one category of observations is removed, ensuring that removing only one observation due to consistent errors across multiple frequency points has minimal impact on the final result. This also ensures that as many redundant observations as possible are retained.

[0151] In a third aspect of this application, a positioning method is provided, which may include:

[0152] S310: Obtain pseudorange values ​​at multiple frequency points of a satellite, where the number of satellites is multiple;

[0153] S320: Pseudorange values ​​at multiple frequencies across multiple satellites are categorized into multiple pseudorange values;

[0154] S330: For all satellite pseudorange values ​​of various types, remove any pseudorange value of any satellite and perform least squares positioning calculations to obtain multiple first positioning results;

[0155] S340: Determine the final target pseudorange value elimination set based on the aggregation state of multiple first positioning results and calculate the final positioning result.

[0156] This embodiment classifies the pseudorange values ​​of frequency points in satellite data and uses least squares positioning calculation to remove one type of observation when removing observations. This ensures that removing only one observation due to the consistent error of multiple frequency points will not have a significant impact on the result, and also ensures that as many redundant observations as possible are retained.

[0157] In some optional embodiments of this application, pseudorange values ​​at multiple frequency points among multiple satellites are classified into multiple categories of pseudorange values, including at least one of the following:

[0158] Sort the pseudorange values ​​at multiple frequency points by size, calculate the difference between every two adjacent pseudorange values ​​after sorting, and classify the pseudorange values ​​into multiple categories based on the obtained differences to obtain multi-category pseudorange values; or

[0159] The pseudorange values ​​at multiple frequency points are classified according to the satellites corresponding to each pseudorange value, resulting in multiple categories of pseudorange values; or

[0160] Multiple pseudorange values ​​at different frequencies are classified into categories according to each pseudorange value at a different frequency, resulting in multiple categories of pseudorange values.

[0161] like Figure 4 As shown in a specific embodiment of this application, a GNSS positioning satellite selection method is provided, including:

[0162] S410: Using the pseudorange of the first frequency point as a reference, the pseudoranges of all remaining frequency points are reduced to the first frequency point;

[0163] S420: Sort the pseudoranges after they have been recalculated from largest to smallest, and classify the pseudoranges between different frequencies of the same satellite into m categories according to pseudorange consistency;

[0164] S430: After successively eliminating the same type of pseudorange from all satellites, perform least squares positioning calculation to obtain n calculation results, and convert them into latitude, longitude and altitude coordinates;

[0165] S440: Calculate the sum of the differences between each elevation value and all other elevation values, and sort these n sums of differences in ascending order;

[0166] S450: Use the k-means clustering algorithm to divide the sum of these sorted differences into three clusters;

[0167] S460: Determine whether the sum of all differences in cluster 3 with the highest outlier degree is greater than the threshold. If it is greater than the threshold, the corresponding pseudo-distance cluster with the highest degree is considered to have a large pseudo-distance error. It is marked as an abnormal pseudo-distance and will no longer participate in the subsequent localization calculation.

[0168] S470: After eliminating the same type of pseudorange from all satellites again, perform least squares positioning calculation to obtain p calculation results, and convert them into latitude, longitude and altitude coordinates;

[0169] S480: Calculate the sum of the horizontal distances between the latitude and longitude values ​​of each result and the latitude and longitude values ​​of other results, and sort these p sums of distances in ascending order;

[0170] S490: Determine if the difference between the sum of the last distance and the sum of the second-to-last distance is greater than a threshold. If it is greater than the threshold, mark the discarded pseudorange corresponding to that distance sum as having abnormal pseudoranges. Abnormal pseudoranges will no longer participate in the subsequent localization calculation. Repeat steps S470 to S490 until the difference between the sum of the last distance and the sum of the second-to-last distance is less than the threshold.

[0171] S4100: After removing all abnormal pseudoranges, perform the least squares solution again to obtain the single-point positioning result;

[0172] S4110: Perform carrier differential positioning calculation. Abnormal pseudoranges are not included in the carrier differential positioning calculation, and the final positioning result is obtained.

[0173] This embodiment utilizes the horizontal and vertical coordinates of the least squares positioning results, avoiding two drawbacks of relying solely on least squares residuals. Machine learning clustering algorithms are used to identify outliers in the least squares elevation data; the horizontal coordinates are used to calculate distances between multiple results, and the largest outlier is detected to further eliminate abnormal observations. Furthermore, observations from multiple frequency points of a satellite are categorized based on error consistency. When eliminating observations, only one category of observations is removed, ensuring that eliminating only one observation due to consistent errors across multiple frequencies has minimal impact on the final result, and also preserving as many redundant observations as possible.

[0174] It should be noted that the positioning method provided in this application can be executed by a positioning device or a control module within that positioning device for executing the positioning method. This application uses the positioning device executing the positioning method as an example to illustrate the positioning device provided in this application.

[0175] In a fourth aspect of this application, a positioning device is provided, which may include:

[0176] The first acquisition module is used to acquire pseudorange values ​​of multiple frequency points of satellites, wherein there are multiple satellites;

[0177] The first reduction module is used to take the pseudorange of the first frequency point among the multiple frequency pseudorange values ​​as the reference for each of the multiple satellites, and reduce the pseudorange values ​​of the other frequency points among the multiple frequency pseudorange values ​​except the first frequency pseudorange value to the reference, so as to obtain multiple target pseudorange values ​​that are reduced in a consistent manner.

[0178] The first sorting module is used to sort the multiple target pseudorange values ​​by size for each of the multiple satellites.

[0179] The first difference calculation module is used to calculate the difference between every two adjacent target pseudorange values ​​after sorting for each of the multiple satellites.

[0180] The first classification module is used to classify multiple target pseudorange values ​​into multiple categories for each of the multiple satellites based on the obtained differences, so as to obtain the multiple pseudorange values ​​of each satellite.

[0181] The first positioning solution module is used to eliminate any pseudorange value of any satellite from the multiple pseudorange values ​​of all satellites and perform least squares positioning solution for each satellite to obtain multiple first positioning results.

[0182] The first final positioning module is used to determine the final target pseudorange value elimination set based on the aggregation state of multiple first positioning results and to calculate the final positioning result.

[0183] In a fifth aspect of the embodiments of this application, a positioning device is provided, which may include:

[0184] The second acquisition module is used to acquire pseudorange values ​​of multiple frequency points of the satellite, wherein the number of satellites is multiple;

[0185] The second reduction module is used to take the first frequency pseudorange value among the multiple frequency pseudorange values ​​as the reference for each of the multiple satellites, and reduce the other frequency pseudorange values ​​among the multiple frequency pseudorange values ​​except the first frequency pseudorange value to the reference, so as to obtain multiple target pseudorange values ​​that are reduced in a consistent manner.

[0186] The second sorting module is used to sort the multiple target pseudorange values ​​by size for each of the multiple satellites.

[0187] The second difference calculation module is used to calculate the difference between every two adjacent target pseudorange values ​​after sorting for each of the multiple satellites.

[0188] The second classification module is used to classify multiple target pseudorange values ​​into multiple categories for each of the multiple satellites based on the obtained differences, thus obtaining multiple pseudorange values ​​for each satellite.

[0189] The second positioning solution module is used to eliminate any pseudorange value of any satellite from the multiple pseudorange values ​​of all satellites and perform least squares positioning solution respectively to obtain multiple first positioning results and a first target pseudorange elimination set.

[0190] The latitude and longitude conversion module is used to convert multiple first positioning results into multiple corresponding first latitude and longitude coordinates to obtain multiple corresponding latitude and longitude values;

[0191] The sum calculation module is used to calculate the sum of the horizontal distances between each of the multiple latitude and longitude values ​​and the other latitude and longitude values, and to obtain multiple second sums;

[0192] The third difference calculation module is used to arrange multiple second sums in ascending order and calculate the difference between the two largest second sums to obtain the target difference.

[0193] The third positioning solution module is used to remove the pseudorange value corresponding to the target difference when the target difference is greater than the first preset threshold, and then remove any type of pseudorange value of any satellite in sequence and perform least squares positioning solution respectively to obtain multiple second positioning results and a second target pseudorange removal set.

[0194] The single-point localization module is used to calculate the single-point localization result based on the first target pseudorange elimination set and the second target pseudorange elimination set;

[0195] The carrier differential positioning solution module is used to perform carrier differential positioning solution on the point positioning results to obtain the final positioning result.

[0196] In a sixth aspect of the embodiments of this application, a positioning device is provided, which may include:

[0197] The third acquisition module is used to acquire pseudorange values ​​of multiple frequency points of the satellite, where there are multiple satellites.

[0198] The third classification module is used to classify pseudorange values ​​at multiple frequency points from multiple satellites into multiple categories of pseudorange values.

[0199] The fourth positioning solution module is used to eliminate any pseudorange value of any satellite from the multiple pseudorange values ​​of all satellites and perform least squares positioning solution for each satellite to obtain multiple first positioning results.

[0200] The second final positioning module is used to determine the final target pseudorange value elimination set based on the aggregation state of multiple first positioning results and to calculate the final positioning result.

[0201] The positioning device in this application embodiment can be a device, or a component, integrated circuit, or chip in a terminal. The device can be a mobile electronic device or a non-mobile electronic device. For example, mobile electronic devices can be mobile phones, tablets, laptops, PDAs, in-vehicle electronic devices, wearable devices, ultra-mobile personal computers (UMPCs), netbooks, or personal digital assistants (PDAs), etc., while non-mobile electronic devices can be servers, network attached storage (NAS), personal computers (PCs), televisions (TVs), ATMs, or self-service machines, etc. This application embodiment does not impose specific limitations.

[0202] The positioning device in this application embodiment can be a device with an operating system. This operating system can be Android, iOS, or other possible operating systems; this application embodiment does not specifically limit the specific operating system used.

[0203] The positioning device provided in this application embodiment can achieve... Figures 1-4 The various processes implemented in the method implementation examples will not be described again here to avoid repetition.

[0204] Optionally, such as Figure 5 As shown, this application embodiment also provides an electronic device 500, including a processor 501, a memory 502, and a program or instructions stored in the memory 502 and executable on the processor 501. When the program or instructions are executed by the processor 501, they implement the various processes of the above-described positioning method embodiment and achieve the same technical effect. To avoid repetition, they will not be described again here.

[0205] It should be noted that the electronic devices in the embodiments of this application include the mobile electronic devices and non-mobile electronic devices described above.

[0206] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element. Furthermore, it should be noted that the scope of the methods and apparatuses in the embodiments of this application is not limited to performing functions in the order shown or discussed, but may also include performing functions substantially simultaneously or in the reverse order, depending on the functions involved. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.

[0207] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a computer software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0208] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.

Claims

1. A positioning method, characterized in that, include: Obtain pseudorange values ​​at multiple frequency points of a satellite, wherein the number of satellites is multiple; For each of the multiple satellites, the first frequency pseudorange value among the multiple frequency pseudorange values ​​is used as a reference, and the other frequency pseudorange values ​​among the multiple frequency pseudorange values ​​except the first frequency pseudorange value are reduced to the reference to obtain multiple target pseudorange values ​​that are uniformly reduced. For each of the multiple satellites, the multiple target pseudorange values ​​are sorted by size; For each of the multiple satellites, calculate the difference between every two adjacent target pseudorange values ​​after sorting; For each of the plurality of satellites, the plurality of target pseudorange values ​​are divided into multiple categories according to the obtained differences, so as to obtain multiple categories of pseudorange values ​​for each satellite. For all satellite pseudorange values ​​of various types, remove any pseudorange value of any satellite and perform least squares positioning calculations to obtain multiple first positioning results; The final target pseudorange value elimination set is determined based on the aggregation state of the multiple first positioning results, and the final positioning result is calculated.

2. The method according to claim 1, characterized in that, The step of determining the final target pseudorange value elimination set based on the aggregation state of the multiple first positioning results and calculating the final positioning result includes: The multiple first positioning results are converted into multiple corresponding first latitude, longitude and altitude coordinates to obtain multiple corresponding elevation values; Calculate the sum of the differences between each of the plurality of elevation values ​​and all other elevation values ​​to obtain a plurality of first sum values; The multiple first sum values ​​are sorted by size and clustered to obtain a preset number of clusters; Compare the first sum value of each of the clusters with the highest outlier degree among the preset number of clusters with a first preset threshold. When any first sum value in the cluster with the highest outlier degree is greater than a first preset threshold, the target pseudorange value corresponding to the first sum value that is greater than the first preset threshold is included in the first target pseudorange value elimination set. The first target pseudorange value removal set is removed from the total set of multiple target pseudorange values ​​of multiple satellites, and the second positioning result is obtained by solving the problem; The final positioning result is obtained based on the second positioning result.

3. The method according to claim 2, characterized in that, The clustering calculation is a k-means clustering calculation. The process of sorting the multiple first sum values ​​by size and performing clustering calculations to obtain a preset number of clusters specifically includes: Sort the plurality of first sum values ​​by size; Determine the value of k, and select k values ​​from the plurality of first sum values ​​as initial cluster centers; Calculate the distance between each of the plurality of first sums and its corresponding initial cluster center; The first sum value corresponding to the minimum distance is reclassified until all k centers no longer change or no object is reassigned to different clusters, resulting in a preset number of clusters.

4. The method according to claim 2, characterized in that, After removing the first target pseudorange value removal set from the total set of multiple target pseudorange values ​​of the multiple satellites and calculating the second positioning result, the method further includes: The second positioning result is converted into a second latitude and longitude coordinate system to obtain multiple latitude and longitude values; Calculate the sum of the horizontal distances of each of the plurality of latitude and longitude values ​​to the other latitude and longitude values ​​to obtain a plurality of second sum values; Arrange the multiple second sums in ascending order, and calculate the difference between the two largest second sums to obtain the target difference; When the target difference is greater than the first preset threshold, the target pseudorange value corresponding to the largest second sum value is included in the second target pseudorange value elimination set. The first target pseudorange value removal set and the second target pseudorange value removal set are removed from the total set of multiple target pseudorange values ​​of the multiple satellites, and the final positioning result is obtained by solving the problem.

5. A positioning method, characterized in that, include: Obtain pseudorange values ​​at multiple frequency points of a satellite, wherein the number of satellites is multiple; For each of the multiple satellites, the first frequency pseudorange value among the multiple frequency pseudorange values ​​is used as a reference, and the other frequency pseudorange values ​​among the multiple frequency pseudorange values ​​except the first frequency pseudorange value are reduced to the reference to obtain multiple target pseudorange values ​​that are uniformly reduced. For each of the multiple satellites, the multiple target pseudorange values ​​are sorted by size; For each of the multiple satellites, calculate the difference between every two adjacent target pseudorange values ​​after sorting; For each of the plurality of satellites, the plurality of target pseudorange values ​​are divided into multiple categories according to the obtained differences, so as to obtain multiple categories of pseudorange values ​​for each satellite. For all satellites, remove any pseudorange value of any satellite and perform least squares positioning calculations to obtain multiple first positioning results and a first target pseudorange removal set. The multiple first positioning results are converted into multiple corresponding first latitude and longitude coordinates to obtain multiple corresponding latitude and longitude values; Calculate the sum of the horizontal distances of each of the plurality of latitude and longitude values ​​to the other latitude and longitude values ​​to obtain a plurality of second sum values; Arrange the multiple second sums in ascending order, and calculate the difference between the two largest second sums to obtain the target difference; When the target difference is greater than the first preset threshold, the pseudorange value corresponding to the target difference is removed, and then any type of pseudorange value of any satellite is removed in turn, and the least squares positioning solution is performed respectively to obtain multiple second positioning results and a second target pseudorange removal set; The single-point positioning result is obtained by solving the first target pseudorange elimination set and the second target pseudorange elimination set; The point positioning results are then processed using carrier differential positioning to obtain the final positioning result.

6. A positioning method, characterized in that, include: Obtain pseudorange values ​​at multiple frequency points of a satellite, where there are multiple satellites; The pseudorange values ​​of multiple frequency points among the multiple satellites are classified into multiple categories of pseudorange values; The pseudorange values ​​of multiple frequency points among the multiple satellites are divided into multiple categories, including: The multiple frequency pseudorange values ​​are sorted by size, and the difference between each two adjacent frequency pseudorange values ​​is calculated. Based on the obtained differences, the multiple frequency pseudorange values ​​are divided into multiple categories to obtain multiple categories of pseudorange values. For all satellite pseudorange values ​​of various types, remove any pseudorange value of any satellite and perform least squares positioning calculations to obtain multiple first positioning results; The final target pseudorange value elimination set is determined based on the aggregation state of multiple first positioning results, and the final positioning result is calculated.

7. The method according to claim 6, characterized in that, The pseudorange values ​​of multiple frequency points among the multiple satellites are classified into multiple categories, including at least one of the following: The pseudorange values ​​at multiple frequency points are classified according to the satellites corresponding to each pseudorange value, resulting in multiple categories of pseudorange values; or The multiple frequency pseudorange values ​​are divided into categories according to each frequency pseudorange value, resulting in multiple categories of pseudorange values.

8. A positioning device, characterized in that, include: The first acquisition module is used to acquire multiple frequency pseudorange values ​​of satellites, wherein the number of satellites is multiple; The first reduction module is used to, for each of the multiple satellites, take the first frequency pseudorange value among the multiple frequency pseudorange values ​​as a reference, and reduce the other frequency pseudorange values ​​among the multiple frequency pseudorange values ​​except the first frequency pseudorange value to the reference, so as to obtain multiple target pseudorange values ​​with consistent reduction. The first sorting module is used to sort the multiple target pseudorange values ​​by size for each of the multiple satellites. The first difference calculation module is used to calculate the difference between every two adjacent target pseudorange values ​​after sorting for each of the multiple satellites. The first classification module is used to classify the multiple target pseudorange values ​​into multiple categories for each of the multiple satellites according to the obtained differences, so as to obtain multiple pseudorange values ​​for each satellite. The first positioning solution module is used to eliminate any pseudorange value of any satellite from the multiple pseudorange values ​​of all satellites and perform least squares positioning solution for each satellite to obtain multiple first positioning results. The first final positioning module is used to determine the final target pseudorange value elimination set based on the aggregation state of the multiple first positioning results and to calculate the final positioning result.

9. A positioning device, characterized in that, include: The second acquisition module is used to acquire multiple frequency pseudorange values ​​of satellites, wherein the number of satellites is multiple; The second reduction module is used to, for each of the multiple satellites, take the first frequency pseudorange value among the multiple frequency pseudorange values ​​as a reference, and reduce the other frequency pseudorange values ​​among the multiple frequency pseudorange values ​​except the first frequency pseudorange value to the reference, so as to obtain multiple target pseudorange values ​​with consistent reduction. The second sorting module is used to sort the multiple target pseudorange values ​​by size for each of the multiple satellites. The second difference calculation module is used to calculate the difference between every two adjacent target pseudorange values ​​after sorting for each of the multiple satellites. The second classification module is used to classify the multiple target pseudorange values ​​into multiple categories for each of the multiple satellites according to the obtained differences, so as to obtain multiple pseudorange values ​​for each satellite. The second positioning solution module is used to eliminate any pseudorange value of any satellite from the multiple pseudorange values ​​of all satellites and perform least squares positioning solution respectively to obtain multiple first positioning results and a first target pseudorange elimination set. The latitude and longitude conversion module is used to convert multiple first positioning results into multiple corresponding first latitude and longitude coordinates to obtain multiple corresponding latitude and longitude values; The sum calculation module is used to calculate the sum of the horizontal distances between each of the multiple latitude and longitude values ​​and other latitude and longitude values, thereby obtaining multiple second sum values; The third difference calculation module is used to arrange the multiple second sums in ascending order and calculate the difference between the two largest second sums to obtain the target difference. The third positioning solution module is used to remove the pseudorange value corresponding to the target difference when the target difference is greater than the first preset threshold, and then remove any type of pseudorange value of any satellite in sequence and perform least squares positioning solution respectively to obtain multiple second positioning results and a second target pseudorange removal set. The single-point localization module is used to calculate the single-point localization result based on the first target pseudorange elimination set and the second target pseudorange elimination set; The carrier differential positioning solution module is used to perform carrier differential positioning solution on the point positioning results to obtain the final positioning result.

10. A positioning device, characterized in that, include: The third acquisition module is used to acquire pseudorange values ​​of multiple frequency points of the satellite, where there are multiple satellites. The third classification module is used to classify the pseudorange values ​​of multiple frequency points among the multiple satellites into multiple categories of pseudorange values; The third classification module is specifically used for: The multiple frequency pseudorange values ​​are sorted by size, and the difference between each two adjacent frequency pseudorange values ​​is calculated. Based on the obtained differences, the multiple frequency pseudorange values ​​are divided into multiple categories to obtain multiple categories of pseudorange values. The fourth positioning solution module is used to eliminate any pseudorange value of any satellite from the multiple pseudorange values ​​of all satellites and perform least squares positioning solution for each satellite to obtain multiple first positioning results. The second final positioning module is used to determine the final target pseudorange value elimination set based on the aggregation state of multiple first positioning results and to calculate the final positioning result.

11. An electronic device, characterized in that, include: It includes a processor, a memory, and a program or instructions stored in the memory and executable on the processor, wherein the program or instructions, when executed by the processor, implement the steps of the positioning method as described in any one of claims 1-7.

12. A readable storage medium, characterized in that, The readable storage medium stores a program or instructions that, when executed by a processor, implement the steps of the positioning method as described in any one of claims 1-7.