Mobile terminal positioning method, device, computer readable medium and computer equipment

By receiving Doppler observation data from multiple frequency points of multiple satellite systems on a mobile terminal and performing calculations, and by combining weighted least squares method and clock error rate of change to optimize parameters, the problem of poor robustness of the Doppler velocity measurement scheme is solved, and the positioning accuracy and adaptability are improved.

CN122110168APending Publication Date: 2026-05-29TENCENT TECHNOLOGY (SHENZHEN) CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
TENCENT TECHNOLOGY (SHENZHEN) CO LTD
Filing Date
2024-11-29
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

Existing Doppler velocity measurement schemes have poor robustness, which affects the positioning accuracy of mobile terminals.

Method used

The system receives Doppler observation data from multiple satellite systems at multiple frequencies via a mobile terminal and performs the first solution processing. If this fails, it switches to the second solution processing at a specified frequency, using the weighted least squares method for iterative solution, and combining the clock error rate of change to optimize parameters to generate the Doppler observation equation matrix.

Benefits of technology

It improves the robustness and accuracy of mobile terminal positioning, and enhances adaptability and robustness in cases where Doppler observation data is unavailable or the solution fails.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122110168A_ABST
    Figure CN122110168A_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a mobile terminal positioning method, device, computer readable medium and computer equipment. The mobile terminal positioning method comprises: performing first solving processing on a plurality of Doppler observation equation matrices corresponding to a plurality of frequency points according to first Doppler observation data received by a mobile terminal from the plurality of frequency points, the plurality of frequency points comprising frequency points of at least one satellite system, the frequency points of the at least one satellite system comprising at least two frequency points of a same satellite system; if the first solving processing fails, performing second solving processing on a Doppler observation equation matrix corresponding to a specified frequency point according to second Doppler observation data received by the mobile terminal from the specified frequency point, the specified frequency point comprising one frequency point of each of at least two satellite systems; and obtaining a positioning result of the mobile terminal according to a successfully solved result. The technical solution of the embodiments of the present application can improve the robustness and accuracy of mobile terminal positioning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the fields of computer and communication technology, and more specifically, to a mobile terminal positioning method, apparatus, computer-readable medium, and computer equipment. Background Technology

[0002] Global Navigation Satellite System (GNSS) is a space-based radio navigation and positioning system that provides mobile terminals with all-weather three-dimensional coordinates, velocity, and time information on the Earth's surface or in near-Earth space. It has been widely used in various fields such as navigation, communication, surveying, vehicle navigation, and information services. Doppler velocimetry, as an important method of GNSS velocimetry, primarily obtains the relative velocity between the satellite and the receiver by measuring the frequency changes of the satellite signal received by the mobile terminal's receiver, and has significant application value. However, the Doppler velocimetry schemes proposed in related technologies suffer from poor robustness, affecting the positioning accuracy of mobile terminals. Summary of the Invention

[0003] The embodiments of this application provide a mobile terminal positioning method, apparatus, computer-readable medium, and computer device, which can improve the robustness and accuracy of mobile terminal positioning.

[0004] Other features and advantages of this application will become apparent from the following detailed description, or may be learned in part by practice of this application.

[0005] According to one aspect of the embodiments of this application, a mobile terminal positioning method is provided, comprising: performing a first solution process on the Doppler observation equation matrix corresponding to the multiple frequency points based on first Doppler observation data received by the mobile terminal from multiple frequency points, wherein the multiple frequency points include frequency points of at least one satellite system, and the frequency points of the at least one satellite system include at least two frequency points of the same satellite system; if the first solution process fails, performing a second solution process on the Doppler observation equation matrix corresponding to the specified frequency point based on second Doppler observation data received by the mobile terminal from a specified frequency point, wherein the specified frequency point includes one frequency point of each of at least two satellite systems; and obtaining the positioning result of the mobile terminal based on the successful solution result.

[0006] According to one aspect of the embodiments of this application, a mobile terminal positioning device is provided, comprising: a first calculation unit configured to perform a first calculation process on the Doppler observation equation matrix corresponding to the multiple frequency points based on the first Doppler observation data received by the mobile terminal from multiple frequency points, wherein the multiple frequency points include frequency points of at least one satellite system, and the frequency points of the at least one satellite system include at least two frequency points of the same satellite system; a second calculation unit configured to perform a second calculation process on the Doppler observation equation matrix corresponding to the specified frequency point based on the second Doppler observation data received by the mobile terminal from the specified frequency point, wherein the specified frequency point includes one frequency point of each of at least two satellite systems; and a processing unit configured to obtain the positioning result of the mobile terminal based on the successful calculation result.

[0007] In some embodiments of this application, based on the foregoing scheme, the first solution unit is configured to: generate a first weight matrix of Doppler observation data according to the accuracy of the first Doppler observation data received by the mobile terminal from the multiple frequency points; and perform a first solution process on the Doppler observation equation matrix corresponding to the multiple frequency points based on the first weight matrix and the first Doppler observation data.

[0008] In some embodiments of this application, based on the aforementioned scheme, the first solution unit is configured to: iteratively solve the Doppler observation equation matrix corresponding to the plurality of frequency points using the weighted least squares method based on the first weight matrix and the first Doppler observation data; when the number of iterative solutions to the Doppler observation equation matrix corresponding to the plurality of frequency points reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is greater than or equal to a difference threshold, then the first solution process is determined to have failed.

[0009] In some embodiments of this application, based on the foregoing scheme, the mobile terminal positioning device further includes: a detection unit configured to, when the number of iterative solutions to the Doppler observation equation matrices corresponding to the plurality of frequency points reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is less than the difference threshold, then perform validity detection on the first Doppler observation data; if the validity detection passes, then determine that the first solution process is successful; if the validity detection fails, then determine that the first solution process fails.

[0010] In some embodiments of this application, based on the foregoing scheme, the detection unit is configured to: acquire the first observation residual data corresponding to the first Doppler observation data, and the second observation residual data corresponding to the Doppler observation data received by the mobile terminal from the specified frequency point; and perform validity detection on the first Doppler observation data according to the relationship between the first observation residual data and the second observation residual data.

[0011] In some embodiments of this application, based on the aforementioned scheme, the first observation residual data includes a first observation residual vector and a first observation residual quantity, and the second observation residual data includes a second observation residual vector and a second observation residual quantity; the detection unit is configured to: calculate the sum of squares of the corresponding first observation residuals based on the first observation residual vector, and calculate the corresponding first observation degree of freedom based on the first observation residual quantity; calculate the sum of squares of the corresponding second observation residuals based on the second observation residual vector, and calculate the corresponding second observation degree of freedom based on the second observation residual quantity; if the first ratio between the sum of squares of the first observation residuals and the first observation degree of freedom is greater than a set first threshold, and at least one of the following conditions is met, then the validity detection is determined to have failed:

[0012] The second ratio between the sum of squares of the second observation residuals and the second observation degrees of freedom is less than the product of the first ratio and the set second threshold; and the second ratio is less than the product of the first ratio and the set third threshold, and the number of the second observation residuals is greater than the product of the number of the first observation residuals and the set fourth threshold.

[0013] The second threshold, the third threshold, and the fourth threshold are all greater than 0 and less than 1.

[0014] In some embodiments of this application, based on the foregoing scheme, the detection unit is configured to: if the first ratio is less than or equal to the first threshold, then determine that the validity detection of the first Doppler observation data has passed.

[0015] In some embodiments of this application, based on the foregoing scheme, the second solution unit is configured to: generate a weight matrix of Doppler observation data according to the accuracy of the second Doppler observation data received by the mobile terminal from the specified frequency point; and perform a second solution process on the Doppler observation equation matrix corresponding to the specified frequency point based on the second weight matrix and the second Doppler observation data.

[0016] In some embodiments of this application, based on the foregoing scheme, the second solution unit is configured to: iteratively solve the Doppler observation equation matrix corresponding to the specified frequency point using the weighted least squares method based on the second weight matrix and the second Doppler observation data; when the number of iterative solutions to the Doppler observation equation matrix corresponding to the specified frequency point reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is less than a difference threshold, then the second solution process is determined to be successful; and if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is greater than or equal to the difference threshold, then the second solution process is determined to be unsuccessful.

[0017] In some embodiments of this application, based on the foregoing scheme, the mobile terminal positioning device further includes: a generation unit configured to use the clock difference rate of the mobile terminal as an optimization parameter to establish Doppler observation equations corresponding to different frequency points in the satellite system; and to generate a Doppler observation equation matrix corresponding to the multiple frequency points according to the Doppler observation equations corresponding to the multiple frequency points respectively.

[0018] In some embodiments of this application, based on the foregoing scheme, the designated frequency point includes the first frequency point in each satellite system; the generation unit is further configured to generate the Doppler observation equation matrix corresponding to the designated frequency point according to the Doppler observation equation corresponding to the first frequency point of each of the multiple satellite systems.

[0019] According to one aspect of the embodiments of this application, a computer-readable medium is provided having a computer program stored thereon, which, when executed by a processor, implements the mobile terminal positioning method as described in the above embodiments.

[0020] According to one aspect of the embodiments of this application, a computer device is provided, including: one or more processors; and a storage device for storing one or more computer programs, wherein when the one or more computer programs are executed by the one or more processors, the computer device enables the mobile terminal positioning method as described in the above embodiments.

[0021] According to one aspect of the embodiments of this application, a computer program product is provided, comprising a computer program stored in a computer-readable storage medium. A processor of a computer device reads from the computer-readable storage medium and executes the computer program, causing the computer device to perform the mobile terminal positioning method provided in the various alternative embodiments described above.

[0022] In some embodiments of this application, the technical solutions firstly perform a first solution process on the Doppler observation equation matrix corresponding to multiple frequency points based on first Doppler observation data received by the mobile terminal from multiple frequency points. These multiple frequency points include frequency points of at least one satellite system, and the frequency points of the at least one satellite system include at least two frequency points from the same satellite system. Secondly, if the first solution process fails, a second solution process is performed on the Doppler observation equation matrix corresponding to the specified frequency point based on second Doppler observation data received by the mobile terminal from a specified frequency point. This specified frequency point includes one frequency point from each of at least two satellite systems. The positioning result of the mobile terminal is obtained based on the successful solution. Therefore, the technical solutions of this application can fully utilize Doppler observation data received by the mobile terminal from multiple frequency points within the same satellite system for positioning solution processing, thereby fully utilizing the complementarity between different frequency point data from the same satellite system and improving the robustness and accuracy of mobile terminal positioning. When the first solution fails, a second solution can be performed using Doppler observation data from a designated frequency point selected from each satellite system. This method can still perform positioning solution using Doppler observation data from a representative frequency point (such as the first frequency point) of each satellite system even when data from multiple frequency points in the same satellite system is unavailable or the solution fails, thus improving the adaptability and robustness of mobile terminal positioning processing.

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

[0024] Figure 1 A schematic diagram of an exemplary system architecture to which the technical solutions of the embodiments of this application can be applied is shown;

[0025] Figure 2 A flowchart of a mobile terminal positioning method according to an embodiment of this application is shown;

[0026] Figure 3 A flowchart of a mobile terminal positioning method according to an embodiment of this application is shown;

[0027] Figure 4 A flowchart of a mobile terminal positioning method according to an embodiment of this application is shown;

[0028] Figure 5 The diagram shows a comparison of the speed and trajectory effects before and after adopting the technical solution of this application embodiment;

[0029] Figure 6 A block diagram of a mobile terminal positioning device according to an embodiment of this application is shown;

[0030] Figure 7 A schematic diagram of the structure of a computer system suitable for implementing the computer device of the present application is shown. Detailed Implementation

[0031] Exemplary embodiments will now be described in a more comprehensive manner with reference to the accompanying drawings. However, the exemplary embodiments can be implemented in various forms and should not be construed as limited to these examples; rather, these embodiments are provided so that this application will be more comprehensive and complete, and will fully convey the concept of the exemplary embodiments to those skilled in the art.

[0032] Furthermore, the features, structures, or characteristics described in this application can be combined in any suitable manner in one or more embodiments. Numerous specific details are provided in the following description to provide a full understanding of the embodiments of this application. However, those skilled in the art will recognize that when implementing the technical solutions of this application, not all the detailed features in the embodiments may be used, one or more specific details may be omitted, or other methods, elements, devices, steps, etc., may be employed.

[0033] In this application embodiment, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit.

[0034] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.

[0035] The flowcharts shown in the accompanying drawings are merely illustrative and do not necessarily include all content and operations / steps, nor do they necessarily have to be performed in the described order. For example, some operations / steps can be broken down, while others can be combined or partially combined; therefore, the actual execution order may change depending on the specific circumstances.

[0036] It should be noted that "multiple" in this article refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.

[0037] It is understood that this application may display a prompt interface or pop-up window before and during the collection of relevant data (such as Doppler observation data obtained by a mobile terminal). This prompt interface or pop-up window is used to inform the user that relevant data is being collected. This ensures that the application only begins executing the relevant data acquisition steps after receiving confirmation from the user regarding the prompt interface or pop-up window; otherwise (i.e., without user confirmation), the relevant data acquisition steps are terminated, and no relevant data is acquired. In other words, all data collected in this application is collected with the user's consent and authorization, and the collection, use, and processing of relevant data must comply with the relevant laws, regulations, and standards of the relevant countries and regions.

[0038] Before introducing the specific solutions of this application, for ease of understanding, the terms involved in the embodiments of this application are explained below:

[0039] Doppler observation data: Doppler measurements or Doppler counts of radio signals transmitted by satellites, determined by a satellite signal receiver.

[0040] Clock bias: In this application, it mainly refers to the time difference between the GNSS clock of the mobile terminal and the reference time. In the GNSS positioning process, the clock bias of the mobile terminal receiver is usually corrected by observing the signals of multiple satellites in order to achieve positioning.

[0041] Clock drift: This mainly refers to the rate of change of clock bias, or the drift speed of clock bias. It reflects the stability of the clock over a certain period of time. In GNSS positioning, the accumulation of clock drift over time will affect the clock bias. In the embodiments of this application, clock drift specifically involves the clock drift of the mobile terminal and the satellite clock drift. The clock drift of the mobile terminal refers to the rate of change of clock bias of the satellite signal receiver, and the satellite clock drift refers to the rate of change of satellite clock bias.

[0042] Weighted Least Squares (WLS) is a mathematical optimization method used to solve systems of linear or nonlinear equations containing noise and uncertainty. Compared to ordinary least squares, WLS assigns a weight to each observation during the solution process to represent its reliability or accuracy. Observations with larger weights have a higher influence on the solution process, while those with smaller weights have a lower influence. WLS is widely used in surveying, data fitting, and statistical analysis. In GNSS positioning, WLS can be used to process combinations of multiple satellite signals to improve positioning accuracy and reliability.

[0043] The design concept of the embodiments of this application is explained below:

[0044] With the rapid development of Global Navigation Satellite System (GNSS) technology, mobile terminals (such as smartphones) are now capable of high-precision positioning and velocity measurement. GNSS includes the Global Positioning System (GPS), BeiDou Navigation Satellite System (BDS), GLONASS, Galileo Navigation Satellite System (GALILEO), and Quasi-Zenith Satellite System (QZSS). Doppler velocimetry, an important method for GNSS velocity measurement, primarily obtains the relative velocity between the satellite and the receiver by measuring the frequency change of the satellite signal received by the receiver. Due to the Doppler effect, when there is relative motion between the satellite and the receiver, the frequency of the signal received by the receiver will shift. This frequency shift is proportional to the relative velocity between the satellite and the receiver. Therefore, by comparing the original signal frequency with the received signal frequency, the relative velocity between the satellite and the receiver can be calculated. In other words, Doppler velocimetry can be used to estimate the receiver's velocity and direction.

[0045] However, when using mobile terminals for Doppler velocity measurement and positioning, the clock drift of mobile terminals at different frequencies of various satellite systems may not be completely consistent. Therefore, when using a single clock drift parameter for positioning, related technologies typically employ single-frequency Doppler observations, meaning that only one frequency's Doppler observation data is used for a single satellite system. This can easily lead to unstable velocity measurement, thus affecting the accuracy and stability of positioning. Based on the above technical problems, this application proposes a new positioning scheme for mobile terminals that can improve the robustness and accuracy of velocity measurement and positioning.

[0046] Specifically, such as Figure 1 As shown, in one application scenario of this application embodiment, it may include a mobile terminal 110, a reference station 120, a GNSS 130, and a server 140.

[0047] In the embodiments of this application, the mobile terminal 110 has an application that supports location services, such as a navigation application, installed and running on it. To support location services, the mobile terminal 110 is equipped with a satellite positioning device, which enables it to communicate with the GNSS 130 to obtain observation data (such as Doppler observation data, carrier phase observation data, and pseudorange observation data). The server 140 is the backend server corresponding to the location service application.

[0048] Optionally, reference station 120 can be a Continuously Operating Reference System (CORS). The CORS system is a product of the comprehensive and in-depth integration of advanced technologies such as satellite positioning, computer network, and digital communication. The CORS system consists of a network of reference stations, a data processing center, a data transmission system, a positioning and navigation data broadcasting system, and a user application system. Each reference station and the detection and analysis center are connected via the data transmission system to form a dedicated network. Reference station 120 can communicate with GNSS 130 to obtain raw observation data corresponding to each satellite system in GNSS 130. Simultaneously, reference station 120 can also communicate with server 140, transmitting the received raw observation data to server 140. Server 140 uses this raw observation data to calculate the observation data between mobile terminal 110 and the satellites in real time and sends it to mobile terminal 110.

[0049] In some embodiments of this application, the mobile terminal 110 can obtain observation data between the mobile terminal and various satellites through a satellite positioning device, and estimate parameters such as the position and speed of the mobile terminal through these observation data.

[0050] In some embodiments of this application, server 140 can communicate with mobile terminal 110, and server 140 can provide positioning-related computing services (such as differential service broadcasting, location reporting, etc.) to mobile terminal 110. In some embodiments, server 140 can achieve centimeter-level positioning accuracy, so server 140 can also be referred to as a high-precision positioning server platform.

[0051] It should be noted that, Figure 1 The server 140 shown can be a single physical server, a server cluster or distributed system consisting of at least two physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms. The mobile terminal 110 can be a smartphone, smart speaker, speaker with a screen, smartwatch, in-vehicle terminal, aircraft, etc., but is not limited to these.

[0052] Optionally, the mobile terminal 110 and the server 140 can communicate via a communication network, which can be a wired network or a wireless network. Meanwhile, Figure 1 The mobile terminal 110, reference station 120, GNSS 130 and server 140 shown are merely examples. Other existing or future mobile terminals, reference stations, satellite constellations or servers that are applicable to this application should also be included within the scope of protection of this application, and are hereby incorporated by reference.

[0053] It should be noted that the mobile terminal positioning method in the various embodiments of this application can be executed by an electronic device, which can be the mobile terminal 110 or the server 140. That is, the mobile terminal positioning method in the embodiments of this application can be executed by the mobile terminal 110 or the server 140 alone, or it can be executed by the mobile terminal 110 and the server 140 together.

[0054] Optionally, if the mobile terminal positioning method in this embodiment is executed by the mobile terminal 110, the mobile terminal 110 can receive Doppler observation data from multiple satellite systems in the GNSS 130. For example, the mobile terminal 110 can receive first Doppler observation data from multiple frequency points of at least one satellite system. These multiple frequency points may include the frequency points of at least one satellite system, and these frequency points of at least one satellite system include at least two frequency points of the same satellite system. Then, the mobile terminal 110 can perform a first solution process on the Doppler observation equation matrix corresponding to these multiple frequency points based on the first Doppler observation data received from these multiple frequency points. That is, in addition to using the Doppler observation data received from at least one satellite system, the mobile terminal 110 can also perform positioning solution processing based on the Doppler observation data received from multiple frequency points of the same satellite system. This allows full utilization of the complementarity between different frequency point data of the same satellite system, improving the robustness and accuracy of the mobile terminal 110's positioning.

[0055] If the first calculation is successful, the mobile terminal 110 can obtain its positioning result (such as clock drift and velocity) based on the calculation result. If the first calculation fails, the mobile terminal 110 can perform a second calculation using Doppler observation data from a specified frequency point selected from each of at least two satellite systems. This method allows for positioning calculation even when data from multiple frequencies within the same satellite system is unavailable or the calculation fails, improving the adaptability and robustness of the mobile terminal's positioning processing.

[0056] Optionally, if the mobile terminal positioning method in this embodiment is executed by server 140, server 140 can obtain Doppler observation data received by mobile terminal 110 from multiple satellite systems in GNSS 130, and then perform positioning calculation processing on mobile terminal 110 based on the received Doppler observation data (the specific process is similar to the processing method performed by mobile terminal 110). After server 140 obtains the positioning result of mobile terminal 110 through calculation processing, it can send the positioning result of mobile terminal 110 to mobile terminal 110 through the network, so that mobile terminal 110 can perform corresponding processing based on the positioning result, such as displaying the positioning result of mobile terminal on the navigation interface.

[0057] It should be noted that the technical solutions of this application embodiment can be applied to various scenarios, including but not limited to cloud technology, artificial intelligence, smart transportation, assisted driving, map navigation and other scenarios.

[0058] The implementation details of the technical solutions in the embodiments of this application are described in detail below:

[0059] Figure 2 A flowchart illustrating a mobile terminal positioning method according to an embodiment of this application is shown. This mobile terminal positioning method can be performed by an electronic device, which can be a mobile terminal, a server, or other device. (Refer to...) Figure 2 As shown, this mobile terminal positioning method includes at least steps S210 to S230, which are described in detail below:

[0060] In S210, based on the first Doppler observation data received by the mobile terminal from multiple frequency points, a first solution process is performed on the Doppler observation equation matrix corresponding to the multiple frequency points. The multiple frequency points include the frequency points of at least one satellite system, and the frequency points of the at least one satellite system include at least two frequency points of the same satellite system.

[0061] In some optional embodiments, the multiple frequency points in S210 may be frequency points in at least one satellite system, and may include at least two frequency points in each satellite system, or may include at least two frequency points in a certain satellite system, or may include at least two frequency points in some satellite systems, etc.

[0062] For example, if multiple frequency points in S210 originate from a single satellite system, then these multiple frequency points are at least two frequency points within that satellite system. If multiple frequency points in S210 originate from multiple satellite systems, assuming these multiple satellite systems could be GPS, BDS, GLONASS, GALILEO, and QZSS, then these multiple frequency points could include at least two frequency points from the GPS system, at least two frequency points from the BDS system, at least two frequency points from the GLONASS system, at least two frequency points from the GALILEO system, and at least two frequency points from the QZSS system. Alternatively, these multiple frequency points could include at least two frequency points from some of these satellite systems, as well as one frequency point from other satellite systems. For example, they could include at least two frequency points from the GPS system, at least two frequency points from the BDS system, at least two frequency points from the GLONASS system, one frequency point from the GALILEO system, and one frequency point from the QZSS system. Alternatively, these multiple frequency points may include frequency points from some of the satellite systems in these satellite systems, but not frequency points from other satellite systems. For example, they may include at least two frequency points from the GPS system, at least two frequency points from the BDS system, one frequency point from the GLONASS system, and so on.

[0063] In some optional embodiments, the clock bias rate of the mobile terminal can be used as an optimization parameter to establish the Doppler observation equations corresponding to different frequency points in the satellite system. Optionally, the Doppler observation equations in this embodiment can be as follows:

[0064]

[0065] Wherein, the superscript 's' represents the satellite system; the subscript 'r' represents the mobile terminal; and the subscript 'f' represents the frequency point. Indicates the clock drift of satellite s; λ represents the clock drift of mobile terminal r; f This indicates the wavelength corresponding to frequency point f; This represents the Doppler observation value received by the mobile terminal r at frequency point f in the satellite system s; c represents the speed of light; ε represents random error; This represents the rate of change of the satellite-to-ground distance between the satellite system s and the mobile terminal r. It should be noted that the satellite-to-ground distance refers to the distance between the satellite and the Earth's surface, also known as satellite altitude. In this Doppler observation equation, the clock drift of the mobile terminal is the rate of change of the mobile terminal's clock bias, which can be treated as an unknown optimization parameter.

[0066] Optionally, after establishing the Doppler observation equations corresponding to different frequency points in the satellite system, a Doppler observation equation matrix corresponding to these multiple frequency points can be generated based on the Doppler observation equations corresponding to these multiple frequency points in S210. For example, the Doppler observation equations corresponding to these multiple frequency points can be integrated to obtain a single Doppler observation equation matrix.

[0067] In some optional embodiments, when performing the first solution processing on the Doppler observation equation matrix corresponding to these multiple frequency points, a first weight matrix of the Doppler observation data can be generated based on the accuracy of the first Doppler observation data received by the mobile terminal from multiple frequency points. Then, based on the first weight matrix and the first Doppler observation data received by the mobile terminal from multiple frequency points, the first solution processing on the Doppler observation equation matrix corresponding to the multiple frequency points can be performed.

[0068] Optionally, the precision of Doppler observation data is used to represent the reliability of Doppler observation data. That is, the higher the reliability of Doppler observation data, the higher its precision, the greater its corresponding weight, and the smaller the corresponding error.

[0069] In some alternative embodiments, the accuracy of Doppler observation data (such as the first Doppler observation data in the above embodiments) can be determined based on an elevation angle model. Specifically, the elevation angle model can represent the accuracy or error characteristics of satellite observations using a function related to the elevation angle. In satellite navigation and positioning, the errors experienced by observations vary depending on the satellite elevation angle. Satellite signals with higher elevation angles are less affected by atmospheric delay and noise than those with lower elevation angles. Therefore, satellite elevation angles can be used to establish a stochastic model of the observations, such as using trigonometric functions (e.g., sine, cosine, etc.) to describe the relationship between the accuracy or error of the observations and the satellite elevation angle, thereby determining the accuracy of the Doppler observation data.

[0070] In some alternative embodiments, the accuracy of Doppler observation data (such as the first Doppler observation data in the above embodiments) can be determined based on a signal-to-noise ratio (SNR) model. Specifically, the signal-to-noise ratio (SNR) is the ratio of the receiver's carrier phase signal strength to the observation noise, and is related to factors such as signal strength, signal propagation errors, multipath effects, and receiver antenna. SNR measures the quality of observation data and reflects its accuracy to a certain extent; generally, a higher SNR indicates higher accuracy.

[0071] In some alternative embodiments, the accuracy of Doppler observation data (such as the first Doppler observation data in the above embodiments) can be determined based on an elevation angle-signal-noise ratio (SNR) model. The elevation angle-SNR model is a composite model that combines an elevation angle model and a signal-noise ratio (SNR) model to describe the accuracy or error characteristics of satellite observations. This allows for a more comprehensive description of the accuracy or error characteristics of satellite observations by incorporating both elevation angle and SNR factors. Specifically, an elevation angle-SNR model can be established based on the satellite's elevation angle and SNR information. This model can be a function that integrates the effects of elevation angle and SNR to evaluate the accuracy of observation data. The established elevation angle-SNR model can then be used to evaluate the accuracy of Doppler observation data.

[0072] Optionally, when generating the first weight matrix of Doppler observation data based on the accuracy of the first Doppler observation data received by the mobile terminal from multiple frequency points, after determining the accuracy of the Doppler observation data at each frequency point, a weight can be assigned to the Doppler observation data at each frequency point according to the accuracy. The selection of the weight reflects the reliability or accuracy of the Doppler observation data and is usually inversely proportional to the variance of the error. Thus, the first weight matrix can be obtained based on the weight of the Doppler observation data at each frequency point.

[0073] In some optional embodiments, when performing the first solution process on the Doppler observation equation matrix corresponding to the above-mentioned multiple frequency points, the weighted least squares method can be used to iteratively solve the Doppler observation equation matrix corresponding to the multiple frequency points based on the first weight matrix determined in the above embodiments and the first Doppler observation data received by the mobile terminal from the multiple frequency points.

[0074] Optionally, in the process of iteratively solving the Doppler observation equation matrix corresponding to multiple frequency points using the weighted least squares method, the weight matrix is ​​typically updated using the currently estimated unknown parameter vector (in this embodiment, for example, the clock drift of the mobile terminal) during the current iteration. Then, based on the first weight matrix and the observation residual equation, the weighted least squares problem is solved to obtain a new estimate of the unknown parameter vector. This iterative process is then repeated until the convergence condition is met (e.g., the change in the unknown parameter vector is less than a preset threshold) or the maximum number of iterations is reached.

[0075] It should be noted that the observation residual equation is derived from the Doppler observation equation. For example, for the Doppler observation equation shown in the example above, the observation residual equation can be obtained by subtracting the term on the right side of the equation from the term on the left side of the equation. That is, the observation residual equation V can be expressed as:

[0076]

[0077] In some optional embodiments, when the number of iterative solutions to the Doppler observation equation matrices corresponding to multiple frequency points reaches a set number, if the difference between the solution result of the current iteration and the solution result of the previous iteration is greater than or equal to a difference threshold, it indicates that the iterative process of the first solution process has not converged within the set number of iterations. In this case, it can be determined that the first solution process has failed. Optionally, the set number of iterations can be set according to actual needs, such as 5 times, 10 times, etc.

[0078] In some optional embodiments, when the number of iterative solutions to the Doppler observation equation matrices corresponding to multiple frequency points reaches a set number, if the difference between the solution result of the current iteration and the solution result of the previous iteration is less than a difference threshold, it indicates that the iterative process of the first solution processing has converged within the set number of iterations. This convergence judgment mechanism ensures the effectiveness and efficiency of the iterative process, avoids unnecessary iterative calculations, and thus saves computational resources. After determining convergence, to avoid the problem of unstable solution results due to large differences between the Doppler observation data of multiple frequency points when using Doppler observation data for solution processing, the validity of the first Doppler observation data received by the mobile terminal from multiple frequency points can be further checked; if the validity check passes, the first solution processing can be determined to be successful; if the validity check fails, the first solution processing can be determined to be unsuccessful.

[0079] In some optional embodiments, the process of validating the first Doppler observation data received by the mobile terminal from multiple frequency points may specifically involve obtaining the first observation residual data corresponding to the first Doppler observation data received by the mobile terminal from multiple frequency points, and the second observation residual data corresponding to the second Doppler observation data received by the mobile terminal from a specified frequency point (the specified frequency point includes one frequency point of each of at least two satellite systems); and then validating the first Doppler observation data received by the mobile terminal from multiple frequency points based on the relationship between the first observation residual data and the second observation residual data.

[0080] It should be noted that the first observation residual data may include the observation residual vector and the number of observation residuals corresponding to the first Doppler observation data received by the mobile terminal from multiple frequency points; similarly, the second observation residual data may include the observation residual vector and the number of observation residuals corresponding to the second Doppler observation data received by the mobile terminal from a specified frequency point. In the above embodiments, by using the relationship between the first and second observation residual data to perform validity checks on the first Doppler observation data received by the mobile terminal from multiple frequency points, the second observation residual data can be used as a basis for comparison to check the first Doppler observation data received by the mobile terminal from multiple frequency points. This avoids the instability of the calculation results caused by using Doppler observation data from multiple frequency points of the same satellite system for processing, thereby ensuring the accuracy and stability of the positioning processing of the mobile terminal.

[0081] In some optional embodiments, the first observation residual data includes a first observation residual vector and a first observation residual count, and the second observation residual data includes a second observation residual vector and a second observation residual count. To perform validity detection on the first Doppler observation data received by the mobile terminal from multiple frequency points, the sum of squares of the corresponding first observation residuals can be calculated based on the first observation residual vector, and the corresponding first observation degrees of freedom can be calculated based on the first observation residual count; simultaneously, the sum of squares of the corresponding second observation residuals can be calculated based on the second observation residual vector, and the corresponding second observation degrees of freedom can be calculated based on the second observation residual count.

[0082] Specifically, the sum of squares of the residuals of the first observation is the sum of squares of the residual vectors of the first observation multiplied by their transposes. In other words, multiplying the residual vectors of the first observation by their transposes yields the sum of squares of the residuals of the first observation. Similarly, the sum of squares of the residuals of the second observation is the sum of squares of the residual vectors of the second observations multiplied by their transposes.

[0083] Optionally, when calculating the corresponding first observation degree of freedom based on the number of first observation residuals, the first observation degree of freedom can be obtained by subtracting a set value from the number of first observation residuals. In the embodiments of this application, since the purpose of the calculation is to obtain the positioning result of the mobile terminal, the positioning result may include four state variables: the three-dimensional velocity of the mobile terminal and clock drift. Therefore, the first observation degree of freedom can be obtained by subtracting 4 from the number of first observation residuals. Optionally, if the positioning result only includes three state variables: the three-dimensional velocity of the mobile terminal, then the first observation degree of freedom can be obtained by subtracting 3 from the number of first observation residuals.

[0084] Similarly, when calculating the corresponding second degree of freedom based on the number of second observation residuals, the second degree of freedom can be obtained by subtracting a set value from the number of second observation residuals. In the embodiments of this application, since the purpose of the calculation is to obtain the positioning result of the mobile terminal, the positioning result may include four state variables: the three-dimensional velocity of the mobile terminal and clock drift. Therefore, the first degree of freedom can be obtained by subtracting 4 from the number of second observation residuals. Optionally, if the positioning result only includes three state variables: the three-dimensional velocity of the mobile terminal, then the second degree of freedom can be obtained by subtracting 3 from the number of second observation residuals.

[0085] After calculating the aforementioned parameters, if the first ratio between the sum of squares of the residuals of the first observations and the first degree of freedom is less than or equal to a set first threshold, then the validity check of the first Doppler observation data received by the mobile terminal from multiple frequency points can be determined. In this case, the result of the first solution processing can be used to obtain the positioning result of the mobile terminal, such as obtaining the clock drift and movement speed of the mobile terminal. It should be noted that: if the first ratio between the sum of squares of the residuals of the first observations and the first degree of freedom is small, it indicates that the fitting effect of the first Doppler observation data received by the mobile terminal from multiple frequency points is good; conversely, if the first ratio is large, it indicates that the fitting effect of the first Doppler observation data received by the mobile terminal from multiple frequency points is poor. Therefore, the value of the first threshold can be set according to actual needs, such as setting it to a constant greater than 0, for example, it can be set to 10.

[0086] In some optional embodiments, if the first ratio between the sum of squares of the residuals of the first observations and the first degree of freedom of the observations is greater than a set first threshold, and at least one of the following conditions is met, it can be determined that the validity check of the first Doppler observation data received by the mobile terminal from multiple frequency points has failed:

[0087] Condition A: The second ratio between the sum of squares of the residuals of the second observation and the second degree of freedom of the second observation is less than the product of the first ratio and the set second threshold;

[0088] Condition B: The second ratio is less than the product of the first ratio and the set third threshold, and the number of residuals of the second observation is greater than the product of the number of residuals of the first observation and the set fourth threshold;

[0089] Optionally, the second, third, and fourth thresholds are all less than 1. For example, the second threshold can be less than the third threshold, such as a second threshold of 0.04, a third threshold of 0.25, and a fourth threshold of slightly less than 1, such as 0.8. In other embodiments of this application, the second, third, and fourth thresholds can also be set to other values ​​as needed.

[0090] Continue to refer to Figure 2 As shown, in S220, if the first solution process fails, a second solution process is performed on the Doppler observation equation matrix corresponding to the specified frequency point based on the second Doppler observation data received by the mobile terminal from the specified frequency point. The specified frequency point includes one frequency point of each of the at least two satellite systems.

[0091] In some optional embodiments, the specified frequency point in S220 may be a frequency point in at least two satellite systems (these at least two satellite systems may be the same as or different from the satellite system used for the first solution process), and may include one frequency point in each satellite system.

[0092] For example, if multiple satellite systems include GPS, BDS, GLONASS, GALILEO, and QZSS, then the specified frequency point could include one frequency point from the GPS system, one frequency point from the BDS system, one frequency point from the GLONASS system, one frequency point from the GALILEO system, and one frequency point from the QZSS system. Alternatively, the specified frequency point could include one frequency point from some of these satellite systems, such as one frequency point from the GPS system, one frequency point from the BDS system, and one frequency point from the GLONASS system.

[0093] Optionally, the designated frequency point may include the first frequency point in each satellite system. Specifically, for example, in a GPS system, the first frequency point may be a frequency point in the GPS L1 band (such as the center frequency point in this band); in a BDS system, the first frequency point may be a frequency point in the B1 band; in a GLONASS system, the first frequency point may be a frequency point in the R1 band; in a GALILEO system, the first frequency point may be a frequency point in the E1 band; and in a QZSS system, the first frequency point may be a frequency point in the L1 band.

[0094] In some optional embodiments, if the clock bias rate of the mobile terminal is used as an optimization parameter to establish Doppler observation equations corresponding to different frequency points in the satellite system, then a Doppler observation equation matrix corresponding to a specified frequency point can be generated based on the Doppler observation equations corresponding to the first frequency point of each of the multiple satellite systems. For example, the Doppler observation equations corresponding to the first frequency point of each satellite system can be integrated to obtain a Doppler observation equation matrix.

[0095] In some optional embodiments, when performing the second solution processing on the Doppler observation equation matrix corresponding to the specified frequency point, a method similar to the first solution processing in the above embodiments can be adopted. That is, based on the accuracy of the second Doppler observation data received by the mobile terminal from the specified frequency point, a second weight matrix of the Doppler observation data is generated. Then, based on the second weight matrix and the second Doppler observation data received by the mobile terminal from the specified frequency point, the second solution processing on the Doppler observation equation matrix corresponding to the specified frequency point is performed.

[0096] Optionally, the accuracy of the second Doppler observation data can be determined by using an elevation angle model, a signal-to-noise ratio model, or a model based on the elevation angle-signal-noise ratio. For details, please refer to the technical solutions in the foregoing embodiments.

[0097] In some optional embodiments, when performing the second solution processing on the Doppler observation equation matrix corresponding to the specified frequency point, the method can be similar to the first solution processing described above, that is, the weighted least squares method can be used to iteratively solve the Doppler observation equation matrix corresponding to the specified frequency point. The specific process can be referred to the technical solution of the foregoing embodiments, and will not be repeated here.

[0098] In some optional embodiments, when the number of iterative solutions to the Doppler observation equation matrix corresponding to the specified frequency point reaches a set number, if the difference between the solution result of the current iteration and the solution result of the previous iteration is less than a difference threshold, it indicates that the iterative process of the second solution process has converged within the set number of iterations. This convergence judgment mechanism ensures the effectiveness and efficiency of the iterative process, avoids unnecessary iterative calculations, and thus saves computational resources. After determining convergence, the second solution process can be considered successful. In this case, the result of the second solution process can be used to obtain the positioning result of the mobile terminal, such as obtaining the clock drift and moving speed of the mobile terminal. Optionally, the set number of iterations can be set according to actual needs, such as 5 times, 10 times, etc.

[0099] In some optional embodiments, when the number of iterative solutions to the Doppler observation equation matrix corresponding to the specified frequency point reaches a set number, if the difference between the solution result of the current iteration and the solution result of the previous iteration is greater than or equal to a difference threshold, it indicates that the iterative process of the second solution process has not converged within the set number of iterations. In this case, it can be determined that the second solution process has failed. In this case, since both the first and second solution processes have failed, it can be determined that the positioning of the mobile terminal has failed. Optionally, after determining that the positioning of the mobile terminal has failed, a retry operation can be performed, that is, the process can be re-executed. Figure 2 The technical solution of the embodiment shown is to perform location processing on the mobile terminal again.

[0100] Continue to refer to Figure 2 As shown, in S230, the positioning result of the mobile terminal is obtained based on the successful calculation result.

[0101] Specifically, if the first solution process is successful, the result of the first solution process can be used to obtain the positioning result of the mobile terminal, such as the clock drift and moving speed of the mobile terminal; if the first solution process fails, but the second solution process succeeds, the result of the second solution process can be used to obtain the positioning result of the mobile terminal, such as the clock drift and moving speed of the mobile terminal.

[0102] Figure 3 A flowchart illustrating a mobile terminal positioning method according to an embodiment of this application is shown. This mobile terminal positioning method can be performed by an electronic device, which can be a mobile terminal, a server, or other device. (Refer to...) Figure 3 As shown, this mobile terminal positioning method includes at least S310 to S360, which are described in detail below:

[0103] In S310, based on the first Doppler observation data received by the mobile terminal from multiple frequency points, a first solution process is performed on the Doppler observation equation matrix corresponding to the multiple frequency points. The multiple frequency points include the frequency points of at least one satellite system, and the frequency points of the at least one satellite system include at least two frequency points of the same satellite system.

[0104] Optionally, the specific processing details of S310 can be referred to the relevant description of S210 in the foregoing embodiments, and will not be repeated here.

[0105] In S320, it is determined whether the first solution process has converged. If the first solution process has converged, then S330 is executed; if the first solution process has not converged, then S340 is executed.

[0106] In some optional embodiments, the first solution process may be an iterative solution process using weighted least squares. When the number of iterative solutions to the Doppler observation equation matrices corresponding to multiple frequency points reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is greater than or equal to the difference threshold, it indicates that the iterative process of the first solution process has not converged within the set number of iterations. In this case, it can also be determined that the first solution process has failed.

[0107] Accordingly, when the number of iterative solutions to the Doppler observation equation matrices corresponding to multiple frequency points reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is less than the difference threshold, it indicates that the iterative process of the first solution process has converged within the set number of iterations.

[0108] In step S330, a validity check is performed, and it is determined whether the validity check passes. If the validity check passes, step S360 is executed; if the validity check fails, step S340 is executed.

[0109] It should be noted that after the iterative process of the first solution processing has converged within the set number of iterations, in order to avoid the problem of unstable solution results caused by large differences between the Doppler observation data from multiple frequency points when using Doppler observation data for solution processing, the validity of the first Doppler observation data received by the mobile terminal from multiple frequency points can be further checked. The specific detection process can refer to the technical solution of the aforementioned embodiment, and will not be repeated here.

[0110] If the validity check passes, the first solution process is considered successful; if the validity check fails, the first solution process is considered unsuccessful.

[0111] In S340, based on the second Doppler observation data received by the mobile terminal from the specified frequency point, a second solution process is performed on the Doppler observation equation matrix corresponding to the specified frequency point. The specified frequency point includes one frequency point of each of at least two satellite systems.

[0112] Optionally, the specific processing details of S340 can be referred to the relevant description of S220 in the foregoing embodiments, and will not be repeated here.

[0113] In step S350, it is determined whether the second solution process has converged. If the second solution process has converged, then step S350 is executed; if the second solution process has not converged, then the positioning of the mobile terminal has failed.

[0114] In some optional embodiments, the second solution process may be an iterative solution process using weighted least squares. When the number of iterative solutions to the Doppler observation equation matrix corresponding to the specified frequency point reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is greater than or equal to the difference threshold, it indicates that the iterative process of the second solution process has not converged within the set number of iterations. In this case, it can also be determined that the second solution process has failed.

[0115] Accordingly, when the number of iterative solutions to the Doppler observation equation matrix corresponding to the specified frequency point reaches the set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is less than the difference threshold, it indicates that the iterative process of the second solution process has converged within the set number of iterations, and at this time it can be determined that the second solution process is successful.

[0116] In S360, the location result of the mobile terminal is obtained based on the successful calculation result.

[0117] Specifically, if the first solution process is successful, the result of the first solution process can be used to obtain the location result of the mobile terminal; if the first solution process fails but the second solution process succeeds, the result of the second solution process can be used to obtain the location result of the mobile terminal.

[0118] The technical solutions of the above embodiments of this application can fully utilize Doppler observation data received by the mobile terminal from multiple frequency points in the same satellite system for positioning calculation processing. This allows for full utilization of the complementarity between data from different frequency points within the same satellite system, improving the robustness and accuracy of mobile terminal positioning. Furthermore, if the first calculation process fails, a second calculation process can be performed using Doppler observation data from a designated frequency point selected from each satellite system. This approach ensures that positioning calculation processing can still be performed using Doppler observation data from one frequency point in each satellite system even when data from multiple frequency points in the same satellite system is unavailable or calculations fail, thus improving the adaptability and robustness of mobile terminal positioning processing.

[0119] The following combination Figure 4 and Figure 5 The implementation details of the technical solution of a specific embodiment of this application will be described again:

[0120] In one embodiment of this application, the Doppler observation equation can be established using a single clock drift parameter (i.e., the clock drift parameter of the mobile terminal) model. For example, the following Doppler observation equation can be established:

[0121]

[0122] Wherein, the superscript 's' represents a satellite; the subscript 'r' represents a mobile terminal; and the subscript 'f' represents a frequency point. Indicates the clock drift of satellite s; λ represents the clock drift of mobile terminal r; f This indicates the wavelength corresponding to frequency point f; The value represents the Doppler observation received by the mobile terminal r at frequency point f in satellite s; c represents the speed of light; ε represents random error. This represents the rate of change of the satellite-to-Earth distance between satellite s and mobile terminal r. It should be noted that the satellite-to-Earth distance refers to the distance between the satellite and the Earth's surface, also known as satellite altitude. In this Doppler observation equation, the clock drift of the mobile terminal is the rate of change of the mobile terminal's clock bias.

[0123] Optionally, the rate of change of satellite-to-Earth distance It can be represented as:

[0124]

[0125] Among them, v SIndicates the satellite's velocity s; v r This represents the speed of the mobile terminal r; represents the unit vector pointing from the location of the mobile terminal r to the satellite s; W represents the Earth's rotation correction value.

[0126] Based on the above Doppler observation equation and the expression of the satellite-to-Earth distance variation rate, referring to Figure 4 As shown in the embodiments of this application, multi-frequency WLS calculation can be performed first. If the multi-frequency WLS calculation process converges, a multi-frequency validity check is performed. If the multi-frequency validity check passes, the calculation is considered successful. If the multi-frequency WLS calculation process does not converge, or the multi-frequency validity check fails, a single-frequency WLS calculation is performed. If the single-frequency WLS calculation process converges, the calculation is considered successful; if the single-frequency WLS calculation process does not converge, the calculation is considered unsuccessful.

[0127] It should be noted that the multi-frequency WLS solution in this embodiment refers to using Doppler observation data from multiple satellite systems at multiple frequency points (e.g., each satellite system uses at least two frequency points, or some satellite systems use at least two frequency points) for WLS solution. Single-frequency WLS solution, on the other hand, refers to using multiple satellite systems, but each satellite system uses only one frequency point's Doppler observation data for WLS solution. Specifically, in multi-frequency WLS solution, the Doppler observation equations corresponding to each frequency point in each satellite system need to be included in the WLS solution; while in single-frequency solution, only the Doppler observation equations for one frequency point (e.g., the first frequency point of each satellite system) from each satellite system are simultaneously solved for WLS solution.

[0128] In one embodiment of this application, the WLS solution process can be represented by the following formula:

[0129]

[0130] in, This represents the optimal estimate of an unknown variable X, which in this application may include v. r and H represents the design matrix of the Doppler observation equation; L represents the Doppler observation matrix; P represents the weight matrix, which can be determined, for example, by using an elevation angle model or an elevation angle-signal-noise ratio model. For details, please refer to the technical solution of the aforementioned embodiment.

[0131] Optionally, the design matrix H of the Doppler observation equations serves as a bridge connecting the observed values ​​and the parameters to be estimated. It typically includes all possible explanatory variables (or independent variables, characteristic variables) from the observation process and the relationships between these variables and the parameters to be estimated. In the Doppler observation equations, the design matrix may include parameters such as satellite position, velocity, and clock bias, as well as receiver position, velocity, and clock drift. The construction of the design matrix H can depend on the specific observation model and data processing method. For example, in Doppler positioning of a GNSS system, the design matrix may include satellite position and velocity information, receiver position and velocity information, and clock bias and clock drift information. This information is combined and transformed through specific mathematical models (such as the Doppler observation equations) to form the final design matrix.

[0132] Since the Doppler localization problem is nonlinear, an iterative method can be used in WLS (both multi-frequency and single-frequency WLS) solutions. X represents the gain value of the unknown (i.e., the difference between the solution result of the current iteration and the solution result of the previous iteration), and the L matrix is ​​replaced by the residual matrix V of the Doppler observation equation. Within a certain number of iterations, when the magnitude of the gain value X is less than a threshold T... w If convergence is achieved, the WLS algorithm is considered to have converged; otherwise, it is not. Optionally, the residual matrix V of the Doppler observation equation can be expressed as:

[0133]

[0134] In addition, since the observation noise of mobile terminals is relatively large, Doppler observations may contain gross errors. Therefore, when performing WLS calculations, integrity algorithms or robust estimation algorithms can be used to improve the robustness of the calculation process.

[0135] It should be noted that integrity is a measure of the reliability of the positioning information provided by a navigation and positioning system. Integrity algorithms are used to assess this reliability and provide alerts within a specified time when the positioning information is abnormal or unusable. Specifically, in a satellite navigation system, when the integrity algorithm detects a positioning error exceeding a preset threshold, an alarm mechanism is triggered to ensure the accuracy and reliability of the obtained positioning information.

[0136] Robust estimation is a method that estimates the true value of data using statistical methods when outliers exist. This algorithm emphasizes the robustness and reliability of the estimate, meaning that even small differences between the theoretical and practical models have only a minor impact on the estimation method's performance. In satellite navigation scenarios, due to factors such as ionospheric interference and multipath effects, received signals may contain outliers. In such cases, robust estimation algorithms can be used to improve positioning accuracy.

[0137] In some alternative embodiments, Figure 4 The multi-frequency validity check shown is primarily to prevent significant velocity measurement deviations. This is because the clock drift of mobile terminals for different satellite systems and frequencies may not be entirely consistent. Therefore, validity checks are necessary when using a single clock drift parameter to simultaneously establish Doppler observation equations for multiple satellite systems and frequencies. The following conditions must be checked during validity verification:

[0138] Condition 1: r m >T1

[0139] Condition 2: r1 <T2r m

[0140] Condition 3: r1 <T3r m And n1>T4n m

[0141] Where n1 represents the number of single-frequency observation residuals, that is, the number of Doppler observation residuals in the single-frequency WLS solution process, which is also the number of Doppler observation equations in the single-frequency WLS solution process; n m represents the number of residuals from multi-frequency observations, i.e., the number of Doppler observation residuals in the multi-frequency WLS solution process, which is also the number of Doppler observation equations in the multi-frequency WLS solution process; r1 represents the mean of the sum of squared posterior residuals with respect to degrees of freedom in the single-frequency WLS solution, i.e. Where V1 represents the single-frequency observation residual vector, i.e., the observation residual vector in the single-frequency WLS solution process; r m This represents the mean of the sum of squared posterior residuals with respect to degrees of freedom in a multi-frequency WLS solution, i.e. Where V m T1 represents the residual vector of multi-frequency observations, i.e., the residual vector of observations in the multi-frequency WLS solution process; T2 represents the detection admission threshold, which can be selected according to actual needs, such as setting it to 10; T2 and T3 represent the residual comparison coefficients, which can be less than 1, for example, T2 is 0.04 and T3 is 0.25; T4 represents the single-frequency proportion threshold, which can be slightly less than 1, such as 0.8.

[0142] In some optional embodiments, when performing multi-frequency validity testing, it is first determined whether condition 1 is met; if condition 1 is not met, it means that the multi-frequency validity test has passed; if condition 1 is met, and at least one of condition 2 and condition 3 is met, it is considered that the multi-frequency validity test has failed.

[0143] Figure 4The technical solution of the illustrated embodiment constructs a Doppler observation equation using a single clock drift parameter and adaptively employs Doppler observations from a single frequency point of multiple satellite systems, or multiple frequency points of multiple satellite systems, based on characteristics such as Doppler residuals and observation degrees of freedom. This eliminates gross errors while increasing the degrees of freedom of observation, achieving robust Doppler velocity measurement and thus improving positioning robustness. The technical solution of this application embodiment effectively solves the velocity measurement deviation when the single clock drift parameter model has inconsistent clock drift at multiple mobile phone frequencies. The velocity and trajectory effects before and after adopting the technical solution of this application embodiment are shown in the following figures. Figure 5 As shown. According to Figure 5 As can be seen from Figure (a), there are significant differences between the positioning point and velocity and the reference value in the related technical solutions. After applying the technical solution of the embodiment of this application, the positioning point and velocity are basically consistent with the reference value.

[0144] The following describes an apparatus embodiment of this application, which can be used to execute the mobile terminal positioning method in the above embodiments of this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the mobile terminal positioning method described above.

[0145] Figure 6 A block diagram of a mobile terminal positioning device according to an embodiment of the present application is shown. The mobile terminal positioning device can be applied to an electronic device, which can be a mobile terminal, a server, or other devices.

[0146] Reference Figure 6 As shown, a mobile terminal positioning device 600 according to an embodiment of this application includes: a first calculation unit 602, a second calculation unit 604, and a processing unit 606.

[0147] The first solution unit 602 is configured to perform a first solution process on the Doppler observation equation matrix corresponding to the multiple frequency points based on the first Doppler observation data received by the mobile terminal from multiple frequency points. The multiple frequency points include frequency points of at least one satellite system, and the frequency points of the at least one satellite system include at least two frequency points of the same satellite system. The second solution unit 604 is configured to perform a second solution process on the Doppler observation equation matrix corresponding to the specified frequency point based on the second Doppler observation data received by the mobile terminal from a specified frequency point if the first solution process fails. The specified frequency point includes one frequency point of each of at least two satellite systems. The processing unit 606 is configured to obtain the positioning result of the mobile terminal based on the successful solution result.

[0148] In some embodiments of this application, based on the foregoing scheme, the first solution unit 602 is configured to: generate a first weight matrix of Doppler observation data according to the accuracy of the first Doppler observation data received by the mobile terminal from the multiple frequency points; and perform a first solution process on the Doppler observation equation matrix corresponding to the multiple frequency points based on the first weight matrix and the first Doppler observation data.

[0149] In some embodiments of this application, based on the foregoing scheme, the first solution unit 602 is configured to: based on the first weight matrix and the first Doppler observation data, use the weighted least squares method to iteratively solve the Doppler observation equation matrix corresponding to the plurality of frequency points; when the number of iterative solutions to the Doppler observation equation matrix corresponding to the plurality of frequency points reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is greater than or equal to a difference threshold, then the first solution process is determined to have failed.

[0150] In some embodiments of this application, based on the foregoing scheme, the mobile terminal positioning device further includes: a detection unit configured to, when the number of iterative solutions to the Doppler observation equation matrices corresponding to the plurality of frequency points reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is less than the difference threshold, then perform validity detection on the first Doppler observation data; if the validity detection passes, then determine that the first solution process is successful; if the validity detection fails, then determine that the first solution process fails.

[0151] In some embodiments of this application, based on the foregoing scheme, the detection unit is configured to: acquire the first observation residual data corresponding to the first Doppler observation data, and the second observation residual data corresponding to the Doppler observation data received by the mobile terminal from the specified frequency point; and perform validity detection on the first Doppler observation data according to the relationship between the first observation residual data and the second observation residual data.

[0152] In some embodiments of this application, based on the aforementioned scheme, the first observation residual data includes a first observation residual vector and a first observation residual quantity, and the second observation residual data includes a second observation residual vector and a second observation residual quantity; the detection unit is configured to: calculate the sum of squares of the corresponding first observation residuals based on the first observation residual vector, and calculate the corresponding first observation degree of freedom based on the first observation residual quantity; calculate the sum of squares of the corresponding second observation residuals based on the second observation residual vector, and calculate the corresponding second observation degree of freedom based on the second observation residual quantity; if the first ratio between the sum of squares of the first observation residuals and the first observation degree of freedom is greater than a set first threshold, and at least one of the following conditions is met, then the validity detection is determined to have failed:

[0153] The second ratio between the sum of squares of the second observation residuals and the second observation degrees of freedom is less than the product of the first ratio and the set second threshold; and the second ratio is less than the product of the first ratio and the set third threshold, and the number of the second observation residuals is greater than the product of the number of the first observation residuals and the set fourth threshold.

[0154] The second threshold, the third threshold, and the fourth threshold are all greater than 0 and less than 1.

[0155] In some embodiments of this application, based on the foregoing scheme, the detection unit is configured to: if the first ratio is less than or equal to the first threshold, then determine that the validity detection of the first Doppler observation data has passed.

[0156] In some embodiments of this application, based on the foregoing scheme, the second solution unit 604 is configured to: generate a weight matrix of Doppler observation data according to the accuracy of the second Doppler observation data received by the mobile terminal from the specified frequency point; and perform a second solution process on the Doppler observation equation matrix corresponding to the specified frequency point based on the second weight matrix and the second Doppler observation data.

[0157] In some embodiments of this application, based on the foregoing scheme, the second solution unit 604 is configured to: iteratively solve the Doppler observation equation matrix corresponding to the specified frequency point using the weighted least squares method based on the second weight matrix and the second Doppler observation data; when the number of iterative solutions to the Doppler observation equation matrix corresponding to the specified frequency point reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is less than a difference threshold, then the second solution process is determined to be successful; and if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is greater than or equal to the difference threshold, then the second solution process is determined to be unsuccessful.

[0158] In some embodiments of this application, based on the foregoing scheme, the mobile terminal positioning device further includes: a generation unit configured to use the clock difference rate of the mobile terminal as an optimization parameter to establish Doppler observation equations corresponding to different frequency points in the satellite system; and to generate a Doppler observation equation matrix corresponding to the multiple frequency points according to the Doppler observation equations corresponding to the multiple frequency points respectively.

[0159] In some embodiments of this application, based on the foregoing scheme, the designated frequency point includes the first frequency point in each satellite system; the generation unit is further configured to generate the Doppler observation equation matrix corresponding to the designated frequency point according to the Doppler observation equation corresponding to the first frequency point of each of the multiple satellite systems.

[0160] Figure 7 A schematic diagram of the structure of a computer system suitable for implementing the computer device of the present application is shown. The computer device may be a device that performs the mobile terminal positioning method of the foregoing embodiments.

[0161] It should be noted that, Figure 7 The computer system 700 of the computer device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.

[0162] like Figure 7As shown, the computer system 700 may include a Central Processing Unit (CPU) 701, which can perform various appropriate actions and processes based on a program stored in Read-Only Memory (ROM) 702 or a program loaded from storage portion 708 into Random Access Memory (RAM) 703, such as performing the methods described in the above embodiments. The RAM 703 also stores various programs and data required for system operation. The CPU 701, ROM 702, and RAM 703 are interconnected via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.

[0163] The following components can be connected to I / O interface 705: input section 706 including keyboard, mouse, etc.; output section 707 including cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; storage section 708 including hard disk, etc.; and communication section 709 including network interface card, modem, etc. Communication section 709 performs communication processing via a network such as the Internet. Drive 710 is also connected to I / O interface 705 as needed. Removable media 711, such as disk, optical disk, magneto-optical disk, semiconductor memory, etc., are installed on drive 710 as needed so that computer programs read from them can be installed into storage section 708 as needed.

[0164] Specifically, according to embodiments of this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a computer-readable medium for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 709, and / or installed from removable medium 711. When the computer program is executed by central processing unit (CPU) 701, it performs various functions defined in the system of this application.

[0165] It should be noted that the computer-readable medium shown in the embodiments of this application can be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, optical fiber, portable compact disc read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this application, a computer-readable storage medium can be any tangible medium containing or storing a computer program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this application, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying a computer-readable computer program. The transmitted data signal can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. The computer-readable signal medium can also be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The computer program contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to wireless, wired, etc., or any suitable combination thereof.

[0166] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. Each block in a flowchart or block diagram may represent a module, segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and a computer program.

[0167] The units described in the embodiments of this application can be implemented in software or hardware, and the described units can also be located in a processor. The names of these units do not necessarily limit the specific unit itself.

[0168] In another aspect, this application also provides a computer-readable medium, which may be included in the computer device described in the above embodiments; or it may exist independently and not assembled into the computer device. The computer-readable medium carries one or more computer programs, which, when executed by the computer device, cause the computer device to perform the methods described in the above embodiments.

[0169] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to the embodiments of this application, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.

[0170] Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computer device to execute the method according to the embodiments of this application. For example, it can execute... Figures 2 to 4 The mobile terminal positioning method shown.

[0171] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the embodiments disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein.

[0172] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the appended claims.

Claims

1. A mobile terminal positioning method, characterized in that, include: Based on the first Doppler observation data received by the mobile terminal from multiple frequency points, a first solution process is performed on the Doppler observation equation matrix corresponding to the multiple frequency points. The multiple frequency points include the frequency points of at least one satellite system, and the frequency points of the at least one satellite system include at least two frequency points of the same satellite system. If the first solution process fails, then based on the second Doppler observation data received by the mobile terminal from the specified frequency point, a second solution process is performed on the Doppler observation equation matrix corresponding to the specified frequency point. The specified frequency point includes one frequency point of each of at least two satellite systems. The location result of the mobile terminal is obtained based on the successful calculation result.

2. The mobile terminal positioning method according to claim 1, characterized in that, The first solution process for the Doppler observation equation matrix corresponding to the multiple frequency points, based on the first Doppler observation data received by the mobile terminal from multiple frequency points, includes: Based on the accuracy of the first Doppler observation data received by the mobile terminal from the multiple frequency points, a first weight matrix of the Doppler observation data is generated. Based on the first weight matrix and the first Doppler observation data, the Doppler observation equation matrix corresponding to the multiple frequency points is subjected to a first solution process.

3. The mobile terminal positioning method according to claim 2, characterized in that, The first solution process for the Doppler observation equation matrix corresponding to the multiple frequency points, based on the first weight matrix and the first Doppler observation data, includes: Based on the first weight matrix and the first Doppler observation data, the weighted least squares method is used to iteratively solve the Doppler observation equation matrix corresponding to the multiple frequency points; When the number of iterative solutions to the Doppler observation equation matrices corresponding to the multiple frequency points reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is greater than or equal to the difference threshold, then the first solution process is determined to have failed.

4. The mobile terminal positioning method according to claim 3, characterized in that, The mobile terminal positioning method further includes: When the number of iterative solutions to the Doppler observation equation matrix corresponding to the multiple frequency points reaches a set number, if the difference between the solution result of the current iteration process and the solution result of the previous iteration process is less than the difference threshold, then the validity of the first Doppler observation data is checked. If the validity check passes, the first solution process is determined to be successful; if the validity check fails, the first solution process is determined to be unsuccessful.

5. The mobile terminal positioning method according to claim 4, characterized in that, The validity of the first Doppler observation data is checked, including: Obtain the first observation residual data corresponding to the first Doppler observation data, and the second observation residual data corresponding to the second Doppler observation data received by the mobile terminal from the specified frequency point; The validity of the first Doppler observation data is checked based on the relationship between the residual data of the first observation and the residual data of the second observation.

6. The mobile terminal positioning method according to claim 5, characterized in that, The first observation residual data includes a first observation residual vector and a first observation residual count, and the second observation residual data includes a second observation residual vector and a second observation residual count. Based on the relationship between the residual data of the first observation and the residual data of the second observation, the validity of the first Doppler observation data is checked, including: Based on the first observation residual vector, calculate the sum of squares of the corresponding first observation residuals, and calculate the corresponding first observation degrees of freedom based on the number of first observation residuals; based on the second observation residual vector, calculate the sum of squares of the corresponding second observation residuals, and calculate the corresponding second observation degrees of freedom based on the number of second observation residuals. If the first ratio between the sum of squares of the residuals of the first observation and the first degree of freedom of the observation is greater than a set first threshold, and at least one of the following conditions is met, then the validity test is determined to have failed: The second ratio between the sum of squares of the residuals of the second observation and the second degree of freedom of the second observation is less than the product of the first ratio and a set second threshold; and The second ratio is less than the product of the first ratio and the set third threshold, and the number of the second observation residuals is greater than the product of the number of the first observation residuals and the set fourth threshold; The second threshold, the third threshold, and the fourth threshold are all greater than 0 and less than 1.

7. The mobile terminal positioning method according to claim 6, characterized in that, The mobile terminal positioning method further includes: If the first ratio is less than or equal to the first threshold, then the validity test of the first Doppler observation data is determined to be passed.

8. The mobile terminal positioning method according to claim 1, characterized in that, The second solution process for the Doppler observation equation matrix corresponding to the specified frequency point, based on the second Doppler observation data received by the mobile terminal from the specified frequency point, includes: Based on the accuracy of the second Doppler observation data received by the mobile terminal from the specified frequency point, a second weight matrix of the Doppler observation data is generated. Based on the second weight matrix and the second Doppler observation data, a second solution process is performed on the Doppler observation equation matrix corresponding to the specified frequency point.

9. The mobile terminal positioning method according to claim 8, characterized in that, The second solution process for the Doppler observation equation matrix corresponding to the specified frequency point, based on the second weight matrix and the second Doppler observation data, includes: Based on the second weight matrix and the second Doppler observation data, the weighted least squares method is used to iteratively solve the Doppler observation equation matrix corresponding to the specified frequency point; When the number of iterative solutions to the Doppler observation equation matrix corresponding to the specified frequency point reaches a set number, if the difference between the solution result of the current iteration and the solution result of the previous iteration is less than a difference threshold, then the second solution process is determined to be successful; and If the difference between the solution result of the current iteration process and the solution result of the previous iteration process is greater than or equal to the difference threshold, then the second solution process is determined to have failed.

10. The mobile terminal positioning method according to any one of claims 1 to 9, characterized in that, The mobile terminal positioning method further includes: Using the clock bias rate of the mobile terminal as an optimization parameter, Doppler observation equations corresponding to different frequency points in the satellite system are established; Based on the Doppler observation equations corresponding to the multiple frequency points, generate the Doppler observation equation matrix corresponding to the multiple frequency points.

11. The mobile terminal positioning method according to claim 10, characterized in that, The designated frequency point includes the first frequency point in each satellite system; The mobile terminal positioning method further includes: generating a Doppler observation equation matrix corresponding to the specified frequency point based on the Doppler observation equation corresponding to the first frequency point of each of the multiple satellite systems.

12. A mobile terminal positioning device, characterized in that, include: The first calculation unit is configured to perform a first calculation process on the Doppler observation equation matrix corresponding to the multiple frequency points based on the first Doppler observation data received by the mobile terminal from multiple frequency points. The multiple frequency points include the frequency points of at least one satellite system, and the frequency points of the at least one satellite system include at least two frequency points of the same satellite system. The second solution unit is configured to perform a second solution process on the Doppler observation equation matrix corresponding to the specified frequency point based on the second Doppler observation data received by the mobile terminal from the specified frequency point if the first solution process fails. The specified frequency point includes one frequency point of each of at least two satellite systems. The processing unit is configured to obtain the positioning result of the mobile terminal based on the successful calculation result.

13. A computer-readable medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the mobile terminal positioning method according to any one of claims 1 to 11.

14. A computer device, characterized in that, include: One or more processors; A memory for storing one or more computer programs, which, when executed by one or more processors, cause the computer device to implement the mobile terminal positioning method according to any one of claims 1 to 11.

15. A computer program product, characterized in that, The computer program product includes a computer program stored in a computer-readable storage medium, and a processor of a computer device reads from the computer-readable storage medium and executes the computer program, causing the computer device to perform the mobile terminal positioning method according to any one of claims 1 to 11.