Terminal positioning method, device, equipment and medium

Through satellite observation information and target filter technology, the problem of low terminal positioning accuracy in bad weather is solved, and higher positioning accuracy and navigation reliability are achieved.

CN114384569BActive Publication Date: 2025-04-18TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210034069.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-12
Publication Date
2025-04-18
Estimated Expiration
2042-01-12

AI Technical Summary

Technical Problem

In severe weather conditions, images acquired by visual sensors cannot capture real road information, resulting in too low terminal positioning accuracy.

Method used

The terminal status information is determined through satellite observation information, and the target filter is used to update time and measure and update, and high-quality satellite observation information is selected to build a measurement variance matrix to improve the accuracy of terminal positioning.

Benefits of technology

Under severe weather conditions, the accuracy of terminal positioning is improved and the reliability of path navigation is ensured.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114384569B_ABST
    Figure CN114384569B_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides a terminal positioning method, device, equipment and medium, which relates to navigation positioning technology and can be applied to lane-level positioning of electronic maps, including: determining terminal state information through observation information, and filtering out first filtered observation information; setting the terminal state information as the initial state information of the target filter, updating the target filter in time, obtaining predicted state parameters and predicted state covariance matrix, filtering out second filtered observation information for constructing a measurement update matrix from the first filtered observation information, and measuring and updating the target filter according to the measurement variance matrix constructed by the observation error factor, the measurement update matrix, the second filtered observation information and the predicted state covariance matrix, updating the predicted state parameters to the target state parameters, and determining the terminal positioning result by the target state parameters. The present application can improve the positioning accuracy of the terminal.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of navigation and positioning technology, and in particular to a terminal positioning method, device, equipment and medium. Background Art

[0002] In the current terminal positioning scenario, the terminal can be positioned (for example, lane-level positioning) through the navigation system with the aid of visual sensors, radars and other sensors. Based on the positioning result of the terminal, path navigation can be performed for the user using the terminal.

[0003] However, when the terminal is in a severe weather environment such as heavy rain, fog or snow, the visual sensor used to assist terminal positioning is affected by the weather, and the images it obtains cannot capture real road information. In the process of terminal positioning using auxiliary tools such as the global positioning system and visual sensors, the terminal's positioning accuracy is too low. Summary of the invention

[0004] The embodiments of the present application provide a terminal positioning method, apparatus, device and medium, which can improve the positioning accuracy of the terminal.

[0005] An embodiment of the present application provides a terminal positioning method, including:

[0006] Determine terminal status information corresponding to the terminal through the satellite observation information, and obtain first screening observation information from the satellite observation information according to the terminal status information;

[0007] The terminal state information is set as the initial state parameters of the target filter, and the initial state covariance matrix of the target filter for the initial state parameters is obtained;

[0008] The initial state parameters of the target filter are updated in time to obtain the predicted state parameters, and the initial state covariance matrix of the target filter is updated in time to obtain the predicted state covariance matrix;

[0009] From the first filtered observation information, second filtered observation information for constructing a measurement update matrix of a target filter is filtered out, and a measurement variance matrix corresponding to the target filter is constructed according to a satellite observation error factor determined by the terminal state information;

[0010] The predicted state parameters of the target filter are measured and updated by measuring the update matrix, the second screening observation information, the predicted state covariance matrix and the measurement variance matrix to obtain the target state parameters, and the terminal positioning result corresponding to the terminal is determined according to the target state parameters.

[0011] The above-mentioned determining the terminal status information corresponding to the terminal through satellite observation information includes:

[0012] Obtain satellite observation information received by the terminal, set initial state information for the terminal, and construct a satellite observation equation between the terminal and the satellite through the satellite observation information, the initial state information and the satellite state information corresponding to the satellite;

[0013] Constructing a second observation variance matrix through the signal-to-noise ratio corresponding to the satellite observation information and the altitude angle corresponding to the satellite;

[0014] According to the second observation variance matrix and the satellite observation equation, the state information correction amount corresponding to the terminal is determined, and the initial state information is updated by the state information correction amount to obtain the terminal state information corresponding to the terminal.

[0015] Among them, the number of satellites is N, and N is a positive integer; the second observation variance matrix is ​​constructed by the signal-to-noise ratio corresponding to the satellite observation information and the altitude angle corresponding to the satellite, including:

[0016] Determine the satellite observation errors corresponding to the N satellites respectively according to the observation error parameter, the signal-to-noise ratio of the satellite observation information corresponding to the N satellites, and the altitude angles corresponding to the N satellites respectively;

[0017] The satellite observation errors corresponding to the N satellites are used as matrix diagonal elements to construct the second observation variance matrix.

[0018] The above-mentioned second screening observation information for constructing the measurement update matrix of the target filter from the first screening observation information includes:

[0019] Determine a model verification parameter value corresponding to the target filter through the first screening observation information, the predicted state covariance matrix, and the first observation variance matrix associated with the first screening observation information;

[0020] When the model verification parameter value is less than the model verification threshold, second screening observation information for constructing a measurement update matrix of a target filter is screened out from the first screening observation information through a normal distribution test.

[0021] The method further comprises:

[0022] When the model validation parameter value is greater than or equal to the model validation threshold, the initial state parameters and the initial state covariance matrix of the target filter are reset.

[0023] An embodiment of the present application provides a terminal positioning device, including:

[0024] A terminal status acquisition module, used to determine the terminal status information corresponding to the terminal through the satellite observation information, and acquire the first screening observation information from the satellite observation information according to the terminal status information;

[0025] A filter initialization module, used to set the terminal state information as the initial state parameters of the target filter, and obtain the initial state covariance matrix of the target filter for the initial state parameters;

[0026] A time update module is used to perform time update on the initial state parameters of the target filter to obtain the predicted state parameters, and to perform time update on the initial state covariance matrix of the target filter to obtain the predicted state covariance matrix;

[0027] An information screening module, used to screen out second screening observation information for constructing a measurement update matrix of a target filter from the first screening observation information, and to construct a measurement variance matrix corresponding to the target filter according to a satellite observation error factor determined by the terminal state information;

[0028] The measurement update module is used to measure and update the predicted state parameters of the target filter through the measurement update matrix, the second screening observation information, the predicted state covariance matrix and the measurement variance matrix, obtain the target state parameters, and determine the terminal positioning result corresponding to the terminal according to the target state parameters.

[0029] Among them, the terminal status acquisition module includes:

[0030] An observation equation construction unit is used to obtain satellite observation information received by the terminal, set initial state information for the terminal, and construct a satellite observation equation between the terminal and the satellite through the satellite observation information, the initial state information and the satellite state information corresponding to the satellite;

[0031] A first observation variance construction unit is used to construct a second observation variance matrix according to a signal-to-noise ratio corresponding to satellite observation information and an altitude angle corresponding to the satellite;

[0032] The state information updating unit is used to determine the state information correction amount corresponding to the terminal according to the second observation variance matrix and the satellite observation equation, and to update the initial state information by the state information correction amount to obtain the terminal state information corresponding to the terminal.

[0033] The satellite observation information includes pseudo-range observation data, the initial state information includes initial terminal position and initial terminal clock error, and the satellite state information includes satellite position and satellite clock error;

[0034] The observation equation building blocks include:

[0035] A first acquisition subunit is used to acquire the interval distance between the initial terminal position and the satellite position, and to acquire the clock difference between the initial terminal clock difference and the satellite clock difference;

[0036] The first equation construction unit is used to determine a first estimation value between the terminal and the satellite according to the interval distance and the clock difference, and to construct a satellite observation equation between the terminal and the satellite through the first estimation value and pseudo-range observation data.

[0037] The satellite observation information includes Doppler observation data, the initial state information includes initial terminal velocity and initial terminal clock drift, and the satellite state information includes satellite velocity and satellite clock drift;

[0038] The observation equation building blocks include:

[0039] A second acquisition subunit is used to obtain a velocity difference between an initial terminal velocity and a satellite velocity, and to obtain a unit observation value between the terminal and the satellite;

[0040] An estimation subunit, configured to obtain a clock drift difference between an initial terminal clock drift and a satellite clock drift, and determine a second estimated value between the terminal and the satellite according to a product of a velocity difference and a unit observation value, and the clock drift difference;

[0041] The second equation construction subunit is used to construct a satellite observation equation between the terminal and the satellite by multiplying the wavelength of the satellite broadcast signal and the Doppler observation data, as well as the second estimated value.

[0042] Among them, the number of satellites is N, and N is a positive integer;

[0043] The first observation variance construction unit is specifically used for:

[0044] Determine the satellite observation errors corresponding to the N satellites respectively according to the observation error parameter, the signal-to-noise ratio of the satellite observation information corresponding to the N satellites, and the altitude angles corresponding to the N satellites respectively;

[0045] The satellite observation errors corresponding to the N satellites are used as matrix diagonal elements to construct the second observation variance matrix.

[0046] The terminal state information refers to the result obtained after the initial state information has been iterated k times, where k is a positive integer;

[0047] The status information updating unit is specifically used for:

[0048] Obtain the estimated parameters of the k-1th iteration; when k is 1, the estimated parameters of the k-1th iteration include the initial terminal position and the initial terminal clock difference, and the satellite observation equation of each iteration is constructed by the estimated parameters of the iteration;

[0049] The partial derivative of the satellite observation equation of the k-1th iteration with respect to the estimated parameters of the k-1th iteration is determined as the Jacobian matrix of the k-1th iteration, and the pseudorange residual matrix of the k-1th iteration is constructed according to the satellite observation equation of the k-1th iteration;

[0050] Obtain a state information correction amount of the k-1th iteration according to the Jacobian matrix of the k-1th iteration, the pseudorange residual matrix of the k-1th iteration, and the second observation variance matrix;

[0051] When the state information correction amount of the k-1th iteration reaches convergence, the sum of the estimated parameter of the k-1th iteration and the state information correction amount of the k-1th iteration is determined as the estimated parameter of the kth iteration;

[0052] The pseudorange residual matrix of the kth iteration is constructed according to the satellite observation equation of the kth iteration, and the product of the transposed matrix corresponding to the pseudorange residual matrix of the kth iteration, the inverse matrix corresponding to the pseudorange observation variance matrix, and the pseudorange residual matrix of the kth iteration is determined as the test statistic;

[0053] If the test statistic is less than the test threshold, the estimated parameter of the kth iteration is determined as the terminal state information corresponding to the terminal.

[0054] The device further comprises:

[0055] A residual covariance construction module is used to construct a first residual covariance matrix according to the Jacobian matrix of the k-1th iteration and the second observation variance matrix if the test statistic is greater than or equal to the test threshold;

[0056] A normal distribution test module is used to perform a normal distribution test on the pseudorange residual matrix of the kth iteration through the first residual covariance matrix to obtain a test result corresponding to each element in the pseudorange residual matrix of the kth iteration;

[0057] The pseudorange data elimination module is used to determine that the i-th element fails the normal distribution test if the test result corresponding to the i-th element in the pseudorange residual matrix of the k-th iteration does not meet the test condition, and eliminate the pseudorange observation data associated with the i-th element; i is a positive integer less than or equal to the number of pseudorange observation data;

[0058] The observation equation reconstruction module is used to use the remaining pseudo-range observation data after eliminating the pseudo-range observation data associated with the i-th element as satellite observation information, use the estimated parameters of the k-th iteration as initial state information, and re-execute the steps of constructing the satellite observation equation between the terminal and the satellite through the initial state information, satellite state information and satellite observation information.

[0059] The terminal status information includes the terminal position, terminal speed, terminal clock error and terminal clock drift, and the first screening observation information includes pseudorange screening data and Doppler screening data;

[0060] The filter initialization module includes:

[0061] An initial state setting unit, used to set the terminal position, terminal speed, terminal clock difference and terminal clock drift in the terminal state information as initial state parameters of the target filter;

[0062] A second observation variance construction unit is used to construct a pseudorange observation variance matrix through a signal-to-noise ratio corresponding to the pseudorange screening data and an altitude angle of a satellite corresponding to the pseudorange screening data, and to construct a Doppler observation variance matrix through a signal-to-noise ratio corresponding to the Doppler screening data and an altitude angle of a satellite corresponding to the Doppler screening data;

[0063] A position covariance determination unit, used to construct a position covariance matrix through a pseudorange observation variance matrix, a satellite observation error factor determined by a terminal position and a terminal clock error, and a Jacobian matrix determined by pseudorange screening data, a terminal position, and a terminal clock error;

[0064] A velocity covariance determination unit is used to construct a velocity covariance matrix through a Doppler observation variance matrix, a satellite observation error factor determined by a terminal velocity and a terminal clock drift, and a Jacobian matrix determined by Doppler screening data, terminal velocity, and terminal clock drift;

[0065] The initial state covariance determination unit is used to determine the diagonal matrix composed of the position covariance matrix and the speed covariance matrix as the initial state covariance matrix corresponding to the target filter.

[0066] Among them, the time update module includes:

[0067] A state parameter updating unit, used to construct a state transfer matrix of the target filter through the time difference of adjacent epochs, and to perform time update on the initial state parameters of the target filter according to the state transfer matrix to obtain predicted state parameters;

[0068] The state covariance updating unit is used to obtain the filter system noise corresponding to the target filter based on the historical state information corresponding to the terminal, and to update the initial state covariance matrix of the target filter in time according to the state transfer matrix and the filter system noise to obtain the predicted state covariance matrix.

[0069] Among them, the state covariance updating unit includes:

[0070] a historical information acquisition subunit, for acquiring, if the initial state information includes the terminal position, terminal speed, terminal clock error and terminal clock drift, a historical terminal speed sequence, a historical terminal clock drift sequence and a historical terminal clock error sequence in the historical state information corresponding to the terminal; the historical terminal speed sequence, the historical terminal clock drift sequence and the historical terminal clock error sequence are all determined by a time sliding window of size p, where p is a positive integer;

[0071] A speed system noise determination subunit is used to obtain a first variance value corresponding to the historical terminal speed sequence, and determine the product of the first variance value and the time difference between adjacent epochs as the speed system noise corresponding to the target filter;

[0072] A clock drift system noise determination subunit is used to obtain a second variance value corresponding to the historical terminal clock drift sequence, and determine the product of the second variance value and the time difference between adjacent epochs as the clock drift system noise corresponding to the target filter;

[0073] The clock error system noise determination subunit is used to obtain the third-party difference corresponding to the historical terminal clock error sequence, determine the product of the third-party difference and the time difference between adjacent epochs as the clock error system noise corresponding to the target filter, and determine the velocity system noise, clock drift system noise and clock error system noise as the filter system noise corresponding to the target filter.

[0074] Among them, the predicted state covariance matrix is ​​the state covariance matrix of the initial state covariance matrix in the target filter at time t, and t is a positive integer;

[0075] The state covariance update unit is specifically used for:

[0076] The noise covariance matrix is ​​constructed by filtering the system noise and the index information corresponding to the time difference of adjacent epochs;

[0077] Obtain the state covariance matrix of the target filter at time t-1; when t is 1, the state covariance matrix of the target filter at time t-1 is the initial state covariance matrix;

[0078] The product of the state transfer matrix, the state covariance matrix at time t-1, and the transposed matrix corresponding to the state transfer matrix is ​​summed with the noise covariance matrix to obtain the predicted state covariance matrix.

[0079] Among them, the information screening module includes:

[0080] A verification parameter value acquisition unit, used to determine a model verification parameter value corresponding to a target filter through the first screening observation information, the predicted state covariance matrix, and the first observation variance matrix associated with the first screening observation information;

[0081] The verification unit is used to filter out second filtered observation information for constructing a measurement update matrix of a target filter from the first filtered observation information through a normal distribution test when the model verification parameter value is less than a model verification threshold.

[0082] The verification parameter value obtaining unit includes:

[0083] A first observation residual determination subunit, configured to construct a first observation residual matrix through first screening observation information, satellite state information of a satellite corresponding to the first screening observation information, and a predicted state parameter;

[0084] A gross error detection processing subunit is used to perform gross error detection processing on the first observation residual matrix according to the quartiles and the absolute median difference of the first observation residual matrix to obtain a second observation residual matrix;

[0085] A third observation variance determination subunit is used to determine the satellite observation information included in the second observation residual matrix as third screening observation information, and construct a first observation variance matrix through a signal-to-noise ratio corresponding to the third screening observation information and an altitude angle of the satellite corresponding to the third screening observation information;

[0086] The verification parameter value determination subunit is used to determine the model verification parameter value corresponding to the target filter through the second observation residual matrix, the predicted state covariance matrix, the Jacobian matrix of the second observation residual matrix for the predicted state parameter, and the first observation variance matrix.

[0087] The gross error detection and processing subunit includes:

[0088] A quantile difference acquisition subunit, used to acquire a quantile difference between an upper quartile of the first observed residual matrix and a lower quartile of the first observed residual matrix;

[0089] A minimum element value acquisition subunit is used to perform a subtraction operation on the lower quartile of the first observed residual matrix and the product of the first gross error detection threshold and the quantile difference to obtain the minimum element value corresponding to the first observed residual matrix;

[0090] The maximum element value acquisition subunit is used to sum the upper quartile of the first observed residual matrix and the product between the first gross error detection threshold and the quantile difference to obtain the maximum element value corresponding to the first observed residual matrix;

[0091] The subunit for determining the value to be verified is used to determine the ratio between the absolute value of the j-th element in the first observation residual matrix and the median of the first observation residual matrix after the subtraction operation and the absolute median difference of the first observation residual matrix as the value to be verified; j is a positive integer less than or equal to the number of the first screening observation information;

[0092] The gross error elimination subunit is used to eliminate the jth element from the first observation residual matrix to obtain the second observation residual matrix if the value to be verified is greater than the second gross error detection threshold and the jth element is in the gross error value range; the gross error value range refers to the value range outside the range corresponding to the minimum element value to the maximum element value.

[0093] Wherein, the second observation residual matrix is ​​constructed by using pseudo-range screening data in the satellite observation information;

[0094] The device also includes:

[0095] A clock error detection module, for determining the ratio between the median of the second observation residual matrix and the square root operation result corresponding to the diagonal elements in the predicted state covariance matrix as the clock error detection value when the ratio between the absolute median difference of the second observation residual matrix and the median of the second observation residual matrix is ​​less than the first clock error detection threshold, and the ratio between the standard deviation of the second observation residual matrix and the average value of the second observation residual matrix is ​​less than the first clock error detection threshold;

[0096] The clock error jump repair module is used to determine that there is a clock error jump in the target filter if the clock error detection value is greater than or equal to the second clock error detection threshold, and reset the prediction state parameters and the prediction state covariance matrix in the target filter.

[0097] The verification unit includes:

[0098] A standardized residual acquisition subunit is used to standardize the model verification parameter when the model verification parameter value is less than the model verification threshold value to obtain a standardized residual matrix;

[0099] A first residual test subunit is used to obtain a test result corresponding to each element contained in the standardized residual matrix by performing a normal distribution test on the standardized residual matrix;

[0100] The observation information screening subunit is used to determine that the lth element fails the normal distribution test if the test result corresponding to the lth element in the standardized residual matrix does not meet the test conditions, and to remove the satellite observation information corresponding to the lth element from the first screening observation information to obtain the second screening observation information; l is a positive integer less than or equal to the number of the first screening observation information.

[0101] The device further comprises:

[0102] The filter reset module is used to reset the initial state parameters and initial state covariance matrix of the target filter when the model verification parameter value is greater than or equal to the model verification threshold.

[0103] Wherein, the target state parameter is the state parameter of the predicted state parameter in the target filter at time a, and a is a positive integer;

[0104] The measurement update module includes:

[0105] A measurement update matrix determination unit is used to construct a third observation residual matrix through the second screening observation information, the predicted state parameters and the satellite state information, and determine the Jacobian matrix of the third observation residual matrix for the predicted state parameters as the measurement update matrix corresponding to the target filter;

[0106] A filter state acquisition unit, used to obtain the state parameters of the target filter at time a-1, and the state covariance matrix of the target filter at time a-1; when i is 1, the state parameters at time a-1 are predicted state parameters, and the state covariance matrix at time a-1 is the predicted state covariance matrix; the state covariance matrix at time a-1 is the covariance matrix of the state parameters of the target filter at time a-1;

[0107] A filter gain determination unit, used to determine the filter gain of the target filter at time a-1 through the state covariance matrix at time a-1, the measurement update matrix and the measurement variance matrix;

[0108] The target state parameter acquisition unit is used to sum the product between the filter gain at time a-1 and the third observation residual matrix with the state parameter at time a-1 to obtain the target state parameter.

[0109] Among them, the measurement update module includes:

[0110] A filter correction amount determination unit, used to determine the product between the filter gain at time a-1 and the third observation residual matrix as the filter correction amount of the target filter at time a-1;

[0111] A residual covariance determination unit is used to obtain a target covariance matrix of the target filter for the target state parameter when the filter correction amount at time a-1 passes the test, and to construct a second residual covariance matrix corresponding to the target filter through the target covariance matrix, the measurement variance matrix and the measurement update matrix;

[0112] A second residual test unit is used to perform a normal distribution test on the third observation residual matrix through the second residual covariance matrix to obtain a test result corresponding to each element included in the third observation residual matrix;

[0113] The positioning result determination unit is used to determine the target state parameter as the terminal positioning result corresponding to the terminal if the test results corresponding to each element in the third observation residual matrix meet the test conditions.

[0114] On one hand, an embodiment of the present application provides a computer device, including a memory and a processor, wherein the memory is connected to the processor, the memory is used to store a computer program, and the processor is used to call the computer program so that the computer device executes the method provided in the above aspect of the embodiment of the present application.

[0115] On one hand, an embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored. The computer program is suitable for being loaded and executed by a processor, so that a computer device with a processor executes the method provided in the above aspect of the embodiment of the present application.

[0116] According to one aspect of the present application, a computer program product or computer program is provided, the computer program product or computer program includes computer instructions, the computer instructions are stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device performs the method provided in the above aspect.

