A multi-constellation multi-fault detection and elimination method, device and electronic equipment

By combining visual semantic segmentation and satellite geometric constraints with robust median estimation and K-means clustering, the problem of multi-fault detection and elimination in GNSS positioning systems in complex urban environments is solved, thereby improving the robustness and generalization ability of positioning.

CN122362427BActive Publication Date: 2026-08-25AEROSPACE INFORMATION RES INST CAS
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202610824404.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-06-09
Publication Date
2026-08-25
Estimated Expiration
2046-06-09

AI Technical Summary

Technical Problem

In complex urban environments, existing GNSS positioning systems struggle to detect and eliminate multiple faults in real time, especially under conditions of multipath effects, non-line-of-sight propagation, and signal obstruction. Traditional methods are prone to misjudgment or missed detection, affecting positioning accuracy and reliability.

Method used

Sky region information is obtained through visual semantic segmentation, residual matrix is ​​constructed by combining satellite geometric constraints, and faulty satellites are identified by median robust estimation and K-means clustering. By integrating visual environmental perception information with satellite geometric consistency constraints, multiple fault detection and elimination can be achieved.

Benefits of technology

It achieves stable and reliable multi-fault detection in complex urban environments, improves the robustness and generalization ability of GNSS positioning, reduces the dependence on precise initial position values, adapts to different urban environments and obstruction conditions, and has good scene generalization ability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122362427B_ABST
    Figure CN122362427B_ABST
Patent Text Reader

Abstract

The application discloses a multi-constellation multi-fault detection and elimination method and device and electronic equipment, and belongs to the technical field of satellite navigation and positioning. The method comprises the following steps: acquiring GNSS observation data and a fisheye image, performing semantic segmentation on the image to identify a sky area, and judging satellite visibility; constructing an Euclidean distance matrix, a geometric angle matrix and an inter-satellite pseudo-range difference matrix for each constellation; based on a triangular geometric relationship and a cosine theorem, a geometric distance from a reference star to a terminal is obtained by using median robust estimation, and a residual error matrix is constructed; a fault voting matrix is generated through K-means clustering, a fault satellite set is output, and positioning calculation is performed by using non-fault satellites. The application fuses visual semantic information and inter-satellite geometric constraints, does not need iterative search and a large amount of training data, realizes one-time multi-fault real-time detection and elimination in a complex urban environment, and has good generalization ability and robustness.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of satellite navigation and positioning technology, specifically relating to a method, device, and electronic equipment for detecting and troubleshooting multiple constellations and multiple faults. Background Technology

[0002] Global Navigation Satellite Systems (GNSS) have become fundamental infrastructure in transportation, surveying and mapping, and smart terminal navigation. With the establishment and widespread adoption of multi-constellation systems such as GPS, BeiDou, Galileo, and GLONASS, user terminals can simultaneously receive navigation signals from multiple satellite systems, significantly increasing the number of available satellites and improving observation redundancy and the availability of positioning services. Simultaneously, multi-constellation, multi-band GNSS chips are widely used in consumer devices such as smartphones, enabling ordinary users to obtain real-time positioning services via their mobile terminals, supporting location-based services such as ride-hailing navigation, shared mobility, and food delivery. As application scenarios continue to expand, users' requirements for positioning accuracy, continuity, and reliability are increasing.

[0003] In practical applications, especially in urban canyons, densely populated areas with tall buildings, or complex terrain, GNSS signals are susceptible to multipath effects, non-line-of-sight propagation, and severe signal obstruction. Furthermore, satellite anomalies or system errors can further interfere with observation results, leading to significant abnormal errors in pseudorange observations, and even complex situations where multiple satellite signals are simultaneously abnormal. If these faulty observations are not detected and eliminated in a timely and effective manner, positioning results will inevitably be inaccurate, affecting user experience. For scenarios such as autonomous driving, where positioning accuracy and safety are extremely critical, this could even pose serious safety risks.

[0004] In existing technologies, receiver autonomous integrity monitoring (RAIM) and its extended methods are widely used for fault detection and troubleshooting. For example, Chinese invention patent (publication number CN102135621B) discloses a fault identification method for a multi-constellation integrated navigation system, which achieves fault identification based on pseudorange residual statistics and characteristic line deviation method; Chinese invention patent (publication number CN104267410B) discloses a multi-fault troubleshooting method in airborne integrity monitoring, which uses the maximum likelihood criterion and fault mode enumeration strategy for multi-fault identification. However, such methods mostly rely on the consistency test of pseudorange residuals. In complex urban environments, abnormal observations caused by multipath and occlusion exhibit non-Gaussian and multi-mode distribution characteristics, and traditional residual test methods are prone to misjudgment or missed detection. In addition, some studies have attempted to introduce deep learning or sensor fusion methods, but they are highly dependent on training data for specific scenarios, and their detection performance degrades significantly when environmental conditions change, resulting in insufficient generalization ability.

[0005] Therefore, how to achieve real-time detection and elimination of multiple faults with good generalization ability and stability in complex urban environments remains an important technical problem that urgently needs to be solved in the field of GNSS positioning. Summary of the Invention

[0006] To address the aforementioned technical problems, this invention provides a method, apparatus, and electronic device for multi-constellation multi-fault detection and troubleshooting. The method first utilizes visual semantic segmentation to acquire sky region information, performing preliminary screening of satellite visibility to identify potentially obstructed non-line-of-sight satellites. Subsequently, it constructs a residual matrix based on the geometric constraints between satellites and uses relative median residual statistics to detect and identify multiple fault observations. By fusing visual environmental perception information with satellite geometric consistency constraints, this invention enables more stable and reliable multi-fault detection in complex urban environments, improving the robustness and generalization capability of GNSS positioning.

[0007] To achieve the above objectives, the technical solution adopted by the present invention is as follows:

[0008] A method for detecting and troubleshooting multiple constellations and multiple faults, the method comprising:

[0009] Step S100: Obtain raw observation data from the global satellite navigation system and environmental image data acquired by the fisheye camera;

[0010] Step S200: Semantic segmentation is performed on the environmental image data to identify the sky region, and satellite visibility is determined by combining the satellite's projection position in the environmental image to obtain a set of visible satellites;

[0011] Step S300: Construct satellite Euclidean distance matrix, geometric angle matrix and inter-satellite pseudorange difference matrix independently for each constellation. Select a reference satellite from the set of visible satellites. Based on the triangular geometric relationship between the reference satellite and other satellites and terminal equipment, establish a cosine theorem equation using inter-satellite difference pseudorange observations. Use median robust estimation to obtain the geometric distance from the reference satellite to the terminal.

[0012] Step S400: Substitute the geometric distance into the cosine theorem to inversely calculate the geometrically predicted inter-satellite single difference, and compare it with the measured inter-satellite single difference to construct a residual matrix. Perform K-means clustering on the residual matrix by row to generate a fault voting matrix and calculate the fault score of each satellite, and output the set of faulty satellites. Use fault-free satellites to perform positioning calculation.

[0013] Furthermore, step S100 includes: triggering the fisheye camera with a pulse signal output by the global satellite navigation system receiver to achieve time synchronization between navigation observation data and visual data; acquiring pseudorange observation values ​​and correcting the original pseudorange observation values ​​with enhanced service information.

[0014] Furthermore, step S200 includes: converting the satellite's spatial coordinates to a local northeast-sky coordinate system, and calculating the satellite's azimuth and elevation angles; converting the satellite's azimuth and elevation angles into pixel coordinates in the environmental image captured by the fisheye camera according to the fisheye camera's equidistant projection model; and determining that the satellite is a visible satellite if the pixel coordinates of the satellite projected onto the environmental image are located in the sky region according to the sky region segmentation mask.

[0015] Furthermore, in step S300, constructing the satellite Euclidean distance matrix, geometric angle matrix, and inter-satellite pseudorange difference matrix includes: for each satellite in the same constellation, calculating the spatial Euclidean distance between any two satellites, constructing a symmetric matrix indexed by the satellites, and forming the satellite Euclidean distance matrix; based on the geometric relationship between the satellites and the terminal equipment, calculating the angle between any two satellites with the terminal equipment as the vertex, and constructing a geometric angle matrix; correcting the pseudorange observations of each satellite, and then, using the reference satellite as a reference, calculating the inter-satellite pseudorange difference values ​​between the reference satellite and other satellites, and constructing an antisymmetric inter-satellite pseudorange difference matrix.

[0016] Furthermore, in step S300, the geometric distance from the reference satellite to the terminal is obtained by using robust median estimation, including: establishing a cosine law equation based on the triangular geometric relationship between the reference satellite, other satellites, and terminal equipment, combined with inter-satellite differential pseudorange observations and Euclidean distances between satellites; solving for multiple sets of candidate geometric distances from the reference satellite to the terminal; and using the median as a robust statistic to fuse the multiple sets of candidate geometric distances to obtain an estimated value of the geometric distance from the reference satellite to the terminal.

[0017] Furthermore, the construction of the residual matrix in step S400 includes: substituting the geometric distance from the reference satellite to the terminal into the law of cosines to inversely calculate the geometric prediction inter-satellite single difference for each satellite pair; calculating the amplitude deviation between the geometric prediction inter-satellite single difference and the measured inter-satellite single difference, obtaining two deviation values ​​respectively, and taking the deviation value with the smaller absolute value as the geometric consistency residual of the satellite pair; and forming the residual matrix according to the row and column correspondence between the reference satellite and the detected satellite.

[0018] Furthermore, in step S400, generating a fault voting matrix and calculating the fault score for each satellite includes: performing binary classification on each row of the residual matrix using the K-means clustering algorithm to obtain two clusters; comparing the centroid sizes of the two clusters and marking the cluster with the larger centroid as a fault cluster to generate a fault voting matrix; counting the number of fault votes for each inspected satellite in the corresponding column of the fault voting matrix to obtain a fault score; comparing the fault score with a preset threshold, and if it is greater than or equal to the threshold, determining that the satellite is a faulty satellite and outputting a set of faulty satellites.

[0019] On the other hand, the present invention provides a multi-constellation multi-fault detection and troubleshooting device, comprising:

[0020] The data acquisition module is used to acquire raw observation data from the Global Navigation Satellite System and environmental image data collected by the fisheye camera;

[0021] The visual processing module is used to perform semantic segmentation on the environmental image data, identify the sky region, and determine the satellite visibility by combining the satellite's projection position in the environmental image to obtain a set of visible satellites.

[0022] The geometry processing module is used to independently construct the Euclidean distance matrix, geometric angle matrix, and inter-satellite pseudorange difference matrix for each constellation. It selects a reference star from the set of visible satellites, and based on the triangular geometric relationship between the reference star and other satellites and terminal equipment, it establishes a cosine theorem equation using the inter-satellite difference pseudorange observations and uses median robust estimation to obtain the geometric distance from the reference star to the terminal.

[0023] The fault identification module is used to substitute the geometric distance into the cosine theorem to inversely calculate the geometrically predicted inter-satellite single difference, compare it with the measured inter-satellite single difference, construct a residual matrix, perform K-means clustering on the residual matrix by row, generate a fault voting matrix, calculate the fault score of each satellite, and output the set of faulty satellites.

[0024] The positioning solution module is used to perform positioning solutions using fault-free satellites.

[0025] Thirdly, the present invention provides an electronic device, comprising: one or more processors; a memory for storing one or more programs; wherein, when the one or more programs are executed by the one or more processors, the one or more processors implement the aforementioned multi-constellation multi-fault detection and troubleshooting method.

[0026] Fourthly, the present invention provides a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, enable the processor to implement the aforementioned multi-constellation multi-fault detection and troubleshooting method.

[0027] The beneficial effects of this invention are as follows:

[0028] One-time multi-fault detection without iterative search: Based on inter-satellite geometric constraints, this invention uses a single satellite as a reference and forms a triangular geometry with other satellites and the user terminal. It applies the cosine theorem in reverse to construct a "geometric prediction inter-satellite single difference matrix", compares it element-by-element with the measured inter-satellite single difference to form residuals, and completes multi-fault identification in one go through unsupervised clustering, avoiding the high computational overhead of iterative elimination or combination search required in the traditional ARAIM method.

[0029] This invention, which does not rely on precise initial location values, can handle multiple fault scenarios: Under the premise of giving coarse initial values, it suppresses the influence of clock error and outliers through geometric constraints and robust median estimation, and then combines K-means unsupervised clustering to achieve real-time detection and elimination of multiple faults, reducing the dependence on precise initial location values ​​and adapting to multiple fault satellite situations in complex scenarios.

[0030] Strong generalization ability and no need for a large amount of training data: This invention integrates visual semantic segmentation information to assist in satellite visibility judgment. It does not rely on prior occlusion models or large-scale labeled data in specific scenarios. It can stably detect faults in different urban environments, different constellation combinations and different occlusion conditions, and has good scene generalization ability.

[0031] Highly interpretable and easy to deploy in engineering: This invention outputs a binary matrix sequence and a satellite-by-satellite fault score. The threshold can be adaptively adjusted according to the number of visible satellites, and the overall complexity is O(m). 2 It features lightweight clustering, requires no training and has few parameters, making it easy to interface with fault detection and troubleshooting links, and is suitable for computing-limited terminals such as smartphones. Attached Figure Description

[0032] Figure 1 This is a flowchart of a multi-constellation, multi-fault detection and troubleshooting method according to the present invention;

[0033] Figure 2 This is a schematic diagram illustrating the construction of the Euclidean distance matrix and the inter-satellite pseudorange difference matrix of the present invention;

[0034] Figure 3 This is a schematic diagram of the geometric angle formed by the satellite and the terminal equipment of this invention. Detailed Implementation

[0035] The present invention will be further described below with reference to the accompanying drawings and embodiments.

[0036] This invention provides a method for detecting and eliminating multiple faults in multiple constellations, used to quickly detect and isolate multiple simultaneously existing faulty satellites in GNSS multi-constellation positioning, improving positioning integrity and availability. Specifically, such as... Figure 1 The diagram shown is a flowchart of a multi-constellation, multi-fault detection and troubleshooting method according to the present invention, which specifically includes the following steps:

[0037] In step S100, the terminal device activates the high-precision positioning module and simultaneously acquires raw observation data from the global satellite navigation system, enhanced service data, and environmental image data collected by the fisheye camera.

[0038] Step S100 specifically includes:

[0039] S101, acquire GNSS observation data;

[0040] Within the observation epoch, the receiver acquires and tracks GNSS signals from multiple constellations, obtaining pseudorange observations. Specifically, within the same epoch, the receiver receives visible satellite signals from systems such as GPS, BDS, GLONASS, and Galileo, recording the raw pseudorange observations for each satellite. Simultaneously, the satellite's position in the ECEF coordinate system was calculated using its orbital parameters. The original pseudorange observations are corrected using enhanced service information to obtain the corrected pseudorange observations. .

[0041] S102, acquire fisheye camera image;

[0042] In this step, the terminal device triggers the fisheye image acquired by the fisheye camera using the PPS pulse signal output by the GNSS receiver, achieving precise time synchronization between navigation observation data and visual data. Specifically, the GNSS receiver outputs a high-precision PPS pulse once per second, and this pulse signal is connected to the fisheye camera via a hardware trigger interface. When the fisheye camera receives the PPS trigger signal, it immediately performs an image acquisition operation to obtain a panoramic sky image of the current moment. The sky image at time t obtained through the above triggering mechanism is denoted as t_t. .

[0043] S103, Satellite spatial coordinate calculation;

[0044] The weighted least squares method is used to calculate the positioning of all visible satellites, yielding the user's initial position estimate. Let the user's coordinates in ECEF be... :

[0045] (1)

[0046] The superscript T indicates transpose. , , Represents the coordinates in the corresponding direction;

[0047] satellite Position in the same coordinate system :

[0048] (2)

[0049] Then satellite The gaze vector to the user can be represented as :

[0050] (3)

[0051] Subsequently, the vector is transformed from the geocentric coordinate system to the user-centric local east-north sky coordinate system (ENU) to obtain the line-of-sight vector in the local east-north sky coordinate system. Let the transformation matrix be... ,but:

[0052] (4)

[0053] in, , , These represent the east, north, and sky directions, respectively. From this, the satellite's azimuth (Az) and elevation (Elevation) can be calculated:

[0054] (5)

[0055] in, Indicates the azimuth angle of the satellite on the horizontal plane. Indicates satellite The elevation angle relative to the ground plane.

[0056] After obtaining the satellite's azimuth and elevation angles, they need to be converted to the fisheye camera's image coordinate system. Since fisheye cameras typically use an equidistant projection model, meaning the angle between the incident ray and the optical axis is linearly related to the radial distance on the image plane, the pixel radius... It can be represented as:

[0057] (6)

[0058] in, The equivalent focal length for a fisheye camera. For satellite The angle between the line of sight and the camera's optical axis. In sky observation scenarios, this angle can usually be expressed by the altitude angle as:

[0059] (7)

[0060] Let the coordinates of the principal point of the image be... Then the satellite Pixel coordinates of the projection point in the image It can be represented as:

[0061] (8)

[0062] in, This is the heading angle.

[0063] Through the above steps, the spatial position of each satellite can be converted into pixel coordinates in the environmental image captured by the fisheye camera.

[0064] Step S200: Semantic segmentation is performed on the environmental image data to identify the sky region, and satellite visibility is determined by combining the satellite's projection position in the environmental image to obtain a set of visible satellites.

[0065] S201, semantic segmentation of sky images;

[0066] Specifically, the fisheye sky image at time t will be obtained. The image is input into a pre-trained Segment Anything Model (SAM) for semantic segmentation. A segmentation algorithm is used to extract the sky and occlusion regions, resulting in a sky segmentation mask. In the mask image, the pixels in the sky area are marked as 1, and the pixels in the areas where buildings, trees, and other obstructions are marked as 0.

[0067] S202, Satellite visibility assessment;

[0068] Based on the sky segmentation mask map The projected position of each satellite is determined. When the satellite... projection point When the satellite is located in the sky, it is considered to have line-of-sight propagation capabilities. When the satellite's projection point falls within an obstruction area, it is considered that the satellite is obstructed by buildings or other obstacles. The determination of whether a satellite's projection falls within the sky area is based on its projection position:

[0069] (9)

[0070] Indicates satellite Visibility assessment results;

[0071] This results in a visual satellite set. Its elements serve as reference stars for subsequent calculations:

[0072] (10)

[0073] Step S300: The original observation data is grouped into constellations according to the navigation system to which the satellite belongs. For each constellation, the Euclidean distance matrix, geometric angle matrix, and inter-satellite pseudorange difference matrix are constructed independently. A reference satellite is selected from the set of visible satellites. Based on the triangular geometric relationship between the reference satellite and other satellites and terminal equipment, a cosine theorem equation is established using the inter-satellite difference pseudorange observation values. The geometric distance from the reference satellite to the terminal is obtained by using median robust estimation to reduce the impact of abnormal observations on the positioning results.

[0074] S301, Satellite Constellation Grouping;

[0075] Specifically, because each constellation uses an independent time base, observation data needs to be processed independently for each constellation to avoid cross-constellation clock bias. Raw pseudorange observations and corresponding ephemeris coordinates for all satellites within the same constellation are stored separately, with different symbols used for different satellite systems. express, ,in This is the set of satellite indexes for this constellation. is the corrected original pseudorange observation vector corresponding to the constellation satellite set, where For satellite At frequency The corrected pseudorange observations; For the corresponding set of ephemeris coordinates, Indicates satellite Its three-dimensional spatial location. Superscript Used to distinguish different constellations.

[0076] S302, construct the Euclidean distance matrix;

[0077] Specifically, for m satellites within the same constellation, according to the formula:

[0078] (11)

[0079] in, Indicates satellite With satellite The square distance between them; and They represent satellites and satellite Three-dimensional coordinate vectors in the Earth-Centered Earth-Fixed (ECEF) coordinate system; This represents the Euclidean norm of a vector. Therefore, This represents the squared Euclidean distance between two satellites in three-dimensional space. Furthermore, by arranging the squared distances between any two satellites within the same constellation, a satellite distance matrix within the same constellation is constructed, as shown below:

[0080] (12)

[0081] in, Let represent the squared distance matrix between every pair of m satellites in the c-th constellation. Since the distance between any satellite and itself is zero, the elements on the main diagonal of the matrix are always zero. At the same time, since the distance satisfies symmetry, we have ,therefore It is a symmetric matrix. The resulting distance matrix is ​​shown below. Figure 2As shown, the left side illustrates the spatial relationship of five satellites within the same constellation, where nodes... to The lines connecting any two nodes represent different satellites, and the lines between them represent the spatial distance between the corresponding satellite pairs. Figure 2 The right side shows the Euclidean distance matrix constructed from the pairwise distances of these satellites. Different rows and columns correspond to different satellite numbers, and the matrix elements are shown. Indicates satellite With satellite The squared Euclidean distance between them. Since the distance matrix satisfies symmetry, it is symmetric about the main diagonal; at the same time, the elements on the main diagonal represent the distance between the satellite and itself, so they are always zero.

[0082] Step S303: Construct the inter-satellite pseudorange difference matrix;

[0083] Specifically, within the same constellation, assume there are m satellites. and satellite The pseudorange observations at the first and second frequency points are respectively denoted by the symbols... and This indicates the calculation of pseudorange observations for ionosphere-free combinations. The calculation formula is as follows:

[0084] (13)

[0085] In the formula, and The calculation method is the same for the carrier frequencies corresponding to the first and second frequency points. Only the subscripts need to be replaced when calculating the corresponding satellites.

[0086] Each row of the inter-satellite pseudorange difference distance matrix is... As a reference star, it is listed in relation to other satellites. The pseudorange difference, denoted as the inter-satellite difference pseudorange observation value, is calculated using the following formula:

[0087] (14)

[0088] The constructed inter-satellite pseudorange difference matrix is an antisymmetric matrix, and its calculation formula is shown below:

[0089] (15)

[0090] The matrix shown has its main diagonal elements always being zero.

[0091] Step S304: Construct the geometric angle matrix;

[0092] Specifically, for m satellites within the same constellation, any two satellites and the terminal equipment can form a triangular geometric structure, such as... Figure 3 As shown in the figure, O represents the location of the terminal device. , and This indicates the location of different satellites; the line connecting O to each satellite indicates the line of sight from the terminal device to the corresponding satellite. For any two satellites... and Their corresponding coordinates are denoted as follows: and .remember With terminal device O as the vertex and the line of sight as the endpoint... and The angle formed, i.e., the satellite With satellite The angle relative to the terminal device. Figure 3 Several examples are given, including , as well as .angle This indicates that the terminal device is the vertex, pointing towards the satellite. and The included angle formed by the realization of is calculated as follows:

[0093] (16)

[0094] in, , Therefore, the resulting geometric angle matrix Constructed from the following formulas:

[0095] (17)

[0096] Step S305: The reference star forms a triangle with other satellites to establish geometric relationships;

[0097] Specifically, refer to the stars. and other satellites and terminal equipment Form a triangle The following relation can be established:

[0098] (18)

[0099] In the formula, Indicates satellite and satellite The Euclidean distance is calculated using formula (11). and Representing terminal to satellite respectively and satellite The geometric distance. In actual GNSS positioning, the actual geometric distance cannot be obtained, therefore, equation (18) cannot be directly calculated.

[0100] Step S306: Use inter-satellite differential pseudorange observations to solve for the geometric distance from the reference satellite to the terminal device;

[0101] Specifically, inter-satellite differential pseudorange residuals eliminate the influence of receiver clock errors, satellite and satellite Inter-satellite difference pseudorange observations are represented by the symbol This can be represented as follows:

[0102] (19)

[0103] Transform it into The equation is shown below:

[0104] (20)

[0105] Solve the above equation:

[0106] (twenty one)

[0107] Generally speaking, due to geometric meaning Indicates user to satellite The distance, therefore The value must be positive, so a positive root is used here. This expression provides an explicit estimate of the user's distance to the satellite, based on known satellite geometry and differential pseudorange observations.

[0108] Step S307, by analyzing multiple sets of satellite pairs By performing step S306, we can obtain This allows for redundant estimation, resulting in a more accurate geometric distance from the terminal to the reference star.

[0109] Specifically, for the same constellation, the reference star All of the benchmarks satellite pairs , By solving equation (21), a set of candidate distances can be obtained. Based on this, candidate vectors are constructed. Due to some Possibly subject to error. Outliers are often present and do not follow a Gaussian distribution, making the arithmetic mean an unreliable estimator. To mitigate the impact of outlier observations on the fusion results, the median is introduced. As a robust estimator, the geometric distance from the terminal to the reference star is obtained. The median has a bounded influence function and a collapse point of up to 50%, meaning that even extreme outliers have only a limited impact on the estimate; in contrast, the mean's influence function increases linearly with the magnitude of outliers and is highly sensitive to individual outliers. Finally... As input for subsequent steps, it is used to inversely calculate the geometric distances of other satellites and generate geometric prediction cross differences.

[0110] Step S400: Substitute the geometric distance into the cosine theorem to calculate the geometrically predicted inter-satellite single difference for each satellite pair, compare it with the measured inter-satellite single difference, and construct the residual matrix. This is used to quantify the geometric inconsistencies between each satellite and the rest. K-means clustering is performed row-wise on the residual matrix to generate a fault voting matrix and calculate the fault score for each satellite, outputting a set of faulty satellites; positioning is then performed using fault-free satellites.

[0111] Step S400 specifically includes:

[0112] Step S401: Obtain the geometric distance from the reference star to the user. Then, the cosine theorem is applied in reverse to each satellite pair. Solve for the expected inter-satellite pseudorange single difference Since the analytical expression is a quadratic equation, which introduces ambiguity in the signs of the two roots, the residual is defined as "the minimum absolute deviation from the measured single difference amplitude" to avoid false out-of-range errors caused by sign selection and to improve numerical stability.

[0113] Specifically, using the calculated geometric distance , the formula Substituting into the Law of Cosines, we get:

[0114] (twenty two)

[0115] Of these, only As unknowns, two sets of analytical solutions were ultimately obtained. , .

[0116] Since a quadratic equation naturally has two roots, instead of directly determining which root is the "correct value," we compare each root with the amplitude of the measured single difference. The difference is taken, and the one with the smaller deviation is taken as the geometric observation consistency residual. The calculation formula is as follows:

[0117] (twenty three)

[0118] For a given reference star All calculate This generates multiple residuals corresponding to the reference star, forming a residual vector. After iterating over all reference stars, this vector can be used in subsequent steps to construct the complete residual matrix and perform fault determination.

[0119] Step S402, calculate the residual matrix ;

[0120] Specifically, all The residual matrix is ​​formed according to the corresponding rows and columns. See the following expression:

[0121] (twenty four)

[0122] In the formula, the matrix The row index corresponds to each satellite in the reference satellite set, and the column index corresponds to each satellite in the satellite being checked set. (Element) This indicates that the reference satellite (i.e., the a-th row) is used as a reference point, and the reference satellite is used for the a-th row. The residual values ​​constructed from the tested satellites (i.e., column b).

[0123] Step S403, Generation of the voting matrix;

[0124] Specifically, for the residual matrix The a-th row constructs the dataset ,in Column number, and the K-means algorithm is used ( Clustering is performed to solve the problem (where z is the number of clusters).

[0125] (25)

[0126] in, and These represent the two clusters obtained after clustering the samples in row a. Cluster Number of elements in the middle Indicates the centroid of the corresponding cluster. Let represent the objective function of the within-class sum of squares for the samples in row a. Sort the two clusters by centroid size, and denote . and clusters with larger centroids Defined as a fault candidate cluster. A voting matrix is ​​generated based on the above clustering results. in:

[0127] (26)

[0128] This yields the voting matrix. Its main diagonal elements are all 0.

[0129] Step S404, satellite malfunction determination;

[0130] For each satellite b under inspection, the number of column-direction fault tickets is counted to obtain the corresponding fault score. :

[0131] (27)

[0132] Set a decision threshold The final fault determination criteria are:

[0133] (28)

[0134] Output the set of faulty satellites at the current epoch. and the corresponding score .

[0135] Step S500: Using the obtained set of fault-free satellites, solve for the terminal position coordinates by weighted least squares.

[0136] In summary, this invention provides a multi-constellation, multi-fault detection and troubleshooting method. This method incorporates environmental visual information acquired by a fisheye camera to assist in determining satellite visibility and combines this with the geometric consistency between satellite observations to identify faulty satellites. Compared to traditional fault detection methods that rely solely on single GNSS observation information, this invention fully integrates visual and satellite observation information, enhancing the method's adaptability to complex occlusion environments and diverse scenarios, and exhibiting better versatility and generalization ability. Furthermore, this method does not rely on prior occlusion models specific to a particular scenario and can achieve stable fault detection in different urban environments, different constellation combinations, and under different occlusion conditions, providing a technical solution with good generalization ability for high-reliability GNSS positioning in complex environments.

[0137] On the other hand, the present invention provides a multi-constellation multi-fault detection and troubleshooting device, which includes various modules capable of implementing the various steps of the aforementioned method, specifically including:

[0138] The data acquisition module is used to acquire raw observation data from the Global Navigation Satellite System and environmental image data collected by the fisheye camera;

[0139] The visual processing module is used to perform semantic segmentation on the environmental image data, identify the sky region, and determine the satellite visibility by combining the satellite's projection position in the environmental image to obtain a set of visible satellites.

[0140] The geometry processing module is used to independently construct the Euclidean distance matrix, geometric angle matrix, and inter-satellite pseudorange difference matrix for each constellation. It selects a reference star from the set of visible satellites, and based on the triangular geometric relationship between the reference star and other satellites and terminal equipment, it establishes a cosine theorem equation using the inter-satellite difference pseudorange observations and uses median robust estimation to obtain the geometric distance from the reference star to the terminal.

[0141] The fault identification module is used to substitute the geometric distance into the cosine theorem to inversely calculate the geometrically predicted inter-satellite single difference, compare it with the measured inter-satellite single difference, construct a residual matrix, perform K-means clustering on the residual matrix by row, generate a fault voting matrix, calculate the fault score of each satellite, and output the set of faulty satellites.

[0142] The positioning solution module is used to perform positioning solutions using fault-free satellites.

[0143] The above modules can be implemented in the form of software, hardware or a combination of software and hardware, and integrated into the GNSS chip, baseband processor or application processor of the terminal, so that real-time detection and troubleshooting of multiple constellations and multiple faults can still be achieved under the conditions of limited computing power and power consumption.

[0144] Thirdly, the present invention provides an electronic device, comprising: one or more processors; and a memory for storing one or more programs; wherein, when the one or more programs are executed by the one or more processors, the one or more processors implement the aforementioned multi-constellation multi-fault detection and troubleshooting method. The electronic device may be a smartphone, tablet computer, wearable device, vehicle-mounted terminal, or other mobile terminal with GNSS receiving capability.

[0145] Fourthly, the present invention provides a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, enable the processor to implement the aforementioned multi-constellation multi-fault detection and troubleshooting method.

[0146] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above descriptions are merely specific embodiments of the present invention and are not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A method for detecting and troubleshooting multiple constellations and multiple faults, characterized in that, The method includes: Step S100: Obtain raw observation data from the global satellite navigation system and environmental image data acquired by the fisheye camera; Step S200: Semantic segmentation is performed on the environmental image data to identify the sky region, and satellite visibility is determined by combining the satellite's projection position in the environmental image to obtain a set of visible satellites; Step S300: Construct satellite Euclidean distance matrix, geometric angle matrix and inter-satellite pseudorange difference matrix independently for each constellation. Select a reference satellite from the set of visible satellites. Based on the triangular geometric relationship between the reference satellite and other satellites and terminal equipment, establish a cosine theorem equation using inter-satellite difference pseudorange observations. Use median robust estimation to obtain the geometric distance from the reference satellite to the terminal. Step S400: Substitute the geometric distance into the cosine theorem to inversely calculate the geometrically predicted inter-satellite single difference, and compare it with the measured inter-satellite single difference to construct a residual matrix. Perform K-means clustering on the residual matrix by row to generate a fault voting matrix and calculate the fault score of each satellite, and output the set of faulty satellites. Use fault-free satellites to perform positioning calculation.

2. The multi-constellation multi-fault detection and troubleshooting method according to claim 1, characterized in that, Step S100 includes: triggering the fisheye camera with a pulse signal output by the global satellite navigation system receiver to achieve time synchronization between navigation observation data and visual data; acquiring pseudorange observation values ​​and correcting the original pseudorange observation values ​​with enhanced service information.

3. The multi-constellation multi-fault detection and troubleshooting method according to claim 1, characterized in that, Step S200 includes: converting the satellite's spatial coordinates to a local northeast-sky coordinate system, and calculating the satellite's azimuth and elevation angles; converting the satellite's azimuth and elevation angles into pixel coordinates in the environmental image acquired by the fisheye camera based on the fisheye camera's equidistant projection model; and determining that the satellite is a visible satellite if the pixel coordinates of the satellite projected onto the environmental image are located in the sky region based on the sky region segmentation mask.

4. The multi-constellation multi-fault detection and troubleshooting method according to claim 1, characterized in that, In step S300, the construction of the satellite Euclidean distance matrix, geometric angle matrix, and inter-satellite pseudorange difference matrix includes: for each satellite in the same constellation, calculating the squared Euclidean distance between any two satellites, constructing a symmetric matrix indexed by the satellites, and forming the satellite Euclidean distance matrix; based on the geometric relationship between the satellites and the terminal equipment, calculating the angle between any two satellites with the terminal equipment as the vertex, and constructing a geometric angle matrix; correcting the pseudorange observations of each satellite, and then, using the reference satellite as a reference, calculating the inter-satellite pseudorange difference values ​​between the reference satellite and other satellites, and constructing an antisymmetric inter-satellite pseudorange difference matrix.

5. The multi-constellation multi-fault detection and troubleshooting method according to claim 1, characterized in that, In step S300, the geometric distance from the reference satellite to the terminal is obtained using robust median estimation, including: establishing a cosine law equation based on the triangular geometric relationship between the reference satellite, other satellites, and terminal equipment, combined with inter-satellite differential pseudorange observations and Euclidean distances between satellites; solving for multiple sets of candidate geometric distances from the reference satellite to the terminal; and using the median as a robust statistic to fuse the multiple sets of candidate geometric distances to obtain an estimated geometric distance from the reference satellite to the terminal.

6. The multi-constellation multi-fault detection and troubleshooting method according to claim 1, characterized in that, The construction of the residual matrix in step S400 includes: substituting the geometric distance from the reference satellite to the terminal into the law of cosines to inversely calculate the geometric prediction inter-satellite single difference for each satellite pair; calculating the amplitude deviation between the geometric prediction inter-satellite single difference and the measured inter-satellite single difference, obtaining two deviation values ​​respectively, and taking the deviation value with the smaller absolute value as the geometric consistency residual of the satellite pair; and forming the residual matrix according to the row and column correspondence between the reference satellite and the detected satellite.

7. The multi-constellation multi-fault detection and troubleshooting method according to claim 1, characterized in that, The step S400, which generates a fault voting matrix and calculates the fault score for each satellite, includes: performing binary classification on each row of the residual matrix using the K-means clustering algorithm to obtain two clusters; comparing the centroid sizes of the two clusters and marking the cluster with the larger centroid as a fault cluster to generate a fault voting matrix; counting the number of fault votes for each inspected satellite in the corresponding column of the fault voting matrix to obtain a fault score; comparing the fault score with a preset threshold, and if it is greater than or equal to the threshold, determining that the satellite is a faulty satellite and outputting a set of faulty satellites.

8. A multi-constellation, multi-fault detection and troubleshooting device, characterized in that, include: The data acquisition module is used to acquire raw observation data from the Global Navigation Satellite System and environmental image data collected by the fisheye camera; The visual processing module is used to perform semantic segmentation on the environmental image data, identify the sky region, and determine the satellite visibility by combining the satellite's projection position in the environmental image to obtain a set of visible satellites. The geometry processing module is used to independently construct the Euclidean distance matrix, geometric angle matrix, and inter-satellite pseudorange difference matrix for each constellation. It selects a reference star from the set of visible satellites, and based on the triangular geometric relationship between the reference star and other satellites and terminal equipment, it establishes a cosine theorem equation using the inter-satellite difference pseudorange observations and uses median robust estimation to obtain the geometric distance from the reference star to the terminal. The fault identification module is used to substitute the geometric distance into the cosine theorem to inversely calculate the geometrically predicted inter-satellite single difference, compare it with the measured inter-satellite single difference, construct a residual matrix, perform K-means clustering on the residual matrix by row, generate a fault voting matrix, calculate the fault score of each satellite, and output the set of faulty satellites. The positioning solution module is used to perform positioning solutions using fault-free satellites.

9. An electronic device, characterized in that, include: One or more processors; Memory, used to store one or more programs; When one or more programs are executed by the one or more processors, the one or more processors implement the multi-constellation multi-fault detection and troubleshooting method according to any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, It stores executable instructions that, when executed by a processor, enable the processor to implement the multi-constellation multi-fault detection and troubleshooting method as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Fault recognition method for multi-constellation integrated navigation system

    CN102135621B

  • Method and device for troubleshooting multiple faults in airborne integrity monitoring

    CN104267410B

  • Urban canyon positioning method based on GNSS / vision / Lidar fusion

    CN113376675A

  • Multi-path environment integrated navigation method based on factor graph and scene constraint

    CN114562992A