[0117] In an embodiment of the present application, the terminal status information corresponding to the terminal can be estimated through satellite observation information, and a target filter can be established through the terminal status information. Through the two processes of target filter time update and filter measurement update, the observation information gross errors can be eliminated from the satellite observation information, and the terminal positioning result corresponding to the terminal can be determined by the satellite observation information after eliminating the observation information gross errors (second filtered observation information), which can improve the accuracy of the terminal position. BRIEF DESCRIPTION OF THE DRAWINGS

[0118] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0119] Figure 1 is a structural diagram of a terminal positioning system provided in an embodiment of the present application;

[0120] Figure 2 This is a schematic diagram of a terminal positioning scenario provided by an embodiment of the present application;

[0121] Figure 3 It is a flowchart of a terminal positioning method provided in an embodiment of the present application;

[0122] Figure 4 It is a schematic diagram of a process of estimating a terminal position and a terminal clock error in terminal status information provided by an embodiment of the present application;

[0123] Figure 5 It is a schematic diagram of a flow chart of estimating terminal speed and terminal clock drift in terminal status information provided by an embodiment of the present application;

[0124] Figure 6 It is a flowchart of a mid-end positioning method provided in an embodiment of the present application;

[0125] Figure 7 is a schematic diagram of adaptive noise estimation of a filter system provided in an embodiment of the present application;

[0126] Figure 8 It is a schematic diagram of a flow chart of measuring and updating a target filter provided in an embodiment of the present application;

[0127] Fig. 9 It is a schematic diagram of the overall structure of a terminal positioning method provided by an embodiment of the present application;

[0128] Fig.10 is a structural schematic diagram of a target filter provided in an embodiment of the present application;

[0129] Fig.11 is a structural schematic diagram of a terminal positioning device provided in an embodiment of the present application;

[0130] Fig.12 It is a structural diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0131] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0132] The embodiments of this application involve the following concepts:

[0133] Satellite positioning terminal: A satellite positioning terminal is an electronic device used to process satellite signals and measure the geometric distance between the satellite positioning terminal and the satellite (i.e., pseudo-range observation data) and the Doppler effect of satellite signals (i.e., Doppler observation data). A satellite positioning terminal can also be called a satellite positioning device; a satellite positioning device can generally include antennas, satellite signal acquisition loops, baseband signal processing and other modules. A mobile terminal integrated with a satellite positioning device can calculate the current position coordinates of the mobile terminal based on pseudo-range observation data and Doppler observation data; satellite positioning devices can be widely used in many fields.

[0134] Satellite observation information: Satellite observation information refers to the observation data output by the satellite positioning device, which can be at least one of pseudorange observation data, Doppler observation data (also known as pseudorange rate observation value), Accumulated Delta Range (ADR), etc. Pseudorange observation data is used to represent the collective distance between the satellite and the satellite positioning device, Doppler observation data is used to represent the Doppler effect caused by the relative motion between the satellite positioning device and the satellite, and the accumulated delta range is used to represent the change in the geometric distance from the satellite to the satellite positioning device.

[0135] High-precision positioning service platform: Currently, the continuously operating reference stations (CORS) established by using the multi-reference station network RTK (Real Time Kinematic) technology have become the global navigation satellite system (GNSS) in the city. The CORS system is a product of the multi-faceted and in-depth crystallization of high-tech technologies such as satellite positioning technology, computer network technology, and digital communication technology. The CORS system consists of five parts: a base station network, a data processing center, a data transmission system, a positioning and navigation data broadcasting system, and a user application system. Each base station and the data analysis center are connected to form a dedicated network through a data transmission system. The high-precision positioning service platform can be understood as the background data center of the CORS system, such as a CORS server. The high-precision positioning service platform of the CORS system can broadcast differential service data to the user terminal to achieve centimeter-level high-precision positioning. Among them, the differential service data can refer to the satellite observation information (for example, pseudo-range observation data, Doppler observation data, etc.) obtained by the CORS system after the high-precision positioning service platform processes the original observation data after obtaining the original observation data of the satellite. Centimeter-level high-precision positioning means that the terminal position calculated by the high-precision positioning service platform through the observation data of the CORS system can be accurate to centimeters.

[0136] See also Figure 1 , Figure 1 Schematic diagram of a terminal positioning system provided by an embodiment of the present application. Figure 1 As shown, the terminal positioning system continuously operates the reference station (CORS) system and the user terminal cluster, and the user terminal cluster may include one or more user terminals, and the number of user terminals is not limited here. Figure 1As shown, the user terminal cluster may specifically include user terminal 10e, user terminal 10f, user terminal 10h and user terminal 10g, etc. Among them, the high-precision positioning service platform can be understood as the background data center of the CORS system. The high-precision positioning service platform can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. The user terminals in the user terminal cluster may include but are not limited to: smart phones, tablet computers, laptops, PDAs, mobile Internet devices (mobile internet devices, MIDs), wearable devices (such as smart watches, smart bracelets, etc.), aircraft (such as airplanes, drones, etc.) and mobile terminals such as on-board computers in automatic driving systems that integrate satellite positioning devices. Among them, the high-precision positioning service platform can broadcast differential service data for each user terminal in the user terminal cluster, and the user terminals in the user terminal cluster can also report their locations to the high-precision positioning service platform.

[0137] like Figure 1 The navigation satellite shown may be a navigation satellite of the Global Navigation Satellite System (GNSS), which is also called the Global Navigation Satellite System, and is an air-based radio navigation and positioning system that can provide users with all-weather 3D coordinates, speed, and time information at any location on the Earth's surface or in near-Earth space; for the convenience of description, the navigation satellite is referred to as a satellite below. Figure 1 As shown, the satellite 10a, the satellite 10b, the satellite 10c and the satellite 10d may be navigation satellites of one or more GNSSs, and the present application does not limit the GNSS type to which the satellites belong.

[0138] Among them, the CORS system can obtain the original observation data corresponding to the navigation satellites of the Global Navigation Satellite System (GNSS). These received original observation data can be transmitted to the high-precision positioning service platform; the high-precision positioning service platform uses these original observation data to calculate the satellite observation information between each user terminal in the user terminal cluster and the navigation satellite in real time, and broadcast the satellite observation information to the corresponding user terminal. At this time, the satellite observation information can be called the differential service data broadcast by the high-precision positioning service platform for the user terminal. Figure 1 Taking the user terminal 10e in the user terminal cluster as an example, the user terminal 10e may be a mobile terminal integrated with a satellite positioning device. The user terminal 10e may obtain satellite observation information between the user terminal 10e and each satellite from the high-precision positioning service platform of the CORS system. For example, the user terminal 10e may communicate with the satellites respectively. Figure 1Satellite observation information between satellites 10a, 10b, 10c and 10d shown. After acquiring the satellite observation information, the user terminal 10e can estimate the terminal status information of the user terminal 10e through the acquired satellite observation information; wherein, if the satellite observation information is pseudo-range observation data, the terminal status information at this time may include the terminal position and the terminal clock difference; if the satellite observation information is Doppler observation data, the terminal status information at this time includes the terminal speed and the terminal clock drift; if the satellite observation information includes pseudo-range observation data and Doppler observation data, the terminal status information at this time includes the terminal speed, the terminal position, the terminal clock difference and the terminal clock drift. In other words, the satellite observation information in the embodiment of the present application may be at least one of pseudo-range observation data and Doppler observation data, and the present application does not limit the data type (e.g., pseudo-range data type, Doppler data type, etc.) and the number of data types of the satellite observation information.

[0139] It can be understood that clock error can refer to clock error. The clock error in this application specifically involves satellite clock error and terminal clock error. Satellite clock error refers to the difference between the satellite clock and the standard time. Terminal clock error can also be called receiver clock error, that is, the difference between the receiver clock and the standard time. Clock drift can refer to the rate of change of clock error. The clock error in this application specifically involves terminal clock drift and satellite clock drift. Terminal clock drift refers to the rate of change of the receiver clock error, and satellite clock error refers to the rate of change of the satellite clock error.

[0140] Among them, in the process of estimating the terminal status information based on the satellite observation information, some observation information gross errors can be eliminated, that is, the satellite observation information used to determine the terminal status information is not all the satellite observation information acquired by the user terminal 10e, but the satellite observation information remaining after eliminating some observation information gross errors. In the embodiment of the present application, the remaining satellite observation information at this time can be called the first screening observation information, that is, the terminal status information is determined by the first screening observation information. Observation information gross errors can refer to erroneous observation results or over-limit errors caused by measurement negligence, for example, observation target errors (such as satellite observation information is not observation data between the satellite and the user terminal 10e), observation data reading errors, etc. Furthermore, a target filter (e.g., a robust Kalman filter) can be established based on the terminal state information obtained by the above estimation, that is, the terminal state information is used as the initial state parameter of the target filter, and the initial state parameter can refer to the state parameter of the target filter at time T0. The state parameter at time T0 can be used to predict the state parameter at the next time, and so on. The state parameter at the current time can be predicted, and the state parameter at the current time can be called the predicted state parameter. The process of determining the predicted state parameter is the time update stage of the target filter (also called the state prediction stage). After the target filter completes the time update, that is, the state parameter of the target filter is updated from the initial state parameter (i.e., the terminal state information) to the predicted state parameter, the predicted state parameter of the target filter can be measured and updated (also called correction) through the above first screening observation information.

[0141] In the measurement update phase of the target filter, correction is performed based on the predicted state parameters finally obtained in the time update phase. The target filter is verified and repaired through the first screening observation information. First, the model verification parameter value of the target filter is calculated. When the model parameter verification value does not meet the verification condition (for example, greater than or equal to the model verification threshold, the model verification threshold can be set according to actual needs), it indicates that the target filter is faulty and needs to be reset, that is, the initial state parameters of the target filter are reset; when the model parameter verification value meets the verification condition (for example, less than the model verification threshold), the first screening observation information can be tested (for example, normal distribution test, normal distribution can also be called Gaussian distribution), and the observation information gross error in the first screening observation information is continued to be eliminated to obtain the second screening observation information. The measurement update matrix of the target filter in the measurement update phase is constructed through the second screening observation information. In addition, the measurement variance matrix of the target filter in the measurement update phase can also be constructed according to the satellite observation error factor. The predicted state parameters of the target filter are measured and updated through the measurement update matrix and the measurement variance matrix to obtain the target state parameters, which are the results obtained by the target filter in the measurement update phase. After obtaining the target state parameters, the target filter at this time can be verified again through the second filtered observation information, such as testing the second filtered observation information (for example, normal distribution test). If the test passes, the target state parameters can be determined as the terminal positioning of the user terminal 10e; if the test fails, the corresponding satellite observation information is eliminated from the second filtered observation information, that is, whichever satellite observation information in the second filtered observation information fails the test, the satellite observation information is eliminated to obtain new filtered observation information (for the convenience of description, the new filtered observation information obtained at this time is referred to as the fourth filtered observation information below), and the measurement update matrix is ​​reconstructed through the fourth filtered observation information, and the target filter is measured and updated again until all remaining satellite observation information pass the test, and the state parameters of the target filter at the current moment are output. The state parameters at this time are the terminal position of the user terminal 10e.

[0142] In an embodiment of the present application, the terminal positioning process of the user terminal is implemented through satellite observation information and a target filter. During this process, the gross errors in the satellite observation information can be eliminated as much as possible through the verification and repair process of the target filter to obtain a more accurate terminal positioning result.

[0143] See also Figure 2 , Figure 2 Schematic diagram of a terminal positioning scenario provided by an embodiment of the present application. Figure 2 The user terminal 20a shown may be Figure 1Any user terminal in the user terminal cluster shown in the figure has a satellite positioning device integrated in the user terminal 20a. The user terminal 20a can receive satellite observation information broadcasted by the CORS system. The satellite observation information can include pseudo-range observation data and Doppler observation data corresponding to each satellite. The present application does not limit the number of satellites corresponding to the satellite observation information, that is, the number of received satellite observation information is not limited. Figure 2 As shown, the embodiment of the present application takes the satellite observation information corresponding to 6 satellites as an example for explanation. The satellite observation information received by the user terminal 20a includes a pseudorange observation data set 20b and a Doppler observation data set 20c. The pseudorange observation data set 20b is composed of pseudorange observation data corresponding to the 6 satellites, such as pseudorange observation data 1, pseudorange observation data 2, ..., pseudorange observation data 6, and the Doppler observation data set 20c is composed of Doppler observation data corresponding to the 6 satellites, such as Doppler observation data 1, Doppler observation data 2, ..., Doppler observation data 6. In other words, the satellite observation information received by the user terminal 20a includes two data types. The pseudorange observation data in the pseudorange observation data set 20b can be called a pseudorange data type, and the pseudorange observation data in the Doppler observation data set 20c can be called a Doppler data type.

[0144] Satellite observation information of different data types needs to be processed independently. For example, by processing the pseudorange observation data contained in the pseudorange observation data set 20b, the terminal position corresponding to the user terminal 20a can be finally obtained, and by processing the Doppler observation data contained in the Doppler observation data set 20c, the terminal velocity corresponding to the user terminal 20a can be finally obtained. For the pseudorange observation data set 20b, the terminal position and terminal clock error of the user terminal 20a can be used as the estimated parameter x, which can be recorded as (ru, dtr1), where ru is used to represent the terminal position and dtr1 is used to represent the terminal clock error; the estimated parameter x is optimized (i.e., iteratively updated) based on the pseudorange observation data in the pseudorange observation data set 20b, and the terminal position and terminal clock error of the user terminal 20a can be calculated. First, the estimated parameter x can be initialized, that is, an initial value is set for the estimated parameter x. The initial value of the estimated parameter x can be recorded as (ru_0, dtr1_0); wherein, the initial value of the estimated parameter x can be set to 0, or can be a value set based on prior knowledge (the actual environment of the user terminal 20a). The actual value of the initial value of the estimated parameter x is not limited in this application. The initial value (ru_0, dtr1_0) of the estimated parameter x can be continuously iterated and updated through the pseudorange observation data set 20b. The estimated parameter x is updated once in each iteration. The estimated parameter x of the next iteration is based on the estimated parameter x of the previous iteration plus the estimated parameter correction amount (also called the state information correction amount). When the estimated parameter x reaches convergence, it means that the estimated parameter x has gone through an iteration cycle (an iteration cycle can include one or more iterations). The estimated parameter x determined in each iteration cycle is the parameter value when convergence is reached, such as Figure 2 As shown, the estimated parameter x determined by the first iteration cycle can be recorded as (ru_1, dtr1_1), that is, after the first iteration cycle, the terminal position is updated from the initial value ru_0 to ru_1, and the terminal clock error is updated from the initial value dtr1_0 to dtr1_1.

[0145] Furthermore, a chi-square test (Chi-square test / Chi-Square Goodness-of-Fit Test) can be performed on the result output by the first iteration cycle (the solution result associated with (ru_1, dtr1_1)). If the chi-square test statistic of the first iteration cycle is less than the test threshold (the test threshold can be set according to actual needs, and the present application does not limit the value of the test threshold), it means that the chi-square test has passed, and the above ru_1 can be determined as the terminal position of the user terminal 20a, and dtr1_1 can be determined as the terminal clock error of the user terminal 20a. Among them, the chi-square test is a widely used hypothesis testing method for counting data. The chi-square test is only an example in the embodiment of the present application. Other hypothesis testing methods with similar functions are also applicable to the present application, and the testing method is not limited here. If the chi-square test statistic of the first iteration cycle is greater than or equal to the test threshold, it means that the chi-square test has not been passed, and then the pseudo-range observation data that has not passed the normal distribution test is eliminated from the pseudo-range observation data set 20b through the normal distribution test, such as Figure 2 As shown, if the pseudorange observation data 2 fails the normal distribution test, the pseudorange observation data 2 is determined to be a pseudorange observation data gross error, and the pseudorange observation data 2 is eliminated from the pseudorange observation data set 20b, while the pseudorange observation data that passes the normal distribution test is retained, that is, pseudorange observation data 1, pseudorange observation data 3, pseudorange observation data 4, pseudorange observation data 5 and pseudorange observation data 6 are retained.

[0146] Subsequently, (ru_1, dtr1_1) can be used as the initial value of the estimated parameter x in the second iteration cycle. Through the above-retained pseudorange observation data 1, pseudorange observation data 3, pseudorange observation data 4, pseudorange observation data 5 and pseudorange observation data 6, (ru_1, dtr1_1) is continuously iterated and updated. The iteration process of the second iteration cycle is the same as that of the first iteration cycle. The estimated parameter x determined in the second iteration cycle is recorded as (ru_2, dtr1_2). Similarly, the input value of the second iteration cycle can be The result obtained (the solution result associated with (ru_2, dtr1_2)) is subjected to a chi-square test. If the chi-square test is passed, the above ru_2 is determined as the terminal position of the user terminal 20a, and dtr1_2 is determined as the terminal clock error of the user terminal 20a. At this time, the above pseudo-range observation data 1, pseudo-range observation data 3, pseudo-range observation data 4, pseudo-range observation data 5 and pseudo-range observation data 6 can be combined into a pseudo-range observation data set 20d, which is obtained after eliminating the gross error observation data in the pseudo-range observation matrix 20b. Optionally, if the second iteration cycle still fails to pass the chi-square test, the gross error of the pseudo-range observation data is eliminated through the normal distribution test, and the next iteration cycle is started until the chi-square test is passed.

[0147] Among them, for the Doppler observation data set 20c, the terminal speed and terminal clock drift of the user terminal 20a can be used as the estimated parameter y, and the estimated parameter y can be recorded as (vu, dtr2), where vu is used to represent the terminal speed and dtr2 is used to represent the terminal clock drift; the process of iteratively updating the estimated parameter y based on the Doppler observation data set 20c is similar to the aforementioned iterative update process of the estimated parameter x based on the pseudorange observation data set 20b, which will not be repeated here. The terminal speed of the user terminal 20a is calculated to be vu_2 and the terminal clock drift is dtr2_2 through the Doppler observation data set 20c. After eliminating the gross error of the Doppler observation data, the Doppler observation data set 20e (including Doppler observation data 2, Doppler observation data 4 and Doppler observation data 5) can be obtained. On the basis of the above, the terminal position ru_2, terminal speed vu_2, terminal clock difference dtr1_2, and terminal clock drift dtr2_2 can be called terminal status information corresponding to the user terminal 20a, and the pseudorange observation data set 20d and Doppler observation data set 20e can be called first screening observation information.

[0148] Optionally, the terminal position and terminal velocity in the above terminal state information (ru_2, vu_2, dtr1_2, dtr2_2) are only preliminary results determined based on iterative updates. In order to further improve the accuracy of the terminal position and terminal velocity, a target filter (e.g., a robust Kalman filter) can be established through the results obtained through the above iterative updates, and the terminal state information (ru_2, vu_2, dtr1_2, dtr2_2) is set as the initial state parameters corresponding to the target filter, that is, the initial state parameters of the target filter are (ru_2, vu_2, dtr1_2, dtr2_2). It should be noted that the initial state covariance matrix of the target filter for the initial state parameters can be determined by the solution results obtained through the above iterative updates, and the state covariance matrix of the target filter is used to characterize the correlation between the state parameters of the target filter, such as the correlation between the terminal position, terminal velocity, terminal clock difference, and terminal clock drift. After the initial state parameters and initial state covariance parameters of the target filter are set, the target filter can be updated in time. The time update here can be understood as a state prediction process, that is, based on the initial state parameters and the initial state covariance matrix, the state parameters of the target filter at the next moment and the state covariance matrix at the next moment are predicted. In other words, the time update process of the target filter includes the update of both the initial state parameters and the initial covariance matrix. The state parameters obtained by the time update are called predicted state parameters, recorded as (ru_3, vu_3, dtr1_3, dtr2_3), and the state covariance matrix obtained by the time update is called the predicted state covariance matrix.

[0149] Furthermore, after completing the time update, the target filter can perform measurement update based on the predicted state parameters and the predicted state covariance matrix. The measurement update here can be understood as the process of correcting the predicted state parameters obtained by the aforementioned time update. The measurement update of the target filter can include clock error and clock drift jump detection and repair, filter model verification and repair, filter fault detection and repair, etc. In the measurement update process of the target filter, the above-mentioned first screening observation data needs to be used. Since the first screening observation data includes a pseudorange observation data set 20d belonging to the pseudorange data type and a Doppler observation data set 20e belonging to the Doppler data type, it is necessary to process the pseudorange observation data set 20d and the Doppler observation data set 20e independently.

[0150] Among them, for the pseudorange observation data set 20d, the clock error jump detection can be performed through the pseudorange observation data in the pseudorange observation data set 20d and the predicted state covariance matrix. If the target filter is detected to have a clock error jump, the clock error jump repair is performed, that is, the state parameters and state covariance matrix of the target filter are reset, that is, the update is performed on the basis of the predicted state parameters and the predicted state covariance matrix; if the clock error jump is not detected, there is no need to perform the clock error jump repair. At the same time, for the Doppler observation data set 20e, the clock drift jump detection can be performed through the Doppler observation data in the Doppler observation data set 20e and the predicted state covariance matrix. If the target filter is detected to have a clock drift jump, the clock drift jump repair is performed, that is, the state parameters and state covariance matrix of the target filter are reset, that is, the update is performed on the basis of the predicted state parameters and the predicted state covariance matrix; if the clock drift jump is not detected, there is no need to perform the clock drift jump repair.

[0151] After the detection and repair of clock error and clock drift jump are completed, the filter model verification can be performed, such as calculating the model verification parameter value of the target filter, which may include the pseudorange verification parameter value and the Doppler verification parameter value; the pseudorange verification parameter value may be determined by the state covariance matrix obtained after the detection and repair of clock error and clock drift jump, and the pseudorange observation data set 20d, and the Doppler verification parameter value may be determined by the state covariance matrix obtained after the detection and repair of clock error and clock drift jump, and the Doppler observation data set 20e. When the pseudorange verification parameter value is greater than or equal to the pseudorange verification threshold, or the Doppler verification parameter value is greater than or equal to the Doppler verification threshold, it means that the target filter has not passed the model verification, and the target filter needs to be repaired, that is, the initial state parameters and initial state covariance matrix of the target filter are reset, and time update and measurement update are performed based on the reset initial state parameters and initial state covariance matrix. When the pseudorange verification parameter value is less than the pseudorange verification threshold, and the Doppler verification parameter value is less than the Doppler verification threshold, it means that the target filter passes the model verification. The pseudorange verification threshold and the Doppler verification threshold here can be different values ​​set based on actual needs. The pseudorange verification threshold and the Doppler verification threshold can be collectively referred to as the model verification threshold.

[0152] If the target filter passes the model verification, the observation data that causes the target filter to diverge can be eliminated from the pseudorange observation data set 20d and the Doppler observation data set 20e by normal distribution detection, that is, the pseudorange observation data set 20f is screened out from the pseudorange observation data set 20d, and the Doppler observation data set 20g is screened out from the Doppler observation data set 20e. At this time, the pseudorange observation data set 20d and the Doppler observation data set 20g can be called the second screening observation information. The target filter can be measured and updated through the pseudorange observation data set 20d and the Doppler observation data set 20g to obtain the target state parameters and the target state covariance matrix, and the target state parameters can be recorded as (ru_4, vu_4, dtr1_4, dtr2_4). When the filter correction amount of the target filter (i.e., the difference between the state parameters at the later moment and the state parameters at the previous moment) passes the verification and the second screening observation information passes the normal distribution test, the terminal position ru_4 and terminal speed vu_4 in the target state parameters can be used as the terminal positioning results of the user terminal 20a.

[0153] Optionally, assuming that the user terminal 20a is a smart phone, in the mobile terminal positioning navigation application scenario, after obtaining the terminal position and terminal speed of the user terminal 20a, an accurate navigation path can be provided for the user of the user terminal 20a in the navigation application, such as Figure 2As shown in the navigation page 20h, position S1 is the position of the user terminal 20a in the electronic map (i.e., the terminal position), and area 20i is the real-time traffic condition of the path where the user terminal 20a is located. Different colors represent different traffic conditions. For example, the black area indicates that the section is a heavily congested section, the gray area indicates that the path is a lightly congested section, and the white area is a non-congested section, etc.

[0154] Optionally, assuming that the user terminal 20a is a vehicle-mounted terminal, in a road scene lane-level navigation application, after obtaining the terminal position and terminal speed of the user terminal 20a, a lane-level driving path can be provided for the user terminal 20a, such as Figure 2 As shown in the navigation page 20j, the position 20k is the lane driving position of the user terminal 20a on the road (i.e., the terminal position), and the black line is used to represent the lane driving path of the user terminal 20a, that is, the above terminal positioning result can be accurate to the lane where the user terminal 20a is located, thereby realizing the lane-level positioning of the user terminal 20a.

[0155] See also Figure 3 , Figure 3 is a flow chart of a terminal positioning method provided in an embodiment of the present application. The terminal positioning method can be executed by a computer device, which can be an electronic device integrated with a satellite positioning device, such as Figure 1 Any user terminal in the user terminal cluster shown, or any terminal that needs to be positioned. Figure 3 As shown, the terminal positioning method may include the following steps:

[0156] Step S101: determine terminal status information corresponding to the terminal through satellite observation information, and obtain first screening observation information from the satellite observation information according to the terminal status information.

[0157] Specifically, the computer device can send an ephemeris acquisition request to the CORS system. After receiving the ephemeris acquisition request, the high-precision positioning service platform of the CORS system can obtain real-time satellite navigation ephemeris from the satellite ephemeris database, and transmit the real-time satellite navigation ephemeris to the computer device in the form of a binary stream. At this time, the computer device can receive the satellite navigation ephemeris broadcast by the high-precision positioning service platform of the CORS system; of course, the computer device can also receive satellite observation information broadcast by the high-precision positioning service platform of the CORS system. Among them, the satellite navigation ephemeris can include a list of parameters for determining the position of the satellite, and the satellite ephemeris database can include the navigation ephemeris of all satellites; the satellite observation information can include at least one of pseudorange observation data and Doppler observation data; the computer device of the present application can be a terminal that needs to be positioned.

[0158] According to the satellite observation information and the satellite navigation ephemeris, the satellite status information corresponding to each satellite is obtained. When the satellite observation information only includes pseudorange observation data, the satellite status information at this time includes satellite position and satellite clock error; when the satellite observation information only includes Doppler observation data, the satellite status information at this time includes satellite speed (i.e., satellite running speed) and satellite clock drift; when the satellite observation information includes pseudorange observation data and Doppler observation data, the satellite status information at this time includes satellite position, satellite clock error, satellite speed and satellite clock drift. The number of satellites can be N (N is a positive integer), and one satellite corresponds to one pseudorange observation data, one Doppler observation data, one satellite position, one satellite clock error, one satellite speed and one satellite clock drift at the same time. The satellite position, satellite clock error, satellite speed and satellite clock drift corresponding to each satellite may be different. For example, when the satellite observation information includes pseudorange observation data, the satellite position and satellite clock error corresponding to each satellite can be calculated based on the received pseudorange observation data and satellite navigation ephemeris, that is, the reception time of the satellite transmission signal is obtained, and the transmission time of the satellite transmission signal is determined according to the initial pseudorange observation value, the reception time and the speed of light value, and then the satellite position and satellite clock error corresponding to the satellite can be determined according to the transmission time and the parameter list contained in the satellite navigation ephemeris. Similarly, when the satellite observation information includes Doppler observation data, the satellite speed and satellite clock drift corresponding to each satellite can be calculated based on the received Doppler observation data and satellite navigation ephemeris.

[0159] After obtaining the satellite observation information and the satellite status information, a satellite observation equation between the terminal and the satellite can be constructed based on the satellite observation information and the satellite status information. The terminal status information corresponding to the terminal can be obtained through the satellite observation equation. Based on the terminal status information, the first screening observation information can be obtained from the satellite observation information corresponding to the N satellites (for example, the above Figure 2The corresponding pseudo-range observation data set 20d and Doppler observation data set 20e in the embodiment). Among them, there may be observation information gross errors in the satellite observation information received by the terminal. Therefore, in the process of calculating the terminal status information, a part of the observation information gross errors may be eliminated from the satellite observation information corresponding to the N satellites. The satellite observation information actually used to calculate the terminal status information is only part of the observation information in the satellite observation information corresponding to the N satellites. Therefore, the satellite observation information actually used when determining the terminal status information can be determined as the first screening observation information. For example, if the satellite observation information of satellite i in the satellite observation information corresponding to the N satellites is an observation information gross error, the satellite observation information of satellite i can be eliminated. When the terminal status information is estimated by the satellite observation information of the remaining satellites except satellite i, the satellite observation information of the remaining satellites except satellite i in the N satellites can be used as the first screening observation information. The number of the first screening observation information is less than or equal to the total number of all satellite observation information received by the terminal. For example, when the first screening observation information is pseudo-range observation data, the number of the first screening observation information is less than or equal to N (the number of satellites, that is, the total number of pseudo-range observation data received by the terminal).

[0160] It can be understood that the satellite observation information, satellite status information and terminal status information in the embodiments of the present application are related. For example, when the satellite observation information is pseudorange observation data, the corresponding satellite status information is the satellite position and satellite clock error, and the corresponding terminal status information is the terminal position and terminal clock error; when the satellite observation information is Doppler observation data, the corresponding satellite status information is the satellite speed and satellite clock drift, and the corresponding terminal status information is the terminal speed and terminal clock drift; when the satellite observation information includes pseudorange observation data and Doppler observation data, the corresponding satellite status information is the satellite position, satellite clock error, satellite speed and satellite clock drift, and the corresponding terminal status information is the terminal position, terminal clock error, terminal speed and terminal clock drift. No further explanation will be given later.

[0161] If the terminal receives pseudorange observation data corresponding to N satellites, the following pseudorange observation equation can be constructed based on the pseudorange observation data and the satellite position and satellite clock error in the satellite status information:

[0162]

[0163] in, The terminal receives pseudo-range observation data, r u is the terminal position, r i is the satellite position corresponding to satellite i, dt r is the terminal clock error, dt i is the satellite clock error corresponding to satellite i, c is the speed of light in vacuum, ζi is the error correction factor (including ionosphere, troposphere and earth rotation correction, which can be calculated by empirical model), ||r u -r i || can be used to indicate the terminal position r u With satellite position r i In the above formula (1), except for the terminal position r u The clock difference with the terminal is dt r The remaining parameters except are all known. Based on the pseudorange observation equation shown in formula (1), the terminal position and terminal clock error of the terminal can be estimated.

[0164] Optionally, if the terminal receives Doppler observation data corresponding to N satellites respectively, the following Doppler observation equation can be constructed based on the Doppler observation data and the satellite speed and satellite clock drift in the satellite status information:

[0165]

[0166] in, is the Doppler observation data received by the terminal, λ is the wavelength of the satellite broadcast signal, v i ,i=1,2,……,N is the satellite speed corresponding to the th satellite, is the terminal clock drift, v u is the terminal velocity, is the satellite clock drift corresponding to satellite i. Based on the Doppler observation equation shown in formula (2), the terminal velocity and terminal clock drift of the terminal can be estimated. When solving the terminal velocity and terminal clock drift corresponding to the terminal, the terminal position of the terminal and the satellite positions corresponding to each satellite need to be provided. In the embodiment of the present application, the pseudorange observation equation shown in formula (1) and the Doppler observation equation shown in formula (2) can be collectively referred to as the satellite observation equation.

[0167] Step S102: setting the terminal state information as the initial state parameters of the target filter, and obtaining the initial state covariance matrix of the target filter for the initial state parameters.

[0168] Specifically, after obtaining the terminal state information corresponding to the terminal and the first screening observation information, a target filter can be established based on the terminal state information, that is, the target filter is initialized by the terminal state information, and the terminal state information is set as the initial state parameter of the target filter. The number of state parameters of the target filter depends on the number of parameters contained in the terminal state information. For example, when the terminal state information includes the terminal position, terminal clock error, terminal speed, and terminal clock drift, the initial state parameter of the target filter can be set to in,[.] TIt is represented as the transpose of the matrix, z(0) is represented as the initial state parameters of the target filter. At the same time, the initial state covariance matrix of the target filter for the initial state parameters can also be obtained. The initial state covariance matrix can be used to characterize the correlation between the initial state parameters. The initial state covariance matrix is ​​a diagonal matrix and is also a symmetric matrix. The initial state covariance matrix can be determined by the first screening observation information and the initial state parameters.

[0169] The target filter may be a recursive filter, such as a target filter including but not limited to: a Kalman filter (EKF), an extended Kalman filter (EKF), an unscented Kalman filter, a robust Kalman filter, etc. The embodiment of the present application does not limit the type of the target filter. For the convenience of description, the present embodiment takes a robust Kalman filter as an example for description.

[0170] Step S103, time-update the initial state parameters of the target filter to obtain predicted state parameters, and time-update the initial state covariance matrix of the target filter to obtain a predicted state covariance matrix.

[0171] Specifically, after the target filter is initialized, the target filter can be updated in time, the initial state parameters of the target filter are updated to predicted state parameters, and the initial state covariance matrix is ​​updated to predicted state covariance matrix. The time update process of the target filter can be to predict the state parameters based on the initial state parameters, and the state parameters of the target filter after the time update can be called predicted state parameters, and the state covariance matrix of the target filter for the predicted state parameters can be called predicted state covariance matrix.

[0172] Among them, during the time update process of the target filter, the initial state parameters of the target filter can be updated multiple times, and the initial state parameters of the target filter are recorded as z(0), and the initial state covariance matrix of the target filter is recorded as P(0). z(0) can be considered as the state parameters of the target filter at time 0, and P(0) can be considered as the state covariance matrix of the target filter at time 0. The next (1 moment) state parameters of the target filter for time update can be recorded as z(1), and the next state covariance matrix can be recorded as P(1); by analogy, the state parameters of the target filter at time t can be recorded as z(t), and the state covariance matrix at time t can be recorded as P(t). Assuming that the current moment is time t, z(t) is the predicted state parameter of the target filter, and P(t) is the predicted state covariance matrix of the target filter.

[0173] Step S104, filtering out second filtered observation information for constructing a measurement update matrix of a target filter from the first filtered observation information, and constructing a measurement variance matrix corresponding to the target filter according to the satellite observation error factor determined by the terminal status information.

[0174] Specifically, after the target filter completes the time update, the target filter can continue to be measured and updated, and the state parameters at the beginning of the measurement update process are the predicted state parameters when the target filter time update is completed, and the state covariance matrix at the beginning of the measurement update process is the predicted state covariance matrix when the target filter time update is completed. When the target filter is measured and updated, the target filter can be model verified. If the target filter passes the model verification, the second screening observation information used to construct the measurement update matrix of the target filter can be screened out from the first screening observation information through the normal distribution test; if the target filter does not pass the model verification, the target filter needs to be model repaired, such as resetting the initial state parameters and initial state covariance matrix of the target filter.

[0175] Among them, the model verification of the target filter can include: constructing an observation variance matrix through the signal-to-noise ratio corresponding to the first screening observation information and the altitude angle of the satellite corresponding to the first screening observation information. At this time, the observation variance matrix corresponding to the first screening observation information can be called the first observation variance matrix; and then the model verification parameter value corresponding to the target filter can be determined through the first observation residual matrix, the predicted state covariance matrix, the Jacobian matrix of the first screening observation data for the predicted state parameters, and the first observation variance matrix. Among them, the observation residual matrix can refer to the matrix obtained by subtracting the equations on both sides of the satellite observation equation, such as the matrix obtained by subtracting the equations on both sides of the pseudorange observation equation in the above formula (1), which can be called the observation residual matrix constructed by the N pseudorange observation data received by the terminal; based on the same principle, the observation equation corresponding to the first screening observation information can be constructed through the first screening observation information, the satellite state information of the satellite corresponding to the first screening observation information, and the predicted state parameter, and the above-mentioned first observation residual matrix can be obtained by subtracting the equations on both sides of the observation equation; the Jacobian matrix is ​​a matrix in which the first-order partial derivatives are arranged in a certain way, and its determinant is called the Jacobian determinant.

[0176] In one or more embodiments, before obtaining the model verification parameter value corresponding to the target filter, the first observation residual matrix can also be processed for gross error detection according to the quartiles and absolute median of the first observation residual matrix to obtain a second observation residual matrix; in other words, the observation information gross errors in the first screening observation information are eliminated through the quartiles and absolute median of the first observation residual matrix to obtain the third screening observation information, and the observation residual matrix constructed by the third screening observation information can be called the second observation residual matrix. At this time, the signal-to-noise ratio corresponding to the third screening observation information and the altitude angle of the satellite corresponding to the third screening observation information can be used to construct an observation variance matrix, and the observation variance matrix corresponding to the third screening observation matrix can be called the first variance matrix; and then the model verification parameter value corresponding to the target filter can be determined through the second observation residual matrix, the predicted state covariance matrix, the Jacobian matrix of the second observation residual matrix for the predicted state parameters, and the first observation variance matrix; the number of the third screening observation information is less than or equal to the number of the first screening observation information.

[0177] Wherein, quartiles may refer to sorting the elements in the first observation residual matrix, dividing the sorted observation residual sequence into four equal parts, and the elements at the split point in the sorted observation residual sequence, the elements at the quarter split point are called the lower quartile, the elements at the half split point are called the median, and the elements at the three quarter split point are called the upper quartile, that is, the quartiles may include the lower quartile, the median, and the upper quartile. The absolute median difference is the median of the absolute value of the new data obtained by subtracting the median from the elements in the first observation residual matrix, and the absolute median difference is a measurement of statistical deviation. Gross error detection processing can be achieved by a gross error detection method, and the method for performing gross error detection processing based on quartiles and absolute medians is only an example in the embodiment of the present application. In addition to the gross error detection method described above, any other form of gross error detection method can also be used, for example, sequential gross error detection based on normal distribution, gross error detection based on quartiles and absolute median difference, etc., and the present application does not limit the gross error detection method for eliminating gross errors in satellite observation information.

[0178] In one or more embodiments, when the first screened observation data is pseudorange observation data, the target filter can be detected for clock error jumps through the first screened observation information and the predicted state covariance matrix. If a clock error jump is detected in the target filter, the target filter is repaired for clock error jumps, that is, the state parameters and state covariance parameters of the target filter are updated; if there is no clock error jump in the target filter, the target filter can maintain the current state parameters and state covariance matrix. When the first screened observation data is Doppler observation data, the target filter can be detected for clock drift jumps through the first screened observation information and the predicted state covariance matrix. If a clock drift jump is detected in the target filter, the target filter is repaired for clock drift jumps, that is, the state parameters and state covariance parameters of the target filter are updated; if there is no clock drift jump in the target filter, the target filter can maintain the current state parameters and state covariance matrix. Optionally, if the third screened observation information is screened out from the first screened observation information through gross error detection processing, clock error and clock drift jump detection and repair can be performed based on the third screened observation information and the predicted state covariance matrix. After the target filter completes the detection and repair of clock error and clock drift jumps, the model of the target filter is verified, that is, the model verification parameter value corresponding to the target filter is obtained.

[0179] When the model verification parameter value of the target filter is less than the model verification threshold (which can be set according to actual needs and is not limited in this application), the model verification parameter can be standardized to obtain a standardized residual matrix; by performing a normal distribution test on the standardized residual matrix, the test results corresponding to each element contained in the standardized residual matrix are obtained; if the test result corresponding to the lth element in the standardized residual matrix does not meet the test conditions, it is determined that the lth element has not passed the normal distribution test, and the satellite observation information corresponding to the lth element is removed from the first screening observation information to obtain the second screening observation information; l is a positive integer less than or equal to the number of the first screening observation information. Optionally, when the model verification parameter value is greater than or equal to the model verification threshold, the initial state parameters and initial state covariance matrix of the target filter are reset, that is, the target filter is reset.

[0180] Optionally, if the third filtered observation information is filtered out from the first filtered observation information through gross error detection processing, the satellite observation information corresponding to the lth element can be eliminated from the third filtered observation information to obtain the second filtered observation information, where l is a positive integer less than or equal to the number of the third filtered observation information.

[0181] Further, after determining the second screening observation information, the third observation residual matrix can be constructed through the second screening observation information, the predicted state parameters (i.e., the state parameters of the target filter at the current moment) and the satellite state information, and the Jacobian matrix of the third observation residual matrix for the predicted state parameters is determined as the measurement update matrix corresponding to the target filter. When determining the terminal state information, the satellite observation error factor can be obtained, and the satellite observation error factor can also be called a random error model factor; the satellite observation error factor can include at least one of the pseudorange observation random error model factor and the Doppler observation random error model factor; the pseudorange observation random error model factor can be used to measure the degree of difference between the pseudorange observation data and the actual data, and the Doppler observation random error model factor can be used to measure the degree of difference between the Doppler observation data and the actual data. Through the satellite observation error factor and the random error model corresponding to each satellite, the measurement variance matrix corresponding to the target filter can be constructed, and the measurement variance matrix can be a matrix with fixed values, or it can be determined based on an empirical model.

[0182] Step S105, measuring and updating the predicted state parameters of the target filter by measuring the update matrix, the second screening observation information, the predicted state covariance matrix and the measurement variance matrix, obtaining the target state parameters, and determining the terminal positioning result corresponding to the terminal according to the target state parameters.

[0183] Specifically, the predicted state parameters of the target filter are measured and updated by measuring the update matrix, the second screening observation information, the predicted state covariance matrix and the measured variance matrix, and the target state parameters and the target state covariance matrix can be obtained. The difference between the target state parameter and the previous state parameter can be determined as the filter correction amount corresponding to the target filter. When the filter correction amount passes the test (the correction threshold can be set according to actual needs or experience), the second residual covariance matrix corresponding to the target filter can be constructed through the target covariance matrix, the measured variance matrix and the measurement update matrix; the third observation residual matrix is ​​tested for normal distribution through the second residual covariance matrix to obtain the test results corresponding to each element contained in the third observation residual matrix; if the test results corresponding to each element in the third observation residual matrix meet the test conditions, the target state parameter is determined as the terminal positioning result corresponding to the terminal. Optionally, the terminal positioning results obtained in the embodiments of the present application can be applied in mobile terminal positioning and navigation application scenarios (for example, electronic map applications), and can also be applied in lane-level navigation application scenarios, and can achieve sub-meter or lane-level positioning, where sub-meter positioning means that the accuracy of the terminal positioning results can reach decimeters, centimeters or even millimeters.

[0184] Optionally, if the filter correction amount is greater than or equal to the correction threshold, it indicates that the target filter fails and needs to be reset. If an element in the third observation residual matrix fails the test, the satellite observation information corresponding to the element is removed, the fourth screening observation information is determined from the second screening observation information, and the measurement update matrix is ​​reconstructed through the fourth screening observation information.

[0185] In an embodiment of the present application, terminal status information corresponding to the terminal can be estimated through satellite observation information, and a target filter can be established through the terminal status information. Through the two processes of target filter time update and filter measurement update, the observation information gross errors can be eliminated from the satellite observation information, and the terminal positioning result corresponding to the terminal can be determined through the satellite observation information after eliminating the observation information gross errors. This can improve the accuracy of the terminal position, achieve sub-meter or lane-level positioning, and assist lane-level positioning and navigation.

[0186] Below through Figure 4 and Figure 5 The process of determining the terminal status information is described in detail, namely Figure 4 and Figure 5 It is for the above Figure 3 The specific implementation process of step S101 in the corresponding embodiment. Wherein, when the satellite observation information includes pseudorange observation data and Doppler observation data, after obtaining the satellite status information corresponding to N (N is a positive integer) satellites, the pseudorange observation equation as shown in the above formula (1) can be constructed for the N pseudorange observation data, and the Doppler observation equation as shown in the above formula (2) can be constructed for the N Doppler observation equations. Further, the terminal position and terminal clock error corresponding to the terminal can be estimated by using the robust weighted least squares algorithm and the pseudorange observation equation; the terminal velocity and terminal clock drift corresponding to the terminal can be estimated by using the robust weighted least squares algorithm and the Doppler observation equation. The terminal position, terminal velocity, terminal clock error and terminal clock drift can be called terminal status information. Wherein, the robust weighted least squares algorithm organically combines the robust estimation principle with the least squares form through equivalent weights. The main body of the measured values ​​generally conforms to the normal distribution. The least squares method (also known as the least square method) is a mathematical optimization method. It should be noted that the robust weighted least squares algorithm is merely an example provided in the embodiments of the present application. Other mathematical optimization methods except the robust weighted least squares algorithm are also applicable, such as Newton's method and stochastic gradient descent method, and the present application does not limit this.

[0187] See also Figure 4 , Figure 4 1 is a flow chart of estimating the terminal position and terminal clock error in the terminal status information provided by an embodiment of the present application. Figure 4 As shown, the process of estimating the terminal position and the terminal clock error may include the following steps:

[0188] Step S201, setting the initial values ​​of the estimation parameters, namely the initial terminal position and the initial terminal clock difference.

[0189] Specifically, for the N pseudo-range observation information in the satellite observation information received by the terminal, the terminal position and terminal clock error can be estimated using the robust weighted least squares algorithm and the N pseudo-range observation information. Assume that the estimated parameters are The specific process of using the robust weighted least squares algorithm may include: setting the estimated parameter x u The initial value of is to set the initial state information for the terminal. The initial state information at this time may include the initial terminal position and the initial terminal clock difference, which is recorded as like Figure 2 The purpose of using the robust weighted least squares algorithm is to continuously iterate and update the above estimated parameters x u , to obtain the estimated values ​​of the terminal position and terminal clock error.

[0190] Step S202: construct a pseudorange residual matrix.

[0191] Specifically, the satellite observation equation between the terminal and the satellite is constructed through the satellite observation information, the initial state information and the satellite state information corresponding to the satellite. At this time, the satellite observation information includes N pseudo-range observation data, and the initial state information may include the initial terminal position r u,0 and the initial terminal clock difference dt r,0 , the satellite status information may include the satellite position and the satellite clock error, so the constructed satellite observation equation is actually a pseudo-range observation equation. More specifically, the interval distance between the initial terminal position and the satellite position can be obtained, such as ||r u,0 -r i || (i.e., the geometric distance between the initial terminal position and the satellite position corresponding to satellite i), and obtain the clock difference between the initial terminal clock difference and the satellite clock difference, such as dt r,0 -dt i ; Based on the interval distance and clock difference, the first estimate between the terminal and the satellite can be determined, such as ||r u,0 -r i ||+c·dt r,0 -c·dt i +ζ i , a pseudorange observation equation between the terminal and the satellite is constructed by using the first estimated value and the pseudorange observation data; the pseudorange observation equation is in the form of the above formula (1), except that r in the above formula (1) is replaced by u Replace with r u,0 , dt r Replace with dt r,0Then, the two sides of the pseudorange observation equation can be subtracted to obtain the pseudorange residual matrix B0, which can also be referred to as the pseudorange residual matrix. The elements in the pseudorange residual matrix B0 can be expressed as the residual values ​​between each pseudorange observation data and the estimated values ​​obtained by the initial terminal position, satellite position, initial terminal clock error and satellite clock error.

[0192] Step S203: performing gross error detection on the pseudorange residual matrix based on quartiles.

[0193] Specifically, after constructing the pseudorange residual matrix B0, the pseudorange residual matrix B0 can be subjected to gross error detection based on quartiles to eliminate the gross errors of pseudorange observation data in N pseudorange observation data. Among them, the gross error detection process based on quartiles can derive many different gross error detection schemes in the specific implementation process. For example, for the same data, different gross error detection conditions may also result in different results. The gross error detection schemes that result in different results should be different. The following describes the gross error detection process by taking a gross error detection scheme based on quartiles as an example.

[0194] The elements in the pseudorange residual matrix B0 are sorted in ascending order to obtain a sorted pseudorange residual sequence, which can be called a first sequence. The initial mask array mask[N]={0,0,…,0} corresponding to the first sequence is obtained. The first sequence can be detected for gross errors based on the upper quartile and lower quartile of the first sequence. If any element in the first sequence is less than M 1 / 4 -1.5·(M 3 / 4 -M 1 / 4 ) or greater than M 3 / 4 +1.5·(M 3 / 4 -M 1 / 4 ), mask[i]=mask[i]+1, otherwise no processing is performed, where i is a positive integer less than N. This operation is an update process of the initial mask array. 1 / 4 is the lower quartile of the first sequence, M 3 / 4 is the upper quartile of the first series.

[0195] Furthermore, each element in the first sequence is subtracted from the median of the first sequence, and the absolute value of the result obtained after the subtraction is taken to obtain a new set of data, which can be called the second sequence. Get the next four digits of the second sequence (denoted as ) and the upper four digits (which can be written as ), when the element in the second sequence is greater than and less than , the element can be added to the third sequence, that is, all elements in the second sequence that meet the above conditions are added to the third sequence, and the median of the third sequence is calculated (denoted as ). When any element in the first sequence satisfy , mask[i]=mask[i]+1, otherwise no processing is performed. This operation is the process of updating the above-updated mask array again. The updated mask array can be called the target mask array. If the i-th element in the target mask array (i.e., mask[i]) is greater than or equal to 1, the pseudo-range observation data corresponding to the i-th element in the first sequence is determined to be a gross error, and the pseudo-range observation data corresponding to the i-th element is eliminated. If mask[i]=0, the pseudo-range observation data corresponding to the i-th element in the first sequence is retained. Through the above-mentioned gross error detection process, some pseudo-range observation data gross errors can be eliminated from N pseudo-range observation data to obtain pseudo-range observation data after gross errors are eliminated, which can be called the fifth screening observation information. Assume that the fifth screening observation information includes n1 pseudo-range observation data, n1 is a positive integer less than or equal to N, when n1 is less than N, it is necessary to reconstruct the pseudo-range residual matrix B0 based on the fifth screening observation information. Compared with the previous pseudo-range residual matrix, the number of rows of the reconstructed B0 becomes smaller.

[0196] Optionally, in one or more embodiments, step S203 may be skipped, and the process may be directly transferred from step S202 to step S204, then step S204 and subsequent steps are all performed on the basis of N pseudo-range observation data. If the number of pseudo-range observation data acquired after executing step S203 becomes n1, then step S204 and subsequent steps are all performed on the basis of n1 pseudo-range observation data. For the convenience of description, the subsequent steps in the embodiments of the present application are all performed on the basis of n1 pseudo-range observation data, and no further explanation will be given later.

[0197] Step S204, calculating the Jacobian matrix of the pseudorange observation equation with respect to the estimated parameters.

[0198] Specifically, assume that the estimated parameters of the k-1th iteration are Then when k is 1, the estimated parameters of the k-1th iteration include the initial terminal position and the initial terminal clock error. The satellite observation equation of each iteration is constructed by the estimated parameters of that iteration. That is, the pseudorange observation equation of the k-1th iteration needs to replace the terminal position and terminal clock error in the above formula (1) with x u,k-1 The terminal position r u,k-1 and terminal clock difference dt r,k-1, the satellite observation equation (pseudorange observation equation) of the k-1th iteration, with respect to the partial derivative of the estimated parameters of the k-1th iteration, is determined as the Jacobian matrix of the k-1th iteration, and the pseudorange residual matrix of the k-1th iteration can be constructed according to the satellite observation equation of the k-1th iteration. Among them, the pseudorange residual matrix of the k-1th iteration is denoted as B k-1 , the Jacobian matrix of the k-1th iteration is recorded as G ρ,k-1 , the Jacobian matrix G ρ,k-1 It can be expressed as the following formula (3):

[0199]

[0200] In the above formula (3), It represents the unit observation vector from the terminal to satellite i at the k-1th iteration.

[0201] Step S205: construct a pseudorange observation variance matrix.

[0202] Specifically, if the aforementioned step S203 is not executed, or the gross error of the pseudorange observation data is not screened out after executing the aforementioned step S203, the satellite observation errors corresponding to the N satellites can be determined according to the observation error parameter, the signal-to-noise ratio of the satellite observation information (pseudorange observation data) corresponding to the N satellites, and the altitude angles corresponding to the N satellites (the satellite observation errors here can be a pseudorange random observation error model); and then the satellite observation errors corresponding to the N satellites are used as matrix diagonal elements to construct a second observation variance matrix. At this time, the second observation variance matrix can be a pseudorange observation variance matrix determined by the N pseudorange observation data. Optionally, if after executing the above step S203, the gross errors of the pseudorange observation data are eliminated, and only the pseudorange observation data corresponding to n1 satellites remain (here n1 is assumed to be less than N), the pseudorange random observation error models corresponding to the n1 satellites can be determined according to the observation error parameter, the signal-to-noise ratio corresponding to the n1 pseudorange observation data, and the altitude angles corresponding to the n1 satellites associated with the n1 pseudorange observation data; the pseudorange random observation error models corresponding to the n1 satellites are used as matrix diagonal elements to construct a pseudorange observation variance matrix, which can be shown as the following formula (4):

[0203]

[0204] Among them, W in the above formula (4) ρ,k-1 represents the pseudorange observation variance matrix of the kth iteration, σ ρi represents the random error model of pseudorange observation corresponding to satellite i (satellite observation error), σ ρi It can be expressed as the following formula (5):

[0205]

[0206] Among them, CN0 i is the signal-to-noise ratio of the pseudorange observations of satellite i, el i represents the altitude angle of satellite i, δ ρ is the pseudorange observation parameter, which can be set according to actual needs, such as δ ρ Can be set to 3 2 , this application does not limit this.

[0207] It should be noted that the pseudorange observation variance matrix is ​​a matrix with fixed values. u During the iterative update process, if the pseudorange observation data used has not changed, the pseudorange observation variance matrix remains unchanged; if a pseudorange observation data gross error is detected from the pseudorange observation data and the pseudorange observation data gross error is eliminated, it means that the pseudorange observation data has changed, so the pseudorange observation variance matrix can be reconstructed, that is, the satellite observation error of the satellite corresponding to the pseudorange observation data gross error is deleted; the more pseudorange observation data gross errors are eliminated, the fewer rows of the pseudorange observation variance matrix.

[0208] Step S206, calculating the estimated parameter correction amount and updating the estimated parameter value.

[0209] Specifically, the Jacobian matrix G of the k-1th iteration can be ρ,k-1 , the pseudorange residual matrix of the k-1th iteration (i.e., the above B k-1 ) and the second observation variance matrix (i.e., pseudorange observation variance matrix W ρ,k-1 ), obtain the state information correction amount (also called estimated parameter correction amount) of the k-1th iteration, and the state information correction amount of the k-1th iteration can be shown as the following formula (6):

[0210]

[0211] Where Δx ρ,k-1 represents the state information correction of the k-1th iteration, also known as the estimated parameter correction of the k-1th iteration, B k-1 is the pseudorange residual matrix of the k-1th iteration, as shown in the following formula (7):

[0212]

[0213] Among them, the estimated parameter x can be calculated based on the state information correction of the k-1th iteration. u Update, the update process is shown in the following formula (8):

[0214] x u,k =x u,k-1 +Δxρ,k-1 (8)

[0215] Among them, x u,k is the estimated parameter of the kth iteration. For each iteration, it is necessary to determine whether the state information correction amount calculated is convergent. For example, when the state information correction amount Δx of the k-1th iteration is calculated, ρ,k-1 After that, it is also necessary to judge its convergence. If Δx ρ,k-1 If convergence is not reached, the estimated parameters of the kth iteration are used as the initial values ​​of the next iteration (k+1th iteration), and steps S201 to S206 are repeated. ρ,k-1 If convergence is achieved, the subsequent step S207 is executed.

[0216] Step S207, calculating the chi-square test statistic.

[0217] Specifically, when the state information correction amount (i.e., Δx ρ,k-1 ) reaches convergence, the sum of the estimated parameters of the k-1th iteration and the state information correction amount of the k-1th iteration is determined as the estimated parameters of the kth iteration, that is, the estimated parameters of the kth iteration are obtained based on the above formula (8): The chi-square test is performed on the settlement results at this time; the pseudo-range residual matrix of the kth iteration is constructed according to the satellite observation equation of the kth iteration (that is, the above B k ), the product of the transposed matrix corresponding to the pseudorange residual matrix of the kth iteration, the inverse matrix corresponding to the pseudorange observation variance matrix, and the pseudorange residual matrix of the kth iteration is determined as the test statistic s. ρ,k-1 The condition for reaching convergence can be ||Δx ρ,k-1 ||<10 -4 , here 10 -4 It can be a value set according to actual needs, and the specific value is not limited in this application; the test statistic s can be shown as the following formula (9):

[0218]

[0219] Among them, B k The expression of is shown in the following formula (10):

[0220]

[0221] It should be noted that, due to B k It is the pseudo-range residual matrix when performing the chi-square test, so it can also be called the posterior residual matrix.

[0222] If the test statistic s is less than the test threshold (which can be set according to actual needs), steps S211 and S212 are executed, such as setting the estimated parameter of the kth iteration The terminal position and terminal clock error in the terminal status information corresponding to the terminal are determined. If the test statistic s is greater than or equal to the test threshold, the subsequent steps S208 to S210 are executed, that is, the posterior residual matrix (that is, the above B k ) to perform a normal distribution test and remove the pseudorange observation data that fail the normal distribution test.

[0223] Step S208, calculating the posterior residual covariance matrix.

[0224] Specifically, if the test statistic s is greater than or equal to the test threshold, then according to the Jacobian matrix G of the k-1th iteration ρ,k-1 , the second observation variance matrix (i.e., pseudorange observation variance matrix W ρ,k-1 ), construct the posterior residual covariance matrix, which can be shown as the following formula (11):

[0225]

[0226] Among them, C B represents the posterior residual covariance matrix.

[0227] Step S209: performing a normal distribution test on the posterior residual matrix according to the posterior residual covariance matrix.

[0228] Step S210: Eliminate pseudorange observation data that fails the normal distribution test.

[0229] Specifically, the pseudo-range residual matrix of the kth iteration (the posterior residual matrix, i.e., the pseudo-range residual matrix B after the chi-square test) is calculated by using the first residual covariance matrix (the posterior residual covariance matrix) k) to perform a normal distribution test to obtain the test results corresponding to each element in the pseudorange residual matrix of the k-th iteration; if the test result corresponding to the ith element in the pseudorange residual matrix of the k-th iteration does not meet the test condition, it is determined that the ith element has not passed the normal distribution test, and the pseudorange observation data associated with the ith element is eliminated; i is a positive integer less than or equal to the number of pseudorange observation data; the pseudorange observation data remaining after eliminating the pseudorange observation data associated with the ith element is used as the satellite observation information, the estimated parameters of the k-th iteration are used as the initial state information, and the above step S201 is restarted to execute the next iteration cycle. The iteration cycle is determined by whether it converges. For example, if the estimated parameters converge at the 10th iteration, but the solution information does not pass the chi-square test, the 1st to 10th iterations can be taken as the first iteration cycle. If the estimated parameters converge again at the 25th iteration, the 11th to 25th iterations can be taken as the second iteration cycle, and so on, until convergence is achieved and the chi-square test is passed. The number of iterations included in different iteration cycles can be the same or different, and the pseudorange observation data used in different iteration cycles can be the same or different, and are usually different.

[0230] Among them, the posterior residual matrix (i.e., B k ) The process of normal distribution test is shown in the following formula (12):

[0231]

[0232] Wherein, N(α) in formula (12) is the upper quantile of the normal distribution with confidence level α, Indicates B k The i-th element in .

[0233] Step S211, adaptively estimating the pseudorange observation random error model factor.

[0234] Specifically, when the test statistic s is less than the test threshold, the pseudorange observation random error model factor can be adaptively estimated, which can also be called the pseudorange observation error factor. The pseudorange observation random error model factor can be shown as the following formula (13):

[0235]

[0236] in, It is expressed as the pseudorange observation random error model factor. When the test statistic s is less than the test threshold, the test statistic s is used with B k The number of pseudo-range observation data contained in B k The number of rows.

[0237] Step S212: output the terminal position, the pseudo-range observation random error model factor and the information of eliminating pseudo-range observation data.

[0238] Specifically, when the test statistic s is less than the test threshold, the estimated parameters of the kth iteration can be used as the terminal position corresponding to the terminal, and the pseudorange observation random error model factor can also be output. And the remaining pseudo-range observation data obtained after removing some of the gross errors of the pseudo-range observation data, these remaining pseudo-range observations can be called pseudo-range screening data. In other words, the pseudo-range screening data is B k Pseudorange observation data included.

[0239] See also Figure 5 , Figure 5 FIG. 1 is a flow chart of estimating terminal speed and terminal clock drift in terminal status information provided by an embodiment of the present application. Figure 5 As shown, the process of estimating the terminal speed and the terminal clock drift may include the following steps:

[0240] Step S301, setting the initial values ​​of the estimation parameters, namely the initial terminal speed and the initial terminal clock drift.

[0241] Specifically, for the N Doppler observation information in the satellite observation information received by the terminal, the terminal speed and terminal clock drift can be estimated using the robust weighted least squares algorithm and the N Doppler observation information. Assume that the estimated parameters are The specific process of using the robust weighted least squares algorithm may include: setting the estimated parameter y u The initial value of is to set the initial state information for the terminal. The initial state information at this time may include the initial terminal speed and the initial terminal clock drift, which is recorded as like Figure 2 The purpose of using the robust weighted least squares algorithm is to continuously iterate and update the above estimated parameters y u , estimate the terminal speed and terminal clock drift corresponding to the terminal.

[0242] Step S302: construct a Doppler residual matrix.

[0243] Specifically, the satellite observation equation between the terminal and the satellite is constructed through the satellite observation information, the initial state information and the satellite state information corresponding to the satellite. At this time, the satellite observation information includes N Doppler observation data, and the initial state information may include the initial terminal velocity v u,0 and the initial terminal clock difference Satellite state information may include satellite velocity and satellite clock drift, so the constructed satellite observation equation is actually a Doppler observation equation. More specifically, the velocity difference between the initial terminal velocity and the satellite velocity can be obtained, as well as the unit observation value between the terminal and the satellite, such as Obtain the clock drift difference between the initial terminal clock drift and the satellite clock drift, and determine the second estimated value between the terminal and the satellite based on the product of the velocity difference and the unit observation value and the clock drift difference, such as The Doppler observation equation between the terminal and the satellite is constructed by multiplying the wavelength of the satellite broadcast signal and the Doppler observation data, as well as the second estimated value. The Doppler observation equation is in the form of the above formula (2), except that v in the above formula (2) is replaced by u Replace with v u,0 , Replace with Then, the two sides of the Doppler observation equation can be subtracted to obtain a Doppler residual matrix, which can also be referred to as a Doppler residual matrix.

[0244] Step S303: performing gross error detection on the pseudorange residual matrix based on quartiles.

[0245] Step S304, calculating the Jacobian matrix of the Doppler observation equation with respect to the estimated parameters.

[0246] Step S305: constructing a Doppler observation variance matrix.

[0247] Step S306, calculating the estimated parameter correction amount and updating the estimated parameter value.

[0248] Step S307, calculating the chi-square test statistic.

[0249] Step S308, calculating the posterior residual covariance matrix.

[0250] Step S309: Perform a normal distribution test on the posterior residual matrix according to the posterior residual covariance matrix.

[0251] Step S310: Eliminate Doppler observation data that fails the normal distribution test.

[0252] Step S311, adaptively estimating the Doppler observation random error model factor.

[0253] Step S312, outputting the terminal velocity, the Doppler observation random error model factor and the Doppler observation data elimination information.

[0254] The specific implementation process of step S303 to step S312 is based on the robust weighted least squares algorithm to estimate the parameter y u The update process of Figure 4 The process of estimating the terminal position using pseudorange observation information in the corresponding embodiment is similar and will not be described in detail here. It should be noted that the N Doppler observation data can be processed using the robust weighted least squares algorithm to output the terminal velocity, Doppler observation random error model factor, and the terminal speed. (It can also be called Doppler observation error factor, and the Doppler observation error factor and the pseudo-range observation error factor are collectively referred to as satellite observation error factor) and the remaining Doppler observation data after removing some Doppler observation data errors, these remaining Doppler observation data can be called Doppler screening data. The Doppler screening data and the pseudo-range screening data can be called first screening observation information; the terminal position and terminal clock error estimated by pseudo-range observation data, and the terminal speed and terminal clock drift estimated by Doppler observation data can be collectively referred to as terminal status information corresponding to the terminal.

[0255] In the embodiment of the present application, the terminal position and terminal speed of the terminal are estimated by using a robust weighted least squares algorithm, which can provide more accurate initial state parameters for establishing a target filter and improve the positioning accuracy of the terminal.

[0256] See also Figure 6 , Figure 6 is a flow chart of a mid-terminal positioning method provided by an embodiment of the present application. The terminal positioning method can be executed by a computer device, which can be an electronic device integrated with a satellite positioning device, such as Figure 1 Any user terminal in the user terminal cluster shown, or any terminal that needs to be positioned. The present application embodiment takes the satellite observation information including pseudorange observation data and Doppler observation data, and the target filter is a robust Kalman filter as an example for detailed description, such as Figure 4 As shown, the terminal positioning method may include the following steps:

[0257] Step S401, estimating terminal status information based on robust weighted least squares and satellite observation information.

[0258] The specific implementation process of step S401 can be found in the above Figure 4 and Figure 5 The description in the corresponding embodiment will not be repeated here.

[0259] Step S402: Establish a robust Kalman filter based on the terminal status information.

[0260] Specifically, when the robust Kalman filter has completed the initialization process, there is no need to execute step S402, and the subsequent step S403 is directly executed. When the robust Kalman filter is not initialized, the terminal position, terminal speed, terminal clock difference and terminal clock drift in the terminal state information can be set as the initial state parameters of the robust Kalman filter (target filter), that is, The pseudorange observation variance matrix is ​​constructed by using the signal-to-noise ratio corresponding to the pseudorange screening data and the altitude angle of the satellite corresponding to the pseudorange screening data, which is recorded as W ρt , through the signal-to-noise ratio corresponding to the Doppler screening data and the altitude angle of the satellite corresponding to the Doppler screening data, the Doppler observation variance matrix is ​​constructed and recorded as The pseudorange observation variance matrix, the satellite observation error factor determined by the terminal position and the terminal clock error (i.e., the pseudorange observation random error model factor It can also be called pseudorange observation error factor), and the Jacobian matrix determined by pseudorange screening data, terminal position, and terminal clock error, denoted as G ρt , construct the position covariance matrix; through the Doppler observation variance matrix, the satellite observation error factor determined by the terminal velocity and terminal clock drift (i.e., the Doppler range observation random error model factor It can also be called the Doppler observation error factor), and the Jacobian matrix determined by the Doppler screening data, terminal velocity, and terminal clock drift Construct a velocity covariance matrix; determine the diagonal matrix composed of the position covariance matrix and the velocity covariance matrix as the initial state covariance matrix corresponding to the target filter. The initial state covariance matrix is ​​calculated by the robust weighted least squares algorithm, and its representation is shown in the following formula (14):

[0261]

[0262] Among them, p(0) is the initial state covariance matrix, diag represents the diagonal matrix, is the position covariance matrix, is the velocity covariance matrix, the position covariance matrix As shown in the following formula (15), the velocity covariance matrix It can be expressed as the following formula (16):

[0263]

[0264] Among them, G Vt The Jacobian matrix obtained by performing robust weighted least squares estimation on the pseudorange observation data received by the terminal, that is, the Jacobian matrix determined by the pseudorange screening data in the first screening observation information; is the Jacobian matrix obtained after performing robust weighted least squares estimation on the Doppler observation data received by the terminal, that is, the Jacobian matrix determined by the Doppler screening data in the first screening observation information; W ρt is the pseudorange measurement variance matrix corresponding to the pseudorange screening data in the first screening observation information, is the Doppler observation variance matrix corresponding to the Doppler screening data in the first screening observation information; is the pseudorange observation random error model factor, also called the pseudorange observation error factor, is the Doppler observation random error model factor, also called the Doppler observation error factor, and I3 is the unit matrix.

[0265] Step S403: estimating filter system noise according to historical state information.

[0266] For details, see Figure 7 , Figure 7 is a schematic diagram of a filter system noise adaptive estimation provided by an embodiment of the present application. Figure 7 As shown, the adaptive estimation of the filter system noise may include speed system noise estimation, clock drift system noise estimation and clock difference system noise estimation. The speed system noise estimation is realized by means of historical terminal speed information. The historical terminal speed information may be a historical terminal speed sequence, the historical clock difference information may be a historical terminal clock difference sequence, and the historical clock drift information may be a historical terminal clock drift sequence.

[0267] Furthermore, the historical terminal speed sequence, the historical terminal clock drift sequence and the historical terminal clock difference sequence in the historical state information corresponding to the terminal can be obtained; the historical terminal speed sequence, the historical terminal clock drift sequence and the historical terminal clock difference sequence are all determined by a time sliding window of size p, where p is a positive integer; the above historical state information may refer to the state information generated in the update iteration process of the robust weighted least squares. Among them, the historical terminal speed sequence can be shown as formula (17):

[0268] T v (p) = {v u (t1),v u (t2),v u (t3),……,v u (t p )} (17)

[0269] Among them, T v (p) represents the historical terminal velocity sequence, which means the historical terminal velocity saved for p consecutive moments, v u (t1) is the terminal speed at time t1; the historical terminal clock drift sequence can be expressed as formula (18):

[0270]

[0271] in, represents the historical terminal clock drift sequence, represents the historical terminal clock drift saved for p consecutive moments; the historical terminal clock difference sequence can be shown as formula (19):

[0272] dtr(p)={dtr(t1),dtr(t2),dtr(t3),……,dtr(t p )} (19)

[0273] Among them, dtr(p) represents the historical terminal clock difference sequence, which means the historical terminal clock difference saved for p consecutive moments.

[0274] Among them, Figure 7 The speed system noise estimation shown in the figure may include: obtaining the first variance value corresponding to the historical terminal speed sequence, denoted as σ v (p), the product of the first variance value and the time difference between adjacent epochs is determined as the velocity system noise corresponding to the target filter; wherein the first variance value can be expressed as the following formula (20):

[0275]

[0276] Among them, the speed system noise of the target filter can be expressed as spectral density PSD v It is represented by the spectral density PSD v As shown in the following formula (21):

[0277] PSD v =(σ v (p)) 2 ·dt (21)

[0278] Here, dt represents the time difference between adjacent epochs.

[0279] Among them, Figure 7 The clock drift system noise estimation shown may include: obtaining a second variance value corresponding to the historical terminal clock drift sequence, denoted as The product of the second variance value and the time difference dt between adjacent epochs is determined as the clock drift system noise corresponding to the target filter; wherein the second variance value can be expressed as the following formula (22):

[0280]

[0281] Among them, the clock drift system noise of the target filter can be expressed as To express it, the spectral density As shown in the following formula (23):

[0282]

[0283] Among them, Figure 7 The noise estimation of the clock error system shown in the figure includes: obtaining the third-party difference corresponding to the historical terminal clock error sequence, denoted as σ dtr (p), the product of the third-party difference and the time difference of the adjacent epochs is determined as the clock error system noise corresponding to the target filter; wherein the third-party difference can be expressed as the following formula (24):

[0284]

[0285] Among them, the clock error system noise of the target filter can be expressed as spectral density PSD dtr It is expressed as shown in the following formula (25):

[0286] PSD dtr =(σ dtr (p)) 2 ·dt (25)

[0287] Then, the speed system noise, clock drift system noise and clock error system noise can be determined as the filter system noise corresponding to the target filter, that is, the filter system noise includes the above spectral density PSD v , spectral density And the spectral density PSD dtr .

[0288] Optionally, after completing the filter system noise estimation, the robust Kalman filter can be updated in time. For example, the state transfer matrix of the target filter (robust Kalman filter) can be constructed by the time difference between adjacent epochs, and the initial state parameters of the target filter are updated in time according to the state transfer matrix to obtain predicted state parameters. The state parameters of the target filter are updated in the time update process as follows: the next state parameter is the product of the previous state parameter and the state transfer matrix; the initial state covariance matrix of the target filter is updated in time according to the state transfer matrix and the filter system noise to obtain the predicted state covariance matrix.

[0289] Among them, the updating method of the state covariance matrix during the time update of the target filter may include: when the predicted state covariance matrix is ​​the state covariance matrix of the initial state covariance matrix in the target filter at time t, then the above-mentioned predicted state parameters are also the state parameters of the initial state parameters at time t, and t is a positive integer; the noise covariance matrix can be constructed through the index information corresponding to the filter system noise and the time difference of adjacent epochs; and then the state covariance matrix of the target filter at time t-1 is obtained; when t is 1, the state covariance matrix of the target filter at time t-1 is the initial state covariance matrix; the product of the state transfer matrix, the state covariance matrix at time t-1 and the transposed matrix corresponding to the state transfer matrix is ​​summed with the noise covariance matrix to obtain the predicted state covariance matrix. Assuming that the state variance matrix of the target filter at time t-1 is P(t-1), then at time t, the state covariance matrix P(t) of the target filter can be shown as the following formula (26):

[0290] P(t)=F(t-1)·P(t-1)·F T (t-1)+Q(t-1) (26)

[0291] Wherein, F(t-1) is the state transfer matrix, Q(t-1) is the noise covariance matrix, and the state transfer matrix F(t-1) can be expressed as formula (27):

[0292]

[0293] Among them, τ d is the correlation time of the Markov process, usually an empirical value, and the noise covariance matrix Q(t-1) can be expressed as formula (28):

[0294]

[0295] At time t, the state parameter x(t) of the target filter is x(t) = F(t-1)·x(t-1). This formula can be used to realize the time update process of the target filter state parameter. The above formulas (26) to (28) can be used to realize the time update process of the target filter state covariance matrix. After the time update, the state parameter of the target filter is called the predicted state parameter, and the state covariance matrix of the target filter is the predicted state covariance matrix.

[0296] Step S404, adaptively estimating the satellite observation information random error model (also referred to as satellite observation error) based on the robust weighted least squares solution information.

[0297] Specifically, the satellite observation information random error model may include a pseudorange observation random error model and a Doppler observation random error model. The satellite observation information random error model may be as shown in the following formula (29):

[0298]

[0299] Among them, σ ρ represents the random error model of pseudorange observation, δ ρ represents the observation error parameter corresponding to the pseudorange observation data, represents the Doppler observation random error model, represents the observation error parameter corresponding to the pseudorange observation data, δ ρ and It can be adjusted according to experience or actual needs, such as δ ρ =3 2 , CN0 represents the signal-to-noise ratio of satellite observation information, and el represents the altitude angle of the satellite. (pseudorange observation error factor) can be used to calculate the pseudorange observation random error model σ ρ Adaptive adjustment is performed by using the Doppler observation random error model factor Random error model for Doppler observations Perform adaptive adjustment, as shown in the following formula (27):

[0300]

[0301] Step S405, using the robust weighted least squares solution information to preliminarily eliminate the gross errors of the satellite observation information to obtain the first screened observation information.

[0302] Specifically, the satellite observation information gross errors are eliminated by using the robust weighted least squares solution information, and the remaining satellite observation information obtained can be referred to as the first screening observation information. The determination process of the first screening observation information can be referred to above Figure 4 The description of step S203 and step S211 in the corresponding embodiment will not be repeated here.

[0303] Step S406: construct a satellite observation residual matrix, ie, a first observation residual matrix, for the first filtered observation information.

[0304] Specifically, after obtaining the first screening observation information through the weighted least squares solution information, the first screening observation information at this time is the satellite observation information after eliminating the gross errors. It can be understood that although the first screening observation information here is the satellite observation information after eliminating the gross errors, it does not mean that the first screening observation information no longer contains observation information gross errors. It can only be understood that up to the current step, all the detected observation information gross errors have been eliminated. As for whether there are still observation information gross errors in the first screening observation information, it can be detected through subsequent steps.

[0305] The satellite observation residual matrix can be constructed through the first screening observation information, and the satellite observation residual matrix here can be called the first observation residual matrix. Since the first screening observation information includes pseudorange observation data and Doppler observation data, two satellite observation residual matrices can be constructed through the first screening observation information, that is, the first observation residual matrix can include a Doppler residual matrix and a pseudorange residual matrix. Assuming that the first screening observation information includes sn pseudorange observation data, sn is a positive integer less than or equal to N, the satellite observation equation constructed by sn pseudorange observation data can be shown as the following formula (31):

[0306]

[0307] The satellite observation equation shown in the above formula (31) can be used to construct the pseudorange residual matrix in the first observation residual matrix: The pseudorange residual matrix It can be expressed as the following formula (32):

[0308]

[0309] Optionally, assuming that the first screening observation information contains qn Doppler observation data, qn is a positive integer less than or equal to N, the satellite observation equation constructed by the qn Doppler observation data can be shown as the following formula (33):

[0310]

[0311] The Doppler residual matrix in the first observation residual matrix can be constructed by the satellite observation equation shown in the above formula (33): The Doppler residual matrix It can be expressed as the following formula (34):

[0312]

[0313] Step S407: Perform clock jump detection and repair based on the pseudorange residual matrix.

[0314] Specifically, when the pseudorange residual matrix shown in the above formula (32) is When the relationship shown in the following formula (35) is satisfied, the clock difference jump detection can be performed in the manner shown in the following formula (36), that is:

[0315]

[0316] in, represents the pseudorange residual matrix The absolute median difference, represents the pseudorange residual matrix The median of represents the pseudorange residual matrix The standard deviation of represents the pseudorange residual matrix The average value, θ m and θ clk is the clock error detection threshold, if θ m is called the first clock error detection threshold, and θ clk is called the second clock error detection threshold, Represents the state covariance matrix j of the target filter at time t clk Row j clk Column elements, at this time the state covariance matrix at time t can be the predicted state covariance matrix, jump clk is the clock error jump value, is the clock error detection value.

[0317] Step S408: Calculate the clock error jump value based on the pseudorange residual matrix and repair the clock error.

[0318] Specifically, when jump clk When it is zero, no processing is performed, indicating that there is no clock difference jump; when jump clk When it is equal to 1, it means that a clock error jump is detected. The clock error jump can be repaired and the filter can be reset by the method shown in the following formula (37), that is, the state parameters and state covariance matrix of the target filter are reset, such as:

[0319]

[0320] Here, SQR(100.0) means taking the square root of 100.

[0321] Step S409: Detect and repair clock drift jumps based on the Doppler residual matrix.

[0322] Specifically, similar to the above clock error jump detection process, the Doppler residual matrix shown in formula (34) is Perform clock drift jump detection and repair. The clock drift jump detection method is the same as the clock difference jump detection method (i.e., the above formula (35) and formula (36)), which will not be repeated here.

[0323] Step S410: Calculate the clock drift jump value based on the Doppler residual matrix and repair the clock drift.

[0324] Specifically, when a clock drift jump is detected, the clock drift jump can be repaired and the filter can be reset in the manner shown in the following formula (38), that is, the state parameters and state covariance matrix of the target filter are reset, such as:

[0325]

[0326] Among them, j dclk is the position of the clock drift in the filter state parameter z(t).

[0327] Step S411, calculate the filter model verification parameter value, and verify and repair the robust Kalman filter.

[0328] Specifically, after completing the detection of clock error and clock drift jump, the filter model verification parameter value can be calculated, and the model verification parameter value can be used to determine whether the robust Kalman filter system has a fault. The model verification parameter value can include a pseudorange model verification parameter value and a Doppler model verification parameter value, and the model verification parameter value is shown in the following formula (39):

[0329]

[0330] Among them, β ρ Verify parameter values ​​for the pseudorange model, is the Doppler model verification parameter value, P(t) is the state covariance matrix of the filter at time t, G ρt is the pseudorange residual matrix The Jacobian matrix of the filter state parameters is is the Doppler residual matrix Jacobian matrix of the filter state parameters. In other words, the model verification parameter value at this time is the first observation residual matrix (including the pseudorange residual matrix) constructed by the first screening observation information. and the Doppler residual matrix ), the Jacobian matrix of the first observation residual matrix with respect to the filter state parameters (eg, predicted state parameters) (including the Jacobian matrix G ρt and the Jacobian matrix ), the state covariance matrix P(t) of the target filter, and the first observation variance matrix (including the pseudorange observation variance matrix W) associated with the first screening observation information ρt and the Doppler observation variance matrix ) is constructed.

[0331] When the model verification parameter value of the target filter is less than the model verification threshold, the following step S412 can be continued to be executed. When the model verification parameter value of the target filter is greater than or equal to the model verification threshold, it indicates that the target filter has a fault and needs to be reset. The above step S402 is repeated to reset the initial state parameters and initial state covariance matrix of the target filter.

[0332] Step S412, eliminating gross errors in satellite observation information based on a normal distribution test to obtain second screened observation information.

[0333] Specifically, when the model verification parameter value of the target filter is less than the model verification threshold, the first screening observation information can be subjected to gross error detection based on the first observation residual matrix and the normal distribution test, and the gross errors of the satellite observation information that cause the target filter to diverge can be eliminated from the first screening observation information. For example, the model parameter value can be standardized to obtain a standardized residual matrix, where the standardized residual matrix can be referred to as a first standardized residual matrix, and the first standardized residual matrix can include a pseudorange standardized residual matrix and a Doppler standardized residual matrix, and the first standardized residual matrix can be shown as the following formula (40):

[0334]

[0335] Among them, b ρ represents the pseudorange normalized residual matrix in the first normalized residual matrix, represents the Doppler normalized residual matrix in the first normalized residual matrix.

[0336] Furthermore, a normal distribution test can be performed on the first standardized residual matrix to obtain a test result corresponding to each element contained in the first standardized residual matrix. The test result at this time is shown in the following formula (41):

[0337]

[0338] Among them, b in formula (41) ρ,l represents the pseudorange normalized residual matrix b ρ The lth element in , l is a positive integer less than or equal to the number of first screening observation information, ω ρ represents the pseudorange normalized residual matrix b ρ The test result corresponding to the lth element in ; represents the Doppler normalized residual matrix The lth element in represents the Doppler normalized residual matrix The test result corresponding to the lth element in .

[0339] Whenρ When it is greater than or equal to a given threshold (the threshold at this time can be called the first normal distribution test threshold), it indicates that the pseudorange standardized residual matrix b ρ The lth element in does not meet the test condition (the test condition at this time is: less than the first normal distribution test threshold), and the pseudorange normalized residual matrix b ρ The pseudo-range observation data corresponding to the lth element in is the pseudo-range observation data gross error, and the pseudo-range observation data gross error is eliminated; when ω ρ When it is less than the first normal distribution test threshold, it indicates that the pseudorange standardized residual matrix b ρ The lth element in satisfies the test condition and the pseudorange standardized residual matrix b is retained. ρ The pseudorange observation data corresponding to the lth element in , can be eliminated by the above formula (41) from the pseudorange observation data gross errors in the pseudorange screening data contained in the first screening observation information, and the pseudorange observation data without the pseudorange observation data gross errors can be obtained, which can be called candidate pseudorange observation data. When it is greater than or equal to a given threshold (the threshold at this time can be called the second normal distribution test threshold), it indicates that the Doppler standardized residual matrix The lth element in does not meet the test condition (the test condition at this time is: less than the second normal distribution test threshold), the Doppler standardized residual matrix The Doppler observation data corresponding to the lth element in is the Doppler observation data gross error, and the Doppler observation data gross error is eliminated; when When it is less than the second normal distribution test threshold, it indicates that the Doppler standardized residual matrix The lth element in satisfies the test condition and retains the Doppler standardized residual matrix The Doppler observation data corresponding to the lth element in the first screening observation information can be eliminated by the above formula (41) to remove the Doppler observation data gross error in the Doppler screening data contained in the first screening observation information, and obtain the Doppler observation data without Doppler observation data gross error, which can be called candidate Doppler observation data; wherein, the above-mentioned first normal distribution test threshold and the second normal distribution test threshold can be values ​​determined according to actual needs, and this application will not repeat them. So far, the model verification and repair of the target filter are completed, and the above-mentioned candidate pseudorange observation data and candidate Doppler observation data are determined as the second screening observation information.

[0340] Step S413: construct a measurement update matrix based on the second filtered observation information.

[0341] Specifically, the third observation residual matrix can be constructed by the second filtered observation information obtained above. The expression form of the third observation residual matrix can be referred to the above formula (32) and the above formula (34), except that the above formula (32) and the above formula (34) are created by the first filtered observation information, and the third observation residual matrix is ​​constructed by the second filtered observation information; and then the Jacobian matrix of the third observation residual matrix with respect to the current state parameter (for example, the predicted state parameter) of the target filter can be determined as the measurement update matrix of the target filter. Among them, since the second filtered observation information includes pseudorange observation information and Doppler observation data, the third observation residual matrix can include a pseudorange residual matrix and a Doppler residual matrix, and the measurement update matrix can also include a pseudorange measurement update matrix and a Doppler measurement update matrix.

[0342] Step S414: construct a measurement variance matrix using the satellite observation information random error model obtained by adaptive estimation.

[0343] Specifically, the measurement variance matrix can be constructed by the satellite observation information random error model (also referred to as satellite observation error) obtained by the aforementioned adaptive estimation. The satellite observation information random error model is shown in the aforementioned formula (30). The measurement variance matrix can be a matrix composed of empirical values ​​determined by the satellite observation information random error model shown in formula (30), that is, the measurement variance matrix is ​​a fixed numerical matrix for the target filter. On the premise of ensuring that the measurement variance matrix is ​​associated with the satellite observation information random error model, the specific values ​​in the measurement observation matrix can be set based on actual needs, and this application does not limit this. Among them, since the satellite observation information random error model includes a pseudorange observation random error model and a Doppler observation random error model, the measurement variance matrix corresponding to the target filter can include a pseudorange measurement variance matrix and a Doppler measurement variance matrix.

[0344] Step S415: Correct the terminal motion state using the measurement update matrix and the measurement variance matrix.

[0345] Specifically, the terminal motion state can be corrected by measuring the update matrix and the update matrix, that is, the state parameters of the target filter are updated. For the pseudorange observation data in the second screening observation information, the state parameters of the target filter can be updated according to the following formula (42):

[0346]

[0347] Among them, x(a-1) represents the state parameter of the target filter at the a-1 update, such as the state parameter after completing the target filter model verification and repair. When the target filter passes the model verification at the beginning and does not need to be repaired, the state parameter a is 1, which is the predicted state parameter after the target filter completes the time update. x(a) represents the state parameter of the next update, and H(a-1) represents the pseudorange filter gain of the target filter at the a-1 update. represents the pseudorange residual matrix corresponding to the pseudorange observation data in the second screening observation information, that is, the pseudorange residual matrix in the third observation residual matrix. p(a-1) represents the state covariance matrix of the target filter at the time of a-1 updates, such as the state covariance matrix corresponding to the state parameters after the target filter model verification and repair are completed. When the target filter passes the model verification at the beginning and does not need to be repaired, the state covariance matrix with a of 1 is the predicted state covariance matrix after the target filter completes the time update, p(a) represents the state covariance matrix corresponding to the next state parameter, G ρa represents the Jacobian matrix of the pseudorange residual matrix in the third observation residual matrix with respect to the filter state parameter x(a-1), R ρ (a-1) represents the pseudorange measurement variance matrix in the measurement variance matrix, and I is the unit matrix.

[0348] Optionally, for the Doppler observation data in the second filtered observation information, the state parameters of the target filter may be updated according to the following formula (43):

[0349]

[0350] in, represents the Doppler filter gain of the target filter updated a-1 times, represents the Doppler residual matrix corresponding to the Doppler observation data in the second screening observation information, that is, the Doppler residual matrix in the third observation residual matrix; represents the Jacobian matrix of the Doppler residual matrix in the third observation residual matrix with respect to the filter state parameter x(a-1), represents the Doppler measurement variance matrix in the measurement variance matrix; wherein the above pseudorange filter gain H(a-1) and the Doppler filter gain Both can be called filter gain.

[0351] The state parameters of the target filter can be updated by the above formula (42) and formula (43). If the target filter completes the measurement update at the ath update, the state parameters at time a can be determined as the target state parameters, and the state covariance matrix at time a can be determined as the target state covariance matrix. In other words, if the model verification is passed at the beginning of the measurement update phase of the target filter, there is no need to repair it. The third observation residual matrix at this time is constructed based on the second screening observation information, the predicted state parameters, and the satellite state information of the satellite corresponding to the second screening observation information, and then the state parameters of the target filter at time a-1 can be obtained; when a is 1, the state parameters at time a-1 are the predicted parameter states after the target filter completes the time update, and the state covariance matrix at time a-1 is the predicted state covariance matrix after the target filter completes the time update. The filter gain of the target filter at time a-1 (i.e., the above-mentioned Doppler filter gain) is determined by the state covariance matrix at time a-1, the measurement update matrix, and the measurement variance matrix. and pseudorange filter gain H(a-1)); the product of the filter gain at time a-1 and the third observation residual matrix is ​​summed with the state parameter at time a-1 to obtain the target state parameter, and the state covariance matrix corresponding to the target state parameter can be called the target state covariance matrix.

[0352] Step S416, detecting the post-verification satellite observation residual and the filter correction amount.

[0353] Specifically, the product of the filter gain at time a-1 and the third observation residual matrix can be determined as the filter correction amount of the target filter at time a-1. The filter correction amount may include a pseudorange filter correction amount and a Doppler filter correction amount. The pseudorange filter correction amount can be recorded as dz, and the Doppler filter correction amount can be recorded as

[0354] Among them, the pseudorange filter correction can be expressed as like If the value is greater than or equal to a given threshold (the threshold here can be called the first correction threshold, o represents the oth state parameter in the target filter, and o is a positive integer less than or equal to the number of filter state parameters), it means that the oth state parameter in the target filter fails the test and the filter needs to be reset, that is, step S402 is executed again; if If it is less than the first correction threshold, it means that the oth state parameter test in the target filter has passed, and the current state parameter of the target filter is maintained. Doppler filter correction like If the value is greater than or equal to a given threshold (the threshold here may be referred to as a second correction threshold), it indicates that the oth state parameter test in the target filter fails and the filter needs to be reset, i.e., step S402 is executed again; If the first correction threshold and the second correction threshold are less than the second correction threshold, it means that the oth state parameter in the target filter has passed the test, and the current state parameter of the target filter is maintained. Wherein, the above-mentioned first correction threshold and the second correction threshold can be values ​​determined according to actual needs, and this application will not go into details. When each state parameter in the target filter passes the test at pseudorange and Doppler, it means that the filter correction amount corresponding to the target filter has passed the test.

[0355] Step S417, performing a normal distribution test on the post-verification satellite observation residuals.

[0356] Specifically, when the filter correction corresponding to the target filter passes the test, the target state covariance matrix of the target filter for the target state parameters, that is, P(a), can be obtained, and the second residual covariance matrix corresponding to the target filter can be constructed through the target covariance matrix, the measurement variance matrix and the measurement update matrix; and then the third observation residual matrix can be tested for normal distribution through the second residual covariance matrix to obtain the test results corresponding to each element contained in the third observation residual matrix.

[0357] Among them, the second residual covariance matrix includes a pseudorange residual covariance matrix and a Doppler residual covariance matrix. Based on the pseudorange residual covariance matrix in the second residual covariance matrix, a normal distribution test is performed on the pseudorange residual matrix in the third observation residual matrix to obtain a test result corresponding to each element in the pseudorange residual matrix of the third observation residual matrix. The test result at this time is shown in the following formula (44):

[0358]

[0359] in, represents the si-th element in the pseudorange residual matrix of the third observation residual matrix, where si is a positive integer less than or equal to sn, represents the pseudorange residual covariance matrix in the second residual covariance matrix, μ si Represents the result obtained after the normal distribution test of the si-th element mentioned above.

[0360] Optionally, based on the Doppler residual covariance matrix in the second residual covariance matrix, a normal distribution test is performed on the Doppler residual matrix in the third observation residual matrix to obtain a test result corresponding to each element in the Doppler residual matrix of the third observation residual matrix. The test result at this time is shown in the following formula (45):

[0361]

[0362] in, represents the si-th element in the pseudorange residual matrix of the third observation residual matrix, qi is a positive integer less than or equal to qn, represents the Doppler residual covariance matrix in the second residual covariance matrix, α qi Represents the result obtained after the normal distribution test of the qi-th element above.

[0363] Step S418: Eliminate satellite observation information that fails the detection.

[0364] Specifically, when the test result of an element in the third observation residual matrix does not meet the test condition, the satellite observation information corresponding to the element is eliminated. si When it is less than or equal to a given threshold (the threshold at this time may also be referred to as the third normal distribution detection threshold), it indicates that the s-th element in the pseudorange residual matrix of the third observation residual matrix does not meet the test condition, and the pseudorange observation data corresponding to the s-th element (i.e., the s-th pseudorange observation data in the second screening observation information) is determined as a pseudorange observation data gross error, and the pseudorange observation data gross error is eliminated from the pseudorange observation data contained in the second screening observation data.

[0365] When α in the above formula (45) qi When it is less than or equal to a given threshold (the threshold here may also be referred to as the fourth normal distribution detection threshold), it indicates that the qi-th element in the Doppler residual matrix of the third observation residual matrix does not meet the test condition, and the Doppler observation data corresponding to the qi-th element (i.e., the qi-th Doppler observation data in the second screening observation information) is determined as a Doppler observation data gross error, and the Doppler observation data gross error is removed from the Doppler observation data contained in the second screening observation data. Based on the pseudorange observation data obtained after removing the pseudorange observation data gross error, and the Doppler observation data obtained after removing the Doppler observation data gross error, the measurement update matrix is ​​reconstructed, that is, the above step S413 is re-executed until all remaining satellite observation information passes the normal distribution test result. Among them, the first normal distribution test threshold and the third normal distribution test threshold in this application can be the same value or different values, and the second normal distribution test threshold and the fourth normal distribution test threshold can be the same value or different values, and this application does not limit this.

[0366] Step S419, output the terminal position and speed information at the current moment.

[0367] Specifically, when the test results corresponding to each element in the third observation residual matrix meet the test conditions, the terminal position and terminal speed in the target state parameter can be determined as the terminal positioning result corresponding to the terminal. In other words, when the test results (μ si ) are all less than the third normal distribution detection threshold, and each element in the Doppler residual matrix of the third observation residual matrix corresponds to the test result (α qi ) are both less than the fourth normal distribution test threshold, the terminal position and terminal velocity in the target state parameters of the target filter are output. The terminal position and terminal velocity at this time are the terminal positioning result of the terminal.

[0368] In an embodiment of the present application, the terminal state information corresponding to the terminal can be estimated by using a robust weighted least squares algorithm and satellite observation information, and a robust Kalman filter can be established through the terminal state information. Through the two processes of time update and measurement update of the robust Kalman filter, the normal distribution test is used to eliminate the gross errors of the observation information from the satellite observation information, and the terminal positioning result corresponding to the terminal is determined by the satellite observation information after eliminating the gross errors of the observation information. The accuracy of the terminal position can be improved, sub-meter or lane-level positioning can be achieved, and lane-level positioning and navigation can be assisted. The terminal positioning method implemented by the robust weighted least squares algorithm and the robust Kalman filter can be applicable to various types of satellite positioning devices (for example, consumer-grade, measurement-type or other types), and the applicability of terminal positioning can be improved.

[0369] See also Figure 8 , Figure 8 It is a flow chart of a measurement update of a target filter provided by an embodiment of the present application. It can be understood that the embodiment of the present application can be a measurement update process for the target filter after the terminal state information corresponding to the terminal is estimated based on the weighted least squares method and the satellite observation information, and the target filter is initialized and the time update processing is completed based on the terminal state information. The state parameters of the target filter after the time update are the predicted state parameters, and the state covariance matrix corresponding to the predicted state parameters. Figure 8 As shown, the measurement update process of the target filter may include the following steps:

[0370] Step S501, based on the solution information of the robust weighted least squares estimation, the gross errors of the satellite observation information are eliminated to obtain the first screened observation information.

[0371] Step S502: construct a satellite observation residual matrix, ie, a first observation residual matrix, from the first filtered observation information.

[0372] The specific implementation process of step S501 and step S502 can be found in Figure 6Steps S405 and S406 in the corresponding embodiment will not be described in detail here.

[0373] Step S503, performing gross error detection on the first observation residual matrix based on quartiles and absolute median differences to obtain third filtered observation information, and constructing a satellite observation residual matrix based on the third filtered observation information, that is, a second observation residual matrix.

[0374] Specifically, the first observation residual matrix (such as the pseudorange residual matrix shown in the above formula (32)) can be and the Doppler residual matrix shown in formula (34) ) to perform gross error detection, eliminate the gross errors of satellite observation information in the first screening observation information, and obtain the third screening observation information. The satellite observation residual matrix constructed by the third screening observation information can be called the second observation residual matrix. Among them, the above-mentioned gross error detection process may include: obtaining the quantile difference between the upper quartile of the first observation residual matrix and the lower quartile of the first observation residual matrix; subtracting the lower quartile of the first observation residual matrix and the product between the first gross error detection threshold and the quantile difference to obtain the minimum element value corresponding to the first observation residual matrix; summing the upper quartile of the first observation residual matrix and the product between the first gross error detection threshold and the quantile difference to obtain the maximum element value corresponding to the first observation residual matrix; summing the j-th element in the first observation residual matrix and the j-th element in the first observation residual matrix. The ratio of the absolute value of the median of an observation residual matrix after subtraction operation to the absolute median difference of the first observation residual matrix is ​​determined as the value to be verified, and j is a positive integer less than or equal to the number of the first screening observation information; if the value to be verified is greater than the second gross error detection threshold, and the jth element is in the gross error value range, the jth element is removed from the first observation residual matrix to obtain the second observation residual matrix, and the satellite observation information constituting the second observation residual matrix can be called the third screening observation information, and the gross error value range refers to the value range outside the range corresponding to the minimum element value to the maximum element value.

[0375] Since the first observation residual matrix includes the pseudorange residual matrix and the Doppler residual matrix Therefore, when performing gross error detection processing on the first observation residual matrix, it is necessary to perform the pseudorange residual matrix and the Doppler residual matrix Perform gross error detection. The following uses the pseudo-range residual matrix in the first observation residual matrix As an example, the gross error detection process is described; in the embodiment of the present application, the pseudo-range residual matrix The next four digits of Pseudorange residual matrix The upper quartile of Pseudorange residual matrix The minimum element value of Pseudorange residual matrix The maximum element value of Minimum element value and the maximum element value It can be expressed as the following formula (46):

[0376]

[0377] in, Represents the pseudorange residual matrix The first gross error detection threshold, represents the pseudorange residual matrix The upper four digits and pseudorange residual matrix of The quantile difference between the lower four digits of . Pseudorange residual matrix Each element in can be used to detect gross errors according to the following formula (47), and the expression of formula (47) is as follows:

[0378]

[0379] in, represents the pseudorange residual matrix The gross error detection flag value corresponding to the jth element in (where j is a positive integer less than or equal to the number sn of pseudorange screening data included in the first screening observation information) is represents the pseudorange residual matrix The jth element in represents the pseudorange residual matrix The median of represents the pseudorange residual matrix The absolute median difference, Represents the pseudorange residual matrix The second gross error detection threshold of and It can be set according to actual needs and this application does not limit it. represents the pseudorange residual matrix The value to be verified, It can be called the pseudorange residual matrix The valid value range of or Pseudorange residual matrix The gross error value range.

[0380] When the value to be verified Less than or equal to the second gross error detection threshold And the pseudorange residual matrix The jth element of In the valid value range hour, The corresponding gross error detection flag value is 1, indicating The corresponding pseudo-range observation data is valid data and is retained. Greater than the second gross error detection threshold And the pseudorange residual matrix The jth element of In the range of gross error or hour, The corresponding gross error detection mark value is 0, indicating The corresponding pseudorange observation data is the pseudorange observation data gross error, and the pseudorange observation data gross error is eliminated. The above formula (47) can be used to eliminate the pseudorange observation data gross error from the pseudorange screening observation data contained in the first screening observation information. The pseudorange residual matrix constructed by the pseudorange observation data from which the pseudorange observation data gross error is eliminated can be recorded as The pseudorange residual matrix It refers to the pseudorange residual matrix The matrix obtained after removing the elements with gross error detection mark value 0.

[0381] Similarly, for the Doppler residual matrix in the first observation residual matrix The same can be performed with the above pseudorange residual matrix The same gross error detection process can be performed by using the following formulas (48) and (49) to calculate the Doppler residual matrix: Perform gross error detection and remove the Doppler residual matrix The Doppler observation data gross error in the Doppler observation data, the Doppler residual matrix constructed by the Doppler observation data with the Doppler observation data gross error removed can be recorded as The Doppler residual matrix It is the Doppler residual matrix The matrix obtained after removing the elements with gross error detection flag value of 0. Wherein, formula (48) and formula (49) can be expressed as follows:

[0382]

[0383] in, represents the Doppler residual matrix The next four digits of represents the Doppler residual matrix The upper four digits of Represents the Doppler residual matrix The first gross error detection threshold, Represents the Doppler residual matrix The second gross error detection threshold, and It can be set according to actual needs, and this application does not limit it; represents the Doppler residual matrix The minimum element value of represents the Doppler residual matrix The maximum element value of . represents the Doppler residual matrix The j-th element of (where j is a positive integer less than or equal to the number qn of Doppler screening data included in the first screening observation information), represents the Doppler residual matrix The gross error detection mark value corresponding to the j-th element in represents the Doppler residual matrix The median of represents the Doppler residual matrix The absolute median difference, represents the Doppler residual matrix The value to be verified, It can be called the Doppler residual matrix The valid value range of or Doppler residual matrix The gross error range is When it is equal to 0, it means The corresponding Doppler observation data is the Doppler observation data gross error, and the Doppler observation data gross error is eliminated; when When it is equal to 1, it means The corresponding Doppler observation data is valid data, and the Doppler observation data gross error is retained, thereby eliminating the Doppler observation data with the gross error of the Doppler observation data. In the embodiment of the present application, the pseudorange observation data with the gross error of the pseudorange observation data eliminated and the Doppler observation data with the gross error of the Doppler observation data eliminated can be determined as the third screening observation data, and the pseudorange residual matrix and the Doppler residual matrix It is called the second observation residual matrix.

[0384] Step S504: perform clock jump detection and repair based on the pseudorange residual matrix.

[0385] Step S505, calculating the clock error jump value based on the pseudorange residual matrix and repairing the clock error.

[0386] Step S506: Detect and repair clock drift jumps based on the Doppler residual matrix.

[0387] Step S507: Calculate the clock drift jump value based on the Doppler residual matrix and repair the clock drift.

[0388] Step S508, calculating filter model verification parameter values, and verifying and repairing the robust Kalman filter.

[0389] Step S509, eliminating gross errors of satellite observation values ​​based on normal distribution test to obtain second screening observation information.

[0390] Step S510: construct a measurement update matrix based on the second filtered observation information.

[0391] Step S511, constructing a measurement variance matrix using the satellite observation random error model obtained by adaptive estimation.

[0392] Step S512: Correct the terminal motion state using the measurement update matrix and the measurement variance matrix.

[0393] Step S513, detecting the post-verification satellite observation residual and the filter correction amount.

[0394] Step S514, performing a normal distribution test on the post-validation satellite observation residuals.

[0395] Step S515: Eliminate satellite observation values ​​that fail the detection.

[0396] Step S516: filter measurement update is completed, and the terminal position and speed information of the target filter at the current moment is output.

[0397] The implementation process of the above steps S507 to S516 can be found in Figure 6 The descriptions of steps S407 to S419 in the corresponding embodiment will not be repeated here.

[0398] It should be noted that the implementation method of steps S507 to S516 in the embodiment of the present application is the same as the implementation method of the aforementioned steps S407 to S419, except that the satellite observation information used in the implementation process of steps S407 to S419 is the first screening observation information, while the satellite observation information used in the implementation process of steps S507 to S516 is the third screening observation information. For example, the clock error jump detection and repair process in the embodiment of the present application may include: when the pseudorange residual matrix in the second observation residual matrix The absolute median difference and the pseudorange residual matrix in the second observation residual matrix the median of The ratio between them is less than the first clock error detection threshold (θ m ), and the pseudorange residual matrix in the second observation residual matrix Standard Deviation and the pseudorange residual matrix in the second observation residual matrix The average When the ratio between them is less than the first clock error detection threshold, the pseudorange residual matrix in the second observation residual matrix is The ratio between the median of and the square root operation result corresponding to the diagonal element in the predicted state covariance matrix is ​​determined as the clock error detection value; if the clock error detection value is greater than or equal to the second clock error detection threshold (θ clk ), it is determined that there is a clock error jump in the target filter, and the prediction state parameters and the prediction state covariance matrix in the target filter are reset. The first observation variance matrix of the embodiment of the present application is constructed by the signal-to-noise ratio corresponding to the third filtered observation information and the altitude angle of the satellite corresponding to the third filtered observation information.

[0399] See also Fig. 9 , Fig. 9 is a schematic diagram of the overall structure of a terminal positioning method provided in an embodiment of the present application. The present application embodiment is described by taking the target filter as a robust Kalman filter as an example. Fig. 9 As shown, satellite observation information including pseudorange observation data and Doppler observation data can be obtained. At the same time, an ephemeris acquisition request can be sent to the high-precision positioning service platform of the CORS system to obtain ephemeris data from the high-precision positioning service platform. The satellite status information corresponding to the satellite (including satellite position, satellite speed, satellite clock error and satellite clock drift) can be obtained through the ephemeris data and satellite observation information. Then, the terminal status information (terminal position, terminal speed, satellite clock error and satellite clock drift) can be estimated by using the robust weighted least squares and satellite observation information, and a robust Kalman filter is established based on the estimated terminal status information, that is, the initialization of the robust Kalman filter is completed (see Figure 6 The corresponding step S402 in the embodiment).

[0400] Based on the solution information of the terminal position information obtained by robust weighted least squares estimation, the filter system noise of the robust Kalman filter can be estimated (see Figure 6 Step S403 in the corresponding embodiment), estimate the satellite observation random error model (see Figure 6 Step S404 in the corresponding embodiment) and satellite observation information gross error detection (see Figure 6 The corresponding step S405 in the embodiment, etc.

[0401] Furthermore, for the initialized robust Kalman filter, gross error detection can be performed (see Figure 8 Step S503 in the corresponding embodiment), detection and repair of clock error and clock drift jump (see the above Figure 6Steps S407 to S410 in the corresponding embodiment), filter model verification and repair (see the above Figure 6 Steps S411 to S412 in the corresponding embodiment) and filter system fault detection and repair (see the above Figure 6 The corresponding steps S413 to S418 in the embodiment and other operations finally output the terminal positioning result corresponding to the terminal (including the terminal position and terminal speed finally determined).

[0402] Among them, see Fig.10 , Fig.10 is a schematic diagram of the structure of a target filter provided in an embodiment of the present application. The present application embodiment is described by taking the target filter as a robust Kalman filter as an example. Fig.10 As shown, the robust Kalman filter includes processes such as filter initialization, adaptive estimation of pseudorange and Doppler observation random error models, adaptive estimation of dynamic filter system noise, filter time update, and filter measurement update. Among them, filter initialization can be achieved by estimating the terminal position information through weighted least squares with robustness; the pseudorange and Doppler observation random error models can be estimated by the solution information of weighted least squares with robustness when estimating the terminal state information; the dynamic filter system noise can be estimated by the historical state information generated by weighted least squares with robustness in iterative updates; the filter time update can be achieved by the dynamic filter system noise; the filter measurement update can be achieved by the filter time update and the results of the pseudorange and Doppler observation random error models and filter time update. The filter measurement update can include operations such as clock error and clock drift jump detection and repair, filter model verification and repair, filter update settlement verification and repair (also referred to as filter system fault inspection and repair), etc. The filter update settlement verification and repair can include post-verification satellite observation residual inspection and model correction quantity inspection. The above operations can refer to the above Figure 8 The corresponding embodiments will not be described in detail here.

[0403] It can be understood that in the specific implementation of this application, the positioning results of the user terminal are involved. When the above application is applied to specific products or technologies, it is necessary to obtain user permission or consent, and the application of the terminal positioning results needs to comply with the relevant laws, regulations and standards of the relevant countries and regions.

[0404] In an embodiment of the present application, the terminal state information corresponding to the terminal can be estimated by using a robust weighted least squares algorithm and satellite observation information, and a robust Kalman filter can be established through the terminal state information. Through the two processes of time update and measurement update of the robust Kalman filter, the normal distribution test is used to eliminate the gross errors of the observation information from the satellite observation information, and the terminal positioning result corresponding to the terminal is determined by the satellite observation information after eliminating the gross errors of the observation information. The accuracy of the terminal position can be improved, sub-meter or lane-level positioning can be achieved, and lane-level positioning and navigation can be assisted. The terminal positioning method implemented by the robust weighted least squares algorithm and the robust Kalman filter can be applicable to various types of satellite positioning devices (for example, consumer-grade, measurement-type or other types), and the applicability of terminal positioning can be improved.

[0405] See also Fig.11 , Fig.11 Schematic diagram of the structure of a terminal positioning device provided in an embodiment of the present application. Fig.11 As shown, the terminal positioning device 1 may include: a terminal status acquisition module 11, a filter initialization module 12, a time update module 13, an information screening module 14, and a measurement update module 15;

[0406] The terminal status acquisition module 11 is used to determine the terminal status information corresponding to the terminal through the satellite observation information, and acquire the first screening observation information from the satellite observation information according to the terminal status information;

[0407] A filter initialization module 12 is used to set the terminal state information as the initial state parameters of the target filter, and obtain the initial state covariance matrix of the target filter for the initial state parameters;

[0408] A time updating module 13 is used to perform time updating on the initial state parameters of the target filter to obtain the predicted state parameters, and to perform time updating on the initial state covariance matrix of the target filter to obtain the predicted state covariance matrix;

[0409] The verification parameter value acquisition module 14 is used to filter out the second filtered observation information used to construct the measurement update matrix of the target filter from the first filtered observation information, and construct the measurement variance matrix corresponding to the target filter according to the satellite observation error factor determined by the terminal state information;

[0410] The measurement update module 15 is used to measure and update the predicted state parameters of the target filter through the measurement update matrix, the second screening observation information, the predicted state covariance matrix and the measurement variance matrix, obtain the target state parameters, and determine the terminal positioning result corresponding to the terminal according to the target state parameters.

[0411] The specific functional implementation process of the terminal status acquisition module 11, the filter initialization module 12, the time update module 13, the information screening module 14, and the measurement update module 15 can be referred to above. Figure 3 Steps S101 to S105 in the corresponding embodiment will not be described in detail here.

[0412] In one or more embodiments, the terminal state acquisition module 11 includes: an observation equation construction unit 111, a first observation variance construction unit 112, and a state information updating unit 113;

[0413] The observation equation construction unit 111 is used to obtain the satellite observation information received by the terminal, set the initial state information for the terminal, and construct the satellite observation equation between the terminal and the satellite through the satellite observation information, the initial state information and the satellite state information corresponding to the satellite;

[0414] A first observation variance construction unit 112 is used to construct a second observation variance matrix according to the signal-to-noise ratio corresponding to the satellite observation information and the altitude angle corresponding to the satellite;

[0415] The state information updating unit 113 is used to determine the state information correction amount corresponding to the terminal according to the second observation variance matrix and the satellite observation equation, and update the initial state information by the state information correction amount to obtain the terminal state information corresponding to the terminal.

[0416] Optionally, the satellite observation information includes pseudorange observation data, the initial state information includes an initial terminal position and an initial terminal clock error, and the satellite state information includes a satellite position and a satellite clock error;

[0417] The observation equation construction unit 111 includes: a first acquisition subunit 1111, a first equation construction unit 1112;

[0418] The first acquisition subunit 1111 is used to acquire the interval distance between the initial terminal position and the satellite position, and to acquire the clock difference between the initial terminal clock difference and the satellite clock difference;

[0419] The first equation construction unit 1112 is used to determine a first estimation value between the terminal and the satellite according to the interval distance and the clock difference, and to construct a satellite observation equation between the terminal and the satellite through the first estimation value and pseudo-range observation data.

[0420] Optionally, the satellite observation information includes Doppler observation data, the initial state information includes initial terminal velocity and initial terminal clock drift, and the satellite state information includes satellite velocity and satellite clock drift;

[0421] The observation equation construction unit 111 includes: a second acquisition subunit 1113, an estimation subunit 1114, and a second equation construction subunit 1115;

[0422] The second acquisition subunit 1113 is used to obtain the speed difference between the initial terminal speed and the satellite speed, and to obtain the unit observation value between the terminal and the satellite;

[0423] The estimation subunit 1114 is used to obtain a clock drift difference between an initial terminal clock drift and a satellite clock drift, and determine a second estimated value between the terminal and the satellite according to a product of a velocity difference and a unit observation value, and the clock drift difference;

[0424] The second equation construction subunit 1115 is used to construct a satellite observation equation between the terminal and the satellite by multiplying the wavelength of the satellite broadcast signal and the Doppler observation data, as well as the second estimated value.

[0425] Optionally, the number of satellites is N, where N is a positive integer; the first observation variance construction unit 112 is specifically used for:

[0426] Determine the satellite observation errors corresponding to the N satellites respectively according to the observation error parameter, the signal-to-noise ratio of the satellite observation information corresponding to the N satellites, and the altitude angles corresponding to the N satellites respectively;

[0427] The satellite observation errors corresponding to the N satellites are used as matrix diagonal elements to construct the second observation variance matrix.

[0428] Optionally, the satellite observation information includes pseudorange observation data, the initial state information includes an initial terminal position and an initial terminal clock error, the satellite state information includes a satellite position and a satellite clock error, and the terminal state information refers to a result obtained after k iterations of the initial state information, where k is a positive integer;

[0429] The state information updating unit 113 is specifically used for:

[0430] Obtain the estimated parameters of the k-1th iteration; when k is 1, the estimated parameters of the k-1th iteration include the initial terminal position and the initial terminal clock difference, and the satellite observation equation of each iteration is constructed by the estimated parameters of the iteration;

[0431] The partial derivative of the satellite observation equation of the k-1th iteration with respect to the estimated parameters of the k-1th iteration is determined as the Jacobian matrix of the k-1th iteration, and the pseudorange residual matrix of the k-1th iteration is constructed according to the satellite observation equation of the k-1th iteration;

[0432] Obtain a state information correction amount of the k-1th iteration according to the Jacobian matrix of the k-1th iteration, the pseudorange residual matrix of the k-1th iteration, and the second observation variance matrix;

[0433] When the state information correction amount of the k-1th iteration reaches convergence, the sum of the estimated parameter of the k-1th iteration and the state information correction amount of the k-1th iteration is determined as the estimated parameter of the kth iteration;

[0434] The pseudorange residual matrix of the kth iteration is constructed according to the satellite observation equation of the kth iteration, and the product of the transposed matrix corresponding to the pseudorange residual matrix of the kth iteration, the inverse matrix corresponding to the pseudorange observation variance matrix, and the pseudorange residual matrix of the kth iteration is determined as the test statistic;

[0435] If the test statistic is less than the test threshold, the estimated parameter of the kth iteration is determined as the terminal state information corresponding to the terminal.

[0436] The specific functional implementation process of the observation equation construction unit 111, the first observation variance construction unit 112, the state information updating unit 113, and the first acquisition subunit 1111, the first equation construction unit 1112, the second acquisition subunit 1113, the estimation subunit 1114, and the second equation construction subunit 1115 included in the observation equation construction unit 111 can be referred to above. Figure 4 and Figure 5 The corresponding embodiments will not be described in detail here.

[0437] In one or more embodiments, the terminal positioning device 1 further includes: a residual covariance construction module 17, a normal distribution inspection module 18, a pseudo-range data elimination module 19, and an observation equation reconstruction module 20;

[0438] A residual covariance construction module 17 is used to construct a first residual covariance matrix according to the Jacobian matrix of the k-1th iteration and the second observation variance matrix if the test statistic is greater than or equal to the test threshold;

[0439] A normal distribution test module 18 is used to perform a normal distribution test on the pseudorange residual matrix of the kth iteration through the first residual covariance matrix to obtain a test result corresponding to each element in the pseudorange residual matrix of the kth iteration;

[0440] The pseudorange data elimination module 19 is used to determine that the i-th element fails the normal distribution test if the test result corresponding to the i-th element in the pseudorange residual matrix of the k-th iteration does not meet the test condition, and eliminate the pseudorange observation data associated with the i-th element; i is a positive integer less than or equal to the number of pseudorange observation data;

[0441] The observation equation reconstruction module 20 is used to use the remaining pseudo-range observation data after eliminating the pseudo-range observation data associated with the i-th element as satellite observation information, use the estimated parameters of the k-th iteration as initial state information, and re-execute the steps of constructing the satellite observation equation between the terminal and the satellite through the initial state information, satellite state information and satellite observation information.

[0442] The specific functional implementation process of the residual covariance construction module 17, the normal distribution test module 18, the pseudo-range data removal module 19, and the observation equation reconstruction module 20 can be found in the above Figure 4 Steps S208 to S210 in the corresponding embodiment will not be described in detail here.

[0443] In one or more embodiments, the terminal state information includes terminal position, terminal velocity, terminal clock error, and terminal clock drift, and the first filtered observation information includes pseudorange filtering data and Doppler filtering data;

[0444] The filter initialization module 12 includes: an initial state setting unit 121, a second observation variance construction unit 122, a position covariance determination unit 123, a speed covariance determination unit 124, and an initial state covariance determination unit 125;

[0445] An initial state setting unit 121, used to set the terminal position, terminal speed, terminal clock difference and terminal clock drift in the terminal state information as initial state parameters of the target filter;

[0446] The second observation variance construction unit 122 is used to construct a pseudorange observation variance matrix through the signal-to-noise ratio corresponding to the pseudorange screening data and the altitude angle of the satellite corresponding to the pseudorange screening data, and to construct a Doppler observation variance matrix through the signal-to-noise ratio corresponding to the Doppler screening data and the altitude angle of the satellite corresponding to the Doppler screening data;

[0447] A position covariance determination unit 123 is used to construct a position covariance matrix through a pseudorange observation variance matrix, a satellite observation error factor determined by a terminal position and a terminal clock error, and a Jacobian matrix determined by pseudorange screening data, a terminal position, and a terminal clock error;

[0448] The velocity covariance determination unit 124 is used to construct a velocity covariance matrix through the Doppler observation variance matrix, the satellite observation error factor determined by the terminal velocity and the terminal clock drift, and the Jacobian matrix determined by the Doppler screening data, the terminal velocity, and the terminal clock drift;

[0449] The initial state covariance determination unit 125 is used to determine the diagonal matrix composed of the position covariance matrix and the speed covariance matrix as the initial state covariance matrix corresponding to the target filter.

[0450] The specific functional implementation process of the initial state setting unit 121, the second observation variance construction unit 122, the position covariance determination unit 123, the speed covariance determination unit 124, and the initial state covariance determination unit 125 can be referred to above. Figure 6 Step S402 in the corresponding embodiment will not be described in detail here.

[0451] In one or more embodiments, the time update module 13 includes: a state parameter updating unit 131, a state covariance updating unit 132;

[0452] A state parameter updating unit 131 is used to construct a state transfer matrix of the target filter through the time difference of adjacent epochs, and to perform time update on the initial state parameters of the target filter according to the state transfer matrix to obtain predicted state parameters;

[0453] The state covariance updating unit 132 is used to obtain the filter system noise corresponding to the target filter based on the historical state information corresponding to the terminal, and to update the initial state covariance matrix of the target filter in time according to the state transfer matrix and the filter system noise to obtain the predicted state covariance matrix.

[0454] Optionally, the predicted state covariance matrix is ​​the state covariance matrix of the initial state covariance matrix in the target filter at time t, where t is a positive integer;

[0455] The state covariance updating unit 132 is specifically used for:

[0456] The noise covariance matrix is ​​constructed by filtering the system noise and the index information corresponding to the time difference of adjacent epochs;

[0457] Obtain the state covariance matrix of the target filter at time t-1; when t is 1, the state covariance matrix of the target filter at time t-1 is the initial state covariance matrix;

[0458] The product of the state transfer matrix, the state covariance matrix at time t-1, and the transposed matrix corresponding to the state transfer matrix is ​​summed with the noise covariance matrix to obtain the predicted state covariance matrix.

[0459] The specific functional implementation process of the state parameter updating unit 131 and the state covariance updating unit 132 can be referred to above. Figure 6 Step S403 in the corresponding embodiment will not be described in detail here.

[0460] In one or more embodiments, the state covariance updating unit 132 includes: a historical information acquiring subunit 1321, a speed system noise determining subunit 1322, a clock drift system noise determining subunit 1323, and a clock error system noise determining subunit 1324;

[0461] The historical information acquisition subunit 1321 is used for acquiring a historical terminal speed sequence, a historical terminal clock drift sequence, and a historical terminal clock error sequence in the historical state information corresponding to the terminal if the initial state information includes the terminal position, the terminal speed, the terminal clock error, and the terminal clock drift; the historical terminal speed sequence, the historical terminal clock drift sequence, and the historical terminal clock error sequence are all determined by a time sliding window of size p, where p is a positive integer;

[0462] The speed system noise determination subunit 1322 is used to obtain a first variance value corresponding to the historical terminal speed sequence, and determine the product of the first variance value and the time difference between adjacent epochs as the speed system noise corresponding to the target filter;

[0463] The clock drift system noise determination subunit 1323 is used to obtain a second variance value corresponding to the historical terminal clock drift sequence, and determine the product of the second variance value and the time difference between adjacent epochs as the clock drift system noise corresponding to the target filter;

[0464] The clock error system noise determination subunit 1324 is used to obtain the third-party difference corresponding to the historical terminal clock error sequence, determine the product between the third-party difference and the time difference between adjacent epochs as the clock error system noise corresponding to the target filter, and determine the velocity system noise, clock drift system noise and clock error system noise as the filter system noise corresponding to the target filter.

[0465] The specific functional implementation process of the historical information acquisition subunit 1321, the speed system noise determination subunit 1322, the clock drift system noise determination subunit 1323, and the clock error system noise determination subunit 1324 can be referred to above. Figure 6 Step S403 in the corresponding embodiment will not be described in detail here.

[0466] In one or more embodiments, the information screening module 14 includes: a verification parameter value acquisition unit 141, a verification unit 142;

[0467] A verification parameter value acquisition unit 141 is used to determine a model verification parameter value corresponding to a target filter through the first screening observation information, the predicted state covariance matrix, and the first observation variance matrix associated with the first screening observation information;

[0468] The verification unit 142 is used to filter out second filtered observation information for constructing a measurement update matrix of a target filter from the first filtered observation information through a normal distribution test when the model verification parameter value is less than a model verification threshold.

[0469] The specific function implementation process of the verification parameter value acquisition unit 141 and the verification unit 142 can be found in the above Figure 3 Step S104 in the corresponding embodiment will not be described in detail here.

[0470] In one or more embodiments, the verification parameter value acquisition unit 141 includes: a first observation residual determination subunit 1411, a gross error detection processing subunit 1412, a third observation variance determination subunit 1413, and a verification parameter value determination subunit 1414;

[0471] A first observation residual determination subunit 1411 is used to construct a first observation residual matrix through the first screening observation information, the satellite state information of the satellite corresponding to the first screening observation information, and the prediction state parameter;

[0472] A gross error detection processing subunit 1412 is used to perform gross error detection processing on the first observation residual matrix according to the quartiles and the absolute median difference of the first observation residual matrix to obtain a second observation residual matrix;

[0473] The third observation variance determination subunit 1413 is used to determine the satellite observation information included in the second observation residual matrix as the third screening observation information, and construct the first observation variance matrix through the signal-to-noise ratio corresponding to the third screening observation information and the altitude angle of the satellite corresponding to the third screening observation information;

[0474] The verification parameter value determination subunit 1414 is used to determine the model verification parameter value corresponding to the target filter through the second observation residual matrix, the predicted state covariance matrix, the Jacobian matrix of the second observation residual matrix for the predicted state parameter, and the first observation variance matrix.

[0475] The specific functional implementation process of the first observation residual determination subunit 1411, the gross error detection processing subunit 1412, the third observation variance determination subunit 1413, and the verification parameter value determination subunit 1414 can be referred to above. Figure 8 Steps S502 to S508 in the corresponding embodiment will not be described in detail here.

[0476] In one or more embodiments, the gross error detection processing subunit 1412 includes: a quantile difference acquisition subunit 14121, a minimum element value acquisition subunit 14122, a maximum element value acquisition subunit 14123, a value determination subunit to be verified 14124, and a gross error elimination subunit 14125;

[0477] The quantile difference acquisition subunit 14121 is used to obtain the quantile difference between the upper quartile of the first observation residual matrix and the lower quartile of the first observation residual matrix;

[0478] The minimum element value acquisition subunit 14122 is used to perform a subtraction operation on the lower quartile of the first observed residual matrix and the product of the first gross error detection threshold and the quantile difference to obtain the minimum element value corresponding to the first observed residual matrix;

[0479] The maximum element value acquisition subunit 14123 is used to sum the upper quartile of the first observed residual matrix and the product of the first gross error detection threshold and the quantile difference to obtain the maximum element value corresponding to the first observed residual matrix;

[0480] The subunit 14124 for determining the value to be verified is used to determine the ratio between the absolute value of the j-th element in the first observation residual matrix and the median of the first observation residual matrix after subtracting the absolute value and the absolute median difference of the first observation residual matrix as the value to be verified; j is a positive integer less than or equal to the number of the first screening observation information;

[0481] The gross error elimination subunit 14125 is used to eliminate the jth element from the first observation residual matrix to obtain the second observation residual matrix if the value to be verified is greater than the second gross error detection threshold and the jth element is in the gross error value range; the gross error value range refers to the value range outside the range corresponding to the minimum element value to the maximum element value.

[0482] The specific functional implementation process of the quantile difference acquisition subunit 14121, the minimum element value acquisition subunit 14122, the maximum element value acquisition subunit 14123, the to-be-verified value determination subunit 14124, and the gross error elimination subunit 14125 can be referred to above. Figure 8 Step S503 in the corresponding embodiment will not be described in detail here.

[0483] In one or more embodiments, the second observation residual matrix is ​​constructed by using pseudorange screening data in the satellite observation information;

[0484] The terminal positioning device 1 further includes: a clock difference detection module 20, a clock difference jump repair module 21;

[0485] A clock error detection module 20 is used to determine the ratio between the median of the second observation residual matrix and the square root operation result corresponding to the diagonal elements in the predicted state covariance matrix as the clock error detection value when the ratio between the absolute median difference of the second observation residual matrix and the median of the second observation residual matrix is ​​less than the first clock error detection threshold, and the ratio between the standard deviation of the second observation residual matrix and the average value of the second observation residual matrix is ​​less than the first clock error detection threshold;

[0486] The clock error jump repair module 21 is used to determine that there is a clock error jump in the target filter if the clock error detection value is greater than or equal to the second clock error detection threshold, and reset the prediction state parameters and the prediction state covariance matrix in the target filter.

[0487] The specific functional implementation process of the clock error detection module 20 and the clock error jump repair module 21 can be referred to above. Figure 6 Steps S407 to S408 in the corresponding embodiment will not be described in detail here.

[0488] In one or more embodiments, the verification unit 142 includes: a standardized residual acquisition subunit 1421, a first residual check subunit 1422, and an observation information screening subunit 1423;

[0489] The standardized residual acquisition subunit 1421 is used to standardize the model verification parameter to obtain a standardized residual matrix when the model verification parameter value is less than the model verification threshold value;

[0490] The first residual test subunit 1422 is used to obtain a test result corresponding to each element contained in the standardized residual matrix by performing a normal distribution test on the standardized residual matrix;

[0491] The observation information screening subunit 1423 is used to determine that the lth element has not passed the normal distribution test if the test result corresponding to the lth element in the standardized residual matrix does not meet the test conditions, and to eliminate the satellite observation information corresponding to the lth element from the first screening observation information to obtain the second screening observation information; l is a positive integer less than or equal to the number of the first screening observation information.

[0492] The specific functional implementation process of the standardized residual acquisition subunit 1421, the first residual inspection subunit 1422, and the observation information screening subunit 1423 can be referred to above. Figure 6 Step S412 in the corresponding embodiment will not be described in detail here.

[0493] Optionally, the terminal positioning device 1 further includes: a filter resetting module 22;

[0494] The filter resetting module 22 is used to reset the initial state parameters and the initial state covariance matrix of the target filter when the model verification parameter value is greater than or equal to the model verification threshold.

[0495] The specific function implementation process of the filter reset module 22 can be found in the above Figure 8 The description in the corresponding embodiment will not be repeated here.

[0496] In one or more embodiments, the target state parameter is a state parameter of a predicted state parameter in the target filter at time a, where a is a positive integer;

[0497] The measurement update module 15 includes: a measurement update matrix determination unit 151, a filter state acquisition unit 152, a filter gain determination unit 153, a target state parameter acquisition unit 154, a filter correction amount determination unit 155, a residual covariance determination unit 156, a second residual check unit 157, and a positioning result determination unit 158;

[0498] The measurement update matrix determination unit 151 is used to construct a third observation residual matrix through the second screening observation information, the predicted state parameters and the satellite state information, and determine the Jacobian matrix of the third observation residual matrix for the predicted state parameters as the measurement update matrix corresponding to the target filter;

[0499] The filter state acquisition unit 152 is used to obtain the state parameters of the target filter at the time a-1, and the state covariance matrix of the target filter at the time a-1; when i is 1, the state parameters at the time a-1 are the predicted state parameters, and the state covariance matrix at the time a-1 is the predicted state covariance matrix; the state covariance matrix at the time a-1 is the covariance matrix of the state parameters of the target filter at the time a-1;

[0500] A filter gain determination unit 153, configured to determine a filter gain of a target filter at time a-1 by using a state covariance matrix at time a-1, a measurement update matrix, and a measurement variance matrix;

[0501] The target state parameter acquisition unit 154 is used to sum the product of the filter gain at time a-1 and the third observation residual matrix with the state parameter at time a-1 to obtain the target state parameter.

[0502] A filter correction amount determination unit 155, configured to determine the product of the filter gain at time a-1 and the third observation residual matrix as the filter correction amount of the target filter at time a-1;

[0503] A residual covariance determination unit 156 is used to obtain a target covariance matrix of the target filter for the target state parameter when the filter correction amount at time a-1 passes the test, and construct a second residual covariance matrix corresponding to the target filter through the target covariance matrix, the measurement variance matrix and the measurement update matrix;

[0504] A second residual test unit 157 is used to perform a normal distribution test on the third observation residual matrix through the second residual covariance matrix to obtain a test result corresponding to each element included in the third observation residual matrix;

[0505] The positioning result determining unit 158 ​​is configured to determine the target state parameter as the terminal positioning result corresponding to the terminal if the test results corresponding to each element in the third observation residual matrix satisfy the test conditions.

[0506] Among them, the specific functional implementation process of the measurement update matrix determination unit 151, the filter state acquisition unit 152, the filter gain determination unit 153, the target state parameter acquisition unit 154, the filter correction amount determination unit 155, the residual covariance determination unit 156, the second residual check unit 157, and the positioning result determination unit 158 ​​can be referred to above Figure 6 Steps S413 to S419 in the corresponding embodiment will not be described in detail here.

[0507] In an embodiment of the present application, the terminal state information corresponding to the terminal can be estimated by using a robust weighted least squares algorithm and satellite observation information, and a robust Kalman filter can be established through the terminal state information. Through the two processes of time update and measurement update of the robust Kalman filter, the normal distribution test is used to eliminate the gross errors of the observation information from the satellite observation information, and the terminal positioning result corresponding to the terminal is determined by the satellite observation information after eliminating the gross errors of the observation information. The accuracy of the terminal position can be improved, sub-meter or lane-level positioning can be achieved, and lane-level positioning and navigation can be assisted. The terminal positioning method implemented by the robust weighted least squares algorithm and the robust Kalman filter can be applicable to various types of satellite positioning devices (for example, consumer-grade, measurement-type or other types), and the applicability of terminal positioning can be improved.

[0508] See also Fig.12 , Fig.12 Schematic diagram of the structure of a computer device provided in an embodiment of the present application. Fig.12As shown, the computer device 1000 can be a user terminal integrated with a satellite positioning device, or a server integrated with a satellite positioning device, which will not be limited here. For ease of understanding, the present application takes the computer device as a user terminal integrated with a satellite positioning device as an example. The computer device 1000 may include: a processor 1001, a network interface 1004 and a memory 1005. In addition, the above-mentioned computer device 1000 may also include: a user interface 1003, and at least one communication bus 1002. Among them, the communication bus 1002 is used to realize the connection and communication between these components. Among them, the user interface 1003 may include a display screen (Display), a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface. Optionally, the network interface 1004 may include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1005 may be a high-speed RAM memory, or it may be a non-volatile memory (non-volatile memory), such as at least one disk storage. Optionally, the memory 1005 may also be at least one storage device located away from the aforementioned processor 1001. As Fig.12 As shown, the memory 1005 as a computer-readable storage medium may include an operating system, a network communication module, a user interface module, and a device control application program.

[0509] In such Fig.12 In the computer device 1000 shown, the network interface 1004 can provide a network communication function; the user interface 1003 is mainly used to provide an input interface for the user; and the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve:

[0510] Determine terminal status information corresponding to the terminal through the satellite observation information, and obtain first screening observation information from the satellite observation information according to the terminal status information;

[0511] The terminal state information is set as the initial state parameters of the target filter, and the initial state covariance matrix of the target filter for the initial state parameters is obtained;

[0512] The initial state parameters of the target filter are updated in time to obtain the predicted state parameters, and the initial state covariance matrix of the target filter is updated in time to obtain the predicted state covariance matrix;

[0513] From the first filtered observation information, second filtered observation information for constructing a measurement update matrix of a target filter is filtered out, and a measurement variance matrix corresponding to the target filter is constructed according to a satellite observation error factor determined by the terminal state information;

[0514] The predicted state parameters of the target filter are measured and updated by measuring the update matrix, the second screening observation information, the predicted state covariance matrix and the measurement variance matrix to obtain the target state parameters, and the terminal positioning result corresponding to the terminal is determined according to the target state parameters.

[0515] It should be understood that the computer device 1000 described in the embodiment of the present application can execute the above Figure 3-Figure 6 as well as Figure 8 The description of the terminal positioning method in any corresponding embodiment can also be performed as described above. Fig.11 The description of the terminal positioning device 1 in the corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of the same method will not be repeated here either.

[0516] In addition, it should be pointed out here that: the embodiment of the present application also provides a computer-readable storage medium, and the computer-readable storage medium stores a computer program executed by the terminal positioning device 1 mentioned above, and the computer program includes program instructions. When the processor executes the program instructions, it can execute the above-mentioned Figure 3-Figure 6 as well as Figure 8 The description of the terminal positioning method in any corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of the same method will not be repeated. For technical details not disclosed in the computer-readable storage medium embodiment involved in this application, please refer to the description of the method embodiment of this application. As an example, program instructions may be deployed on a computing device for execution, or on multiple computing devices located at one location, or on multiple computing devices distributed at multiple locations and interconnected by a communication network. Multiple computing devices distributed at multiple locations and interconnected by a communication network can constitute a blockchain system.

[0517] In addition, it should be noted that: the embodiment of the present application also provides a computer program product or a computer program, which may include computer instructions, and the computer instructions may be stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor may execute the computer instructions, so that the computer device executes the above Figure 3-Figure 6 as well as Figure 8 The description of the terminal positioning method in any corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of the same method will not be repeated. For technical details not disclosed in the computer program product or computer program embodiment involved in this application, please refer to the description of the method embodiment of this application.

[0518] It should be noted that, for the above-mentioned various method embodiments, for the sake of simplicity of description, they are all expressed as a series of action combinations, but those skilled in the art should be aware that this application is not limited by the order of the actions described, because according to this application, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by this application.

[0519] The steps in the method of the embodiment of the present application can be adjusted in order, combined and deleted according to actual needs.

[0520] The modules in the device of the embodiment of the present application can be merged, divided and deleted according to actual needs.

[0521] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing related hardware through a computer program, and the computer program can be stored in a computer-readable storage medium, and when the program is executed, it can include the processes of the embodiments of the above-mentioned methods. The storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM) or a random access memory (RAM), etc.

[0522] The above disclosure is only the preferred embodiment of the present application, which certainly cannot be used to limit the scope of rights of the present application. Therefore, equivalent changes made according to the claims of the present application are still within the scope covered by the present application.

Claims

1. A terminal positioning method, characterized in that: include: Determining terminal status information corresponding to the terminal through satellite observation information, and acquiring first screening observation information from the satellite observation information according to the terminal status information; Setting the terminal state information as the initial state parameters of the target filter, and obtaining the initial state covariance matrix of the target filter for the initial state parameters; Performing time updates on the initial state parameters of the target filter to obtain predicted state parameters, and performing time updates on the initial state covariance matrix of the target filter to obtain a predicted state covariance matrix; Filtering out second filtered observation information for constructing a measurement update matrix of the target filter from the first filtered observation information, and constructing a measurement variance matrix corresponding to the target filter according to a satellite observation error factor determined by the terminal state information; The predicted state parameters of the target filter are measured and updated by using the measurement update matrix, the second screening observation information, the predicted state covariance matrix and the measurement variance matrix to obtain target state parameters, and a terminal positioning result corresponding to the terminal is determined according to the target state parameters; The step of filtering out second filtered observation information for constructing the measurement update matrix of the target filter from the first filtered observation information includes: Determining a model verification parameter value corresponding to the target filter through the first screening observation information, the predicted state covariance matrix, and a first observation variance matrix associated with the first screening observation information; When the model verification parameter value is less than the model verification threshold, second screening observation information for constructing the measurement update matrix of the target filter is screened out from the first screening observation information through a normal distribution test.

2. The method according to claim 1, characterized in that The determining of the terminal status information corresponding to the terminal through satellite observation information includes: Acquire satellite observation information received by the terminal, set initial state information for the terminal, and construct a satellite observation equation between the terminal and the satellite through the satellite observation information, the initial state information, and satellite state information corresponding to the satellite; Constructing a second observation variance matrix through the signal-to-noise ratio corresponding to the satellite observation information and the altitude angle corresponding to the satellite; According to the second observation variance matrix and the satellite observation equation, a state information correction amount corresponding to the terminal is determined, and the initial state information is updated by the state information correction amount to obtain terminal state information corresponding to the terminal.

3. The method according to claim 2, characterized in that The satellite observation information includes pseudorange observation data, the initial state information includes initial terminal position and initial terminal clock error, and the satellite state information includes satellite position and satellite clock error; The constructing a satellite observation equation between the terminal and the satellite through the initial state information, the satellite state information and the satellite observation information includes: Acquire the interval distance between the initial terminal position and the satellite position, and acquire the clock difference between the initial terminal clock difference and the satellite clock difference; A first estimated value between the terminal and the satellite is determined according to the interval distance and the clock error difference, and a satellite observation equation between the terminal and the satellite is constructed through the first estimated value and the pseudorange observation data.

4. The method according to claim 2, characterized in that: The satellite observation information includes Doppler observation data, the initial state information includes initial terminal velocity and initial terminal clock drift, and the satellite state information includes satellite velocity and satellite clock drift; The constructing a satellite observation equation between the terminal and the satellite through the initial state information, the satellite state information and the satellite observation information includes: Acquire a velocity difference between the initial terminal velocity and the satellite velocity, and acquire a unit observation value between the terminal and the satellite; Acquire a clock drift difference between the initial terminal clock drift and the satellite clock drift, and determine a second estimated value between the terminal and the satellite according to a product of the velocity difference and the unit observation value and the clock drift difference; A satellite observation equation between the terminal and the satellite is constructed by multiplying the wavelength of the satellite broadcast signal and the Doppler observation data, as well as the second estimated value.

5. The method according to claim 3, characterized in that: The terminal state information refers to the result obtained after the initial state information is iterated k times, where k is a positive integer; The determining, according to the second observation variance matrix and the satellite observation equation, a state information correction amount corresponding to the terminal, and updating the initial state information by the state information correction amount to obtain the terminal state information corresponding to the terminal, comprises: Obtaining estimated parameters of the k-1th iteration; when k is 1, the estimated parameters of the k-1th iteration include the initial terminal position and the initial terminal clock difference, and the satellite observation equation of each iteration is constructed by the estimated parameters of the iteration; Determine the partial derivative of the satellite observation equation of the k-1th iteration with respect to the estimated parameter of the k-1th iteration as the Jacobian matrix of the k-1th iteration, and construct the pseudorange residual matrix of the k-1th iteration according to the satellite observation equation of the k-1th iteration; Acquire a state information correction amount of the k-1th iteration according to the Jacobian matrix of the k-1th iteration, the pseudorange residual matrix of the k-1th iteration, and the second observation variance matrix; When the state information correction amount of the k-1th iteration reaches convergence, the sum of the estimated parameter of the k-1th iteration and the state information correction amount of the k-1th iteration is determined as the estimated parameter of the kth iteration; constructing the pseudorange residual matrix of the kth iteration according to the satellite observation equation of the kth iteration, and determining the product of the transposed matrix corresponding to the pseudorange residual matrix of the kth iteration, the inverse matrix corresponding to the pseudorange observation variance matrix, and the pseudorange residual matrix of the kth iteration as a test statistic; If the test statistic is less than a test threshold, the estimated parameter of the kth iteration is determined as the terminal state information corresponding to the terminal.

6. The method according to claim 5, characterized in that The method further comprises: If the test statistic is greater than or equal to the test threshold, constructing a first residual covariance matrix according to the Jacobian matrix of the k-1th iteration and the second observation variance matrix; Performing a normal distribution test on the pseudorange residual matrix of the k-th iteration through the first residual covariance matrix to obtain a test result corresponding to each element in the pseudorange residual matrix of the k-th iteration; If the test result corresponding to the i-th element in the pseudorange residual matrix of the k-th iteration does not meet the test condition, it is determined that the i-th element fails the normal distribution test, and the pseudorange observation data associated with the i-th element is discarded; i is a positive integer less than or equal to the number of the pseudorange observation data; The pseudorange observation data remaining after eliminating the pseudorange observation data associated with the i-th element is used as satellite observation information, the estimated parameters of the k-th iteration are used as initial state information, and the step of constructing the satellite observation equation between the terminal and the satellite through the initial state information, the satellite state information and the satellite observation information is re-executed.

7. The method according to claim 1, characterized in that The terminal status information includes terminal position, terminal speed, terminal clock error and terminal clock drift, and the first screening observation information includes pseudorange screening data and Doppler screening data; The step of setting the terminal state information as the initial state parameters of the target filter and obtaining the initial state covariance matrix of the target filter for the initial state parameters includes: The terminal position, the terminal speed, the terminal clock difference and the terminal clock drift in the terminal state information are set as initial state parameters of the target filter; A pseudorange observation variance matrix is ​​constructed by using the signal-to-noise ratio corresponding to the pseudorange screening data and the altitude angle of the satellite corresponding to the pseudorange screening data, and a Doppler observation variance matrix is ​​constructed by using the signal-to-noise ratio corresponding to the Doppler screening data and the altitude angle of the satellite corresponding to the Doppler screening data; Constructing a position covariance matrix through the pseudorange observation variance matrix, the satellite observation error factor determined by the terminal position and the terminal clock difference, and the Jacobian matrix determined by the pseudorange screening data, the terminal position, and the terminal clock difference; Constructing a velocity covariance matrix through the Doppler observation variance matrix, the satellite observation error factor determined by the terminal velocity and the terminal clock drift, and the Jacobian matrix determined by the Doppler screening data, the terminal velocity, and the terminal clock drift; A diagonal matrix formed by the position covariance matrix and the velocity covariance matrix is ​​determined as an initial state covariance matrix corresponding to the target filter.

8. The method according to claim 1, characterized in that: The step of updating the initial state parameters of the target filter in time to obtain predicted state parameters and updating the initial state covariance matrix of the target filter in time to obtain predicted state covariance matrix includes: Constructing a state transfer matrix of the target filter through the time difference of adjacent epochs, and updating the initial state parameters of the target filter in time according to the state transfer matrix to obtain predicted state parameters; Based on the historical state information corresponding to the terminal, the filter system noise corresponding to the target filter is obtained, and according to the state transfer matrix and the filter system noise, the initial state covariance matrix of the target filter is time-updated to obtain a predicted state covariance matrix.

9. The method according to claim 8, characterized in that The obtaining, based on the historical status information corresponding to the terminal, the filter system noise corresponding to the target filter comprises: If the initial state information of the terminal includes terminal position, terminal speed, terminal clock error and terminal clock drift, then obtain a historical terminal speed sequence, a historical terminal clock drift sequence and a historical terminal clock error sequence in the historical state information corresponding to the terminal; the historical terminal speed sequence, the historical terminal clock drift sequence and the historical terminal clock error sequence are all determined by a time sliding window of size p, where p is a positive integer; Acquire a first variance value corresponding to the historical terminal velocity sequence, and determine the product of the first variance value and the time difference between the adjacent epochs as the velocity system noise corresponding to the target filter; Acquire a second variance value corresponding to the historical terminal clock drift sequence, and determine the product of the second variance value and the time difference between adjacent epochs as the clock drift system noise corresponding to the target filter; Obtain a third-party difference corresponding to the historical terminal clock error sequence, determine the product of the third-party difference and the time difference of the adjacent epochs as the clock error system noise corresponding to the target filter, and determine the velocity system noise, the clock drift system noise and the clock error system noise as the filter system noise corresponding to the target filter.

10. The method according to claim 8, characterized in that The predicted state covariance matrix is ​​the state covariance matrix of the initial state covariance matrix in the target filter at time t, where t is a positive integer; The updating of the initial state covariance matrix according to the state transfer matrix and the filter system noise to obtain a predicted state covariance matrix includes: Constructing a noise covariance matrix using the filter system noise and the index information corresponding to the time difference of adjacent epochs; Obtaining the state covariance matrix of the target filter at time t-1; when t is 1, the state covariance matrix of the target filter at time t-1 is the initial state covariance matrix; The predicted state covariance matrix is ​​obtained by summing the product of the state transfer matrix, the state covariance matrix at time t-1, and the transposed matrix corresponding to the state transfer matrix with the noise covariance matrix.

11. The method according to claim 1, characterized in that The determining, by using the first screening observation information, the predicted state covariance matrix, and the first observation variance matrix associated with the first screening observation information, a model verification parameter value corresponding to the target filter comprises: constructing a first observation residual matrix through the first screening observation information, the satellite state information of the satellite corresponding to the first screening observation information, and the predicted state parameter; According to the quartiles and the absolute median difference of the first observation residual matrix, performing gross error detection processing on the first observation residual matrix to obtain a second observation residual matrix; Determine the satellite observation information included in the second observation residual matrix as third screening observation information, and construct the first observation variance matrix through the signal-to-noise ratio corresponding to the third screening observation information and the altitude angle of the satellite corresponding to the third screening observation information; The model verification parameter value corresponding to the target filter is determined by the second observation residual matrix, the predicted state covariance matrix, the Jacobian matrix of the second observation residual matrix for the predicted state parameter, and the first observation variance matrix.

12. The method according to claim 11, characterized in that The step of performing gross error detection processing on the first observation residual matrix according to the quartiles and the absolute median difference of the first observation residual matrix to obtain a second observation residual matrix includes: Obtaining a quantile difference between an upper quartile of the first observed residual matrix and a lower quartile of the first observed residual matrix; Subtracting the lower quartile of the first observation residual matrix from the product of the first gross error detection threshold and the quantile difference to obtain a minimum element value corresponding to the first observation residual matrix; Performing a sum operation on the upper quartile of the first observed residual matrix and the product of the first gross error detection threshold and the quantile difference to obtain a maximum element value corresponding to the first observed residual matrix; The ratio between the absolute value of the j-th element in the first observation residual matrix and the median of the first observation residual matrix after subtracting the absolute value and the absolute median difference of the first observation residual matrix is ​​determined as the value to be verified; j is a positive integer less than or equal to the number of the first screening observation information; If the value to be verified is greater than the second gross error detection threshold and the j-th element is in the gross error value range, the j-th element is removed from the first observation residual matrix to obtain the second observation residual matrix; the gross error value range refers to the value range outside the range corresponding to the minimum element value to the maximum element value.

13. The method according to claim 11, characterized in that The second observation residual matrix is ​​constructed by using pseudorange screening data in the satellite observation information; The method further comprises: When the ratio of the absolute median difference of the second observation residual matrix to the median of the second observation residual matrix is ​​less than the first clock error detection threshold, and the ratio of the standard deviation of the second observation residual matrix to the average value of the second observation residual matrix is ​​less than the first clock error detection threshold, the ratio of the median of the second observation residual matrix to the square root operation result corresponding to the diagonal elements in the predicted state covariance matrix is ​​determined as the clock error detection value; If the clock error detection value is greater than or equal to the second clock error detection threshold, it is determined that there is a clock error jump in the target filter, and the prediction state parameters and the prediction state covariance matrix in the target filter are reset.

14. The method according to claim 1, characterized in that When the model verification parameter value is less than the model verification threshold, filtering out second screening observation information for constructing the measurement update matrix of the target filter from the first screening observation information through a normal distribution test, comprising: When the model verification parameter value is less than the model verification threshold, the model verification parameter is standardized to obtain a standardized residual matrix; By performing a normal distribution test on the standardized residual matrix, a test result corresponding to each element included in the standardized residual matrix is ​​obtained; If the test result corresponding to the lth element in the standardized residual matrix does not meet the test conditions, it is determined that the lth element has not passed the normal distribution test, and the satellite observation information corresponding to the lth element is eliminated from the first screening observation information to obtain the second screening observation information; l is a positive integer less than or equal to the number of the first screening observation information.

15. The method according to claim 1, characterized in that The target state parameter is the state parameter of the predicted state parameter in the target filter at time a, where a is a positive integer; The step of measuring and updating the predicted state parameters of the target filter by using the measurement update matrix, the second screening observation information, the predicted state covariance matrix, and the measurement variance matrix to obtain target state parameters includes: Constructing a third observation residual matrix through the second screening observation information, the predicted state parameters and the satellite state information, and determining the Jacobian matrix of the third observation residual matrix for the predicted state parameters as the measurement update matrix corresponding to the target filter; Obtain the state parameters of the target filter at time a-1, and the state covariance matrix of the target filter at the time a-1; when i is 1, the state parameters at time a-1 are the predicted state parameters, and the state covariance matrix at time a-1 is the predicted state covariance matrix; the state covariance matrix at time a-1 is the covariance matrix of the state parameters of the target filter at time a-1; Determine the filter gain of the target filter at the a-1 time by using the state covariance matrix at the a-1 time, the measurement update matrix and the measurement variance matrix; The product of the filter gain at time a-1 and the third observation residual matrix is ​​summed with the state parameter at time a-1 to obtain the target state parameter.

16. The method according to claim 15, characterized in that The determining, according to the target state parameter, a terminal positioning result corresponding to the terminal includes: Determine the product of the filter gain at the time a-1 and the third observation residual matrix as the filter correction amount of the target filter at the time a-1; When the filter correction amount at the time a-1 passes the test, obtaining the target covariance matrix of the target filter for the target state parameter, and constructing a second residual covariance matrix corresponding to the target filter through the target covariance matrix, the measurement variance matrix and the measurement update matrix; Performing a normal distribution test on the third observation residual matrix through the second residual covariance matrix to obtain a test result corresponding to each element included in the third observation residual matrix; If the test results corresponding to each element in the third observation residual matrix meet the test conditions, the target state parameter is determined as the terminal positioning result corresponding to the terminal.

17. A terminal positioning device, characterized in that: include: A terminal status acquisition module, used to determine terminal status information corresponding to the terminal through satellite observation information, and acquire first screening observation information from the satellite observation information according to the terminal status information; A filter initialization module, used to set the terminal state information as the initial state parameters of the target filter, and obtain the initial state covariance matrix of the target filter for the initial state parameters; A time updating module, used for time updating the initial state parameters of the target filter to obtain predicted state parameters, and time updating the initial state covariance matrix of the target filter to obtain a predicted state covariance matrix; An information screening module, configured to screen out second screening observation information used to construct a measurement update matrix of the target filter from the first screening observation information, and construct a measurement variance matrix corresponding to the target filter according to a satellite observation error factor determined by the terminal state information; A measurement update module, configured to measure and update the predicted state parameters of the target filter through the measurement update matrix, the second screening observation information, the predicted state covariance matrix, and the measurement variance matrix to obtain target state parameters, and determine a terminal positioning result corresponding to the terminal according to the target state parameters; Wherein, the information screening module includes: A verification parameter value acquisition unit, used to determine a model verification parameter value corresponding to the target filter through the first screening observation information, the predicted state covariance matrix, and a first observation variance matrix associated with the first screening observation information; A verification unit is used to filter out second screening observation information for constructing a measurement update matrix of the target filter from the first screening observation information through a normal distribution test when the model verification parameter value is less than a model verification threshold.

18. A computer device, characterized in that: including memory and processor; The memory is connected to the processor, the memory is used to store a computer program, and the processor is used to call the computer program so that the computer device executes the method according to any one of claims 1 to 16.

19. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and the computer program is suitable for being loaded and executed by a processor, so that a computer device having the processor executes the method according to any one of claims 1 to 16.

20. A computer program product, characterized in that The computer program product comprises computer instructions, which are stored in a computer-readable storage medium. The computer instructions are suitable for being read and executed by a processor, so that a computer device having the processor executes the method according to any one of claims 1 to 16.

Citation Information

Patent Citations

  • GEO satellite real-time orbit determination method based on satellite-borne GNSS

    CN108120994A

  • Positioning method and system based on Kalman filtering, equipment and storage medium

    CN109883423A

  • Terminal positioning precision evaluation method and device, equipment and medium

    CN112327340A