Positioning method, apparatus, device, and storage medium
Patent Information
- Application Number
- CN202311667520.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-06
- Publication Date
- 2026-10-13
- Estimated Expiration
- 2043-12-06
AI Technical Summary
[0009]本申请实施例中,执行第一定位解算操作的时长小于执行第二定位解算操作的时长,第二历元在第一历元之前。在确定第一历元的定位结果时,将基于第二历元的第二观测数据执行第二定位解算操作得到的反馈信息作为第一定位解算操作的输入数据,将执行第一定位解算操作得到的解算结果作为第一历元的定位结果;如此,第一历元的定位结果是基于执行耗时较短的第一定位解算操作得到的,有益于减小定位延时,且确定第一历元的定位结果时考虑到了在之前历元进行定位解算得到的反馈信息,保证了定位精度。
Smart Images

Figure CN117630996B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of positioning technology, and in particular to a positioning method, apparatus, device and storage medium. Background Technology
[0002] Global Navigation Satellite System (GNSS) boasts numerous advantages such as global coverage, all-weather operation, continuity, and real-time capability. GNSS positioning technology is widely used in various fields, including geodesy, deformation monitoring, drones, vehicle navigation, autonomous driving, and mobile phones and watches. Real-Time Kinematic (RTK) positioning is a technique that uses GNSS carrier phase observations for differential positioning.
[0003] Currently, when locating electronic devices based on RTK technology, it is necessary to perform real-time positioning calculations and output positioning results. However, in order to ensure positioning accuracy, the positioning calculation process in existing technologies is relatively complex and time-consuming, which increases the delay in outputting positioning results. Therefore, how to reduce positioning delay while ensuring positioning accuracy is an urgent problem to be solved. Summary of the Invention
[0004] This application provides a positioning method, apparatus, device, and storage medium that can save time in positioning calculation while ensuring positioning accuracy.
[0005] In a first aspect, this application provides a positioning method, comprising: acquiring first observation data at a first epoch; performing a first positioning calculation operation based on the first observation data at the first epoch and feedback information at a second epoch to obtain a positioning result at the first epoch; wherein the second epoch is located before the first epoch, the feedback information is obtained by performing a second positioning calculation operation based on the second observation data at the second epoch, and the feedback information includes input data corresponding to multiple processing steps of the first positioning calculation operation; the duration of performing the first positioning calculation operation is less than the duration of performing the second positioning calculation operation.
[0006] Secondly, this application provides a positioning device, comprising: an acquisition module for acquiring first observation data at a first epoch; and an execution module for performing a first positioning calculation operation based on the first observation data at the first epoch and feedback information at a second epoch to obtain a positioning result at the first epoch; wherein the second epoch is located before the first epoch, and the feedback information is obtained by performing a second positioning calculation operation based on the second observation data at the second epoch, and the feedback information includes input data corresponding to multiple processing steps of the first positioning calculation operation; the duration of executing the first positioning calculation operation is less than the duration of executing the second positioning calculation operation.
[0007] Thirdly, this application provides an electronic device, including a memory and a processor, wherein the memory stores a computer program that can run on the processor, characterized in that the processor executes the program to implement the positioning method described in the embodiments of this application.
[0008] Fourthly, this application provides a computer-readable storage medium having a computer program stored thereon, characterized in that the computer program, when executed by a processor, implements the positioning method described in the embodiments of this application.
[0009] In this embodiment, the execution time of the first positioning calculation operation is shorter than the execution time of the second positioning calculation operation, and the second epoch is before the first epoch. When determining the positioning result of the first epoch, the feedback information obtained by performing the second positioning calculation operation based on the second observation data of the second epoch is used as the input data of the first positioning calculation operation, and the calculation result obtained by performing the first positioning calculation operation is used as the positioning result of the first epoch. In this way, the positioning result of the first epoch is obtained based on the first positioning calculation operation with shorter execution time, which is beneficial to reducing positioning delay. Moreover, the determination of the positioning result of the first epoch takes into account the feedback information obtained from the positioning calculation in the previous epoch, thus ensuring positioning accuracy. Attached Figure Description
[0010] Figure 1 A schematic diagram illustrating the implementation process of the positioning method provided in this application embodiment;
[0011] Figure 2 A schematic diagram illustrating the timing relationship between the first and second epochs provided for embodiments of this application;
[0012] Figure 3 A schematic diagram illustrating the implementation process of another positioning method provided in this application embodiment;
[0013] Figure 4 A schematic diagram illustrating the implementation process of another positioning method provided in this application embodiment;
[0014] Figure 5A schematic diagram illustrating the implementation process of the repositioning method provided in this application embodiment;
[0015] Figure 6 A schematic diagram illustrating the implementation process of the positioning method provided in this application embodiment;
[0016] Figure 7 This is a schematic diagram of the positioning device provided in the embodiments of this application;
[0017] Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0018] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c alone can mean: a alone, b alone, c alone, a combination of a and b, a combination of a and c, a combination of b and c, or a, b, and c, where a, b, and c can be single or multiple. Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance.
[0019] The terms “center,” “longitudinal,” “lateral,” “up,” “down,” “left,” “right,” “front,” and “rear,” etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are used only for the convenience of describing this application and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on this application.
[0020] The terms "connected" and "connected" should be interpreted broadly. For example, in circuit structures, "connected" or "connected" can refer not only to physical connections but also to electrical or signal connections. This could be a direct connection (physical connection) or an indirect connection via at least one intermediate component, as long as the circuit is connected. It could also refer to the internal connection between two components. Similarly, a signal connection can refer to a connection via a circuit or a medium, such as radio waves. Those skilled in the art will understand the specific meaning of these terms in this application based on the specific circumstances.
[0021] GNSS technology is applied in various scenarios such as geodesy, deformation monitoring, drones, vehicle navigation and autonomous driving. RTK technology uses GNSS carrier phase observations for differential positioning, and this technology is used in conventional high-precision positioning chips and modules.
[0022] An RTK positioning system consists of two basic components: a base station and a rover station, where the rover station is the device to be located. Both stations are equipped with satellite receivers to observe and receive satellite data. The principle of RTK positioning is as follows:
[0023] The base station and the rover station observe and receive satellite data from the same satellite. The base station sends the satellite observation data to the rover station in real time via a data link. Based on the observation data sent by the base station, the rover station performs real-time differential calculations on the rover station's observation data to calculate the three-dimensional coordinates and accuracy of the rover station, with a positioning accuracy of up to centimeters.
[0024] The satellite's observation data consists of carrier signals, pseudorange, Doppler observations, and carrier-to-noise ratio, obtained after the satellite signals transmitted by the satellite have been processed by baseband.
[0025] Currently, when using RTK positioning equipment to locate a rover, it is necessary to periodically measure and sample satellite signals to obtain satellite observation data. The time when satellite signals are sampled can be called an epoch. After the rover samples satellite data at each epoch to obtain observation data, it performs a complete positioning calculation based on the observation data and outputs the positioning result of the rover.
[0026] The complete localization process is quite complex and involves a large number of steps. Completing all the steps of the complete localization process is time-consuming, resulting in a high delay in the localization module outputting the localization result for each epoch.
[0027] Based on this, this application provides a positioning method, which is applied to a mobile station device, and the method includes the following steps 101 to 102:
[0028] Step 101: The mobile station device acquires the first observation data of the first epoch.
[0029] The first observation data of the mobile station at the first epoch may include carrier signals, pseudorange, Doppler observations and carrier-to-noise ratio obtained after baseband processing of satellite signals transmitted by at least one second satellite corresponding to the first epoch.
[0030] Among them, the carrier signal is the modulated satellite signal, the pseudorange is the product of the signal propagation time from the satellite to the receiver measured by the receiver of the mobile station and the speed of light; the Doppler observation value is the observation value used to estimate the relative moving speed between the mobile station and the satellite; and the carrier-to-noise ratio is the ratio between the carrier power and the noise power of the satellite signal.
[0031] Step 102: The rover device performs a first positioning calculation operation based on the first observation data of the first epoch and the feedback information of the second epoch to obtain the positioning result of the first epoch. The second epoch is located before the first epoch, and the feedback information is obtained by performing a second positioning calculation operation based on the second observation data of the second epoch. The feedback information includes the input data corresponding to the multiple processing steps of the first positioning calculation operation. The execution time of the first positioning calculation operation is less than the execution time of the second positioning calculation operation.
[0032] In some embodiments, the first epoch T n+1 This is the Nth epoch after the second epoch T1. There are N-1 epochs between the second and first epochs, and N epoch intervals, with each epoch interval being of equal duration. N is greater than 2.
[0033] Figure 2 A schematic diagram illustrating the temporal relationship between the first and second epochs is shown. Figure 2 In the sequence, the N-1 epochs between the second epoch and the first epoch are: T2, T3, T4, ... and T... n The N epochs are G2, G3, G4, ... and G... n .
[0034] The number of epoch intervals between the second epoch and the first epoch is related to the number of steps required to perform the second solution operation; in some embodiments, the number of steps required to perform the second positioning solution operation is equal to the number of epoch intervals between the second epoch and the first epoch.
[0035] In some embodiments, N=10, the second positioning solution operation includes 10 execution steps, and there is a 10-epoch interval between the second epoch and the first epoch.
[0036] The 10 steps of the second positioning solution operation are as follows:
[0037] 1) Data preprocessing and quality control; 2) Single-point localization solution; 3) Scene recognition and judgment; 4) Cycle slip detection; 5) Kalman filter floating-point solution; 6) Filtered posterior detection; 7) Integer least squares descending correlation (LAMBDA) ambiguity search; 8) Ambiguity confirmation; 9) Ambiguity recursion maintenance; 10) RTK fixed solution solution.
[0038] The function of each step in the second positioning solution operation is explained further below:
[0039] The process includes: 1) Data preprocessing and quality control steps: Preprocessing operations such as conversion, gross error identification, and multipath detection are performed on the received baseband observation data to ensure data quality. Baseband observation data refers to the data obtained after baseband processing of satellite signals.
[0040] 2) Single-point positioning solution steps: Using the single-point positioning algorithm, the least squares algorithm and Kalman filter algorithm are used to convert the preprocessed data into parameters such as the position, velocity and clock difference of the positioning device, so as to obtain the single-point positioning result.
[0041] 3) Scene recognition and judgment steps: Based on the matching of observation data features and scene features, determine the scene in which the positioning device is located, such as indoor, urban, suburban, etc., to help further optimize the positioning results.
[0042] 4) Cycle slip detection step: Detect sudden changes in carrier phase to further optimize positioning results and improve positioning accuracy based on cycle slip detection results.
[0043] 5) Kalman filter floating-point solution steps: Using the Kalman filter algorithm and the motion model of the positioning device, floating-point solution is performed to obtain more accurate position and velocity parameters.
[0044] 6) Post-filtering verification step: Verify and evaluate the results after Kalman filtering to ensure data quality and accuracy.
[0045] 7) Integer Least Squares Downcorrelation (LAMBDA) Ambiguity Search Steps: Use the LAMBDA algorithm to search for carrier phase ambiguity in order to further fix the carrier phase ambiguity.
[0046] 8) Ambiguity Confirmation Step: Based on the search results obtained from the LAMBDA ambiguity search step, the correctness of the carrier phase ambiguity value is determined, and this ambiguity value is applied to the solution process.
[0047] 9) Ambiguity recursive maintenance step: The confirmed carrier phase ambiguity is recursively maintained and uniformly fused to further improve positioning accuracy.
[0048] 10) RTK fixed solution calculation steps: RTK fixed solution calculation is performed based on the recursive and unified fusion ambiguity to obtain high-precision positioning results.
[0049] In the prior art, the N steps of the second positioning solution operation for each epoch (including the first epoch and the second epoch, etc.) are all executed in one epoch interval, and the solution result of the second positioning solution operation is output in the epoch interval, and the solution result is used as the positioning result corresponding to that epoch.
[0050] Taking the second epoch and the first epoch as examples, this illustrates how the existing technology obtains the solution results for the corresponding epoch based on the second positioning solution operation:
[0051] Determining the solution result for the second epoch: The first epoch interval after the second epoch (i.e., the first epoch interval out of N epoch intervals, for example...) Figure 2 (G1 interval in the middle), perform N steps of the second positioning solution operation to obtain the solution result of the second epoch.
[0052] Determining the solution result for the first epoch: The first epoch interval after the first epoch (i.e., the first epoch interval after N epoch intervals, for example...) Figure 2 G in N+1 (At intervals) Execute N steps of the second positioning solution operation to obtain the solution result of the first epoch.
[0053] In this application, the second positioning solution operation of the second epoch is distributed and executed at N epoch intervals. At each epoch interval, one of the N steps of the second positioning solution operation is executed to obtain the intermediate solution result of the corresponding step. The obtained intermediate solution result can be used as the input data for the next step of the second positioning solution operation in the next epoch.
[0054] The feedback information is obtained by performing N steps of the second positioning solution operation at N epoch intervals based on the second observation data of the second epoch. The process of performing N steps of the second positioning solution operation at N epoch intervals based on the second observation data of the second epoch is as follows:
[0055] In the first epoch interval, the first step of the second positioning solution operation is performed based on the second observation data to obtain the first intermediate solution result corresponding to the first step. The first intermediate solution result is used as the input data for the second step of the second positioning solution operation in the second epoch interval. In the second epoch interval, the second step of the second positioning solution is performed based on the first intermediate solution result at least. This process continues until the Nth step of the second positioning solution is performed in the Nth epoch interval. Finally, the final solution result of the second positioning solution operation is obtained in the Nth epoch interval.
[0056] The feedback information for the second epoch consists of part or all of the intermediate solution results output by each step of the second positioning and solving operation, as well as the final solution result. This feedback information serves as the input data for the various steps of the first positioning and solving operation.
[0057] In some embodiments, the feedback information of the second epoch includes: satellite position fitting information, quality control information, ambiguity information, and solution status information.
[0058] The purpose of each piece of feedback information is explained in detail below:
[0059] The satellite position fitting information includes satellite orbit parameter fitting information, which is used to determine the position of the second satellite corresponding to the first epoch.
[0060] Quality control information is used to indicate whether satellite data transmitted by the first satellite corresponding to the second epoch is available or unavailable.
[0061] It is understandable that when locating a positioning device in the second epoch, the receiver of the positioning device needs to receive satellite data transmitted by multiple first satellites and calculate the distance between itself and each satellite for positioning calculation. However, due to weather, environment, satellite or receiver hardware failure, the receiver may fail to receive data from some of the first satellites, or the receiver may receive data from some first satellites but fail to decode it correctly, rendering the satellite data unusable. Therefore, it is necessary to filter the received satellite data transmitted by multiple first satellites to select the satellite data from the first satellites that can be decoded and used normally, i.e., the usable satellite data.
[0062] In some embodiments, the quality control information is also used to indicate the type of positioning device, which may be a vehicle, an airplane, a mobile phone, etc., and different quality control strategies are formulated based on different types of positioning devices.
[0063] The ambiguity information of the second epoch is used for positioning calculation after cycle slip detection.
[0064] A cycle slip refers to a sudden change in carrier phase measurement caused by an interruption or malfunction of the satellite signal transmitted by the satellite, making it impossible to continuously track the satellite signal. When a cycle slip occurs, the integer multiple relationship of the carrier phase is disrupted, requiring cycle slip detection and repair to ensure the accuracy of the positioning results.
[0065] The ambiguity information of the second epoch is used for positioning calculation after cycle slip detection. Specifically, the ambiguity information of the second epoch is used to determine whether the ambiguity information of the first epoch remains fixed. If the ambiguity of the first epoch remains fixed, the positioning result of the first epoch can be calculated based on the RTK double-difference observation equation.
[0066] In the positioning calculation, the positioning device performs ambiguity resolution based on the maintenance recursion ambiguity information after cycle slip detection, calculates the distance from the satellite to the ground, and performs RTK positioning based on this distance.
[0067] The solution status information indicates that the solution status of the second epoch is a fixed solution, a floating-point solution, or a pseudorange solution.
[0068] The solution state describes the accuracy and reliability of RTK positioning. A fixed solution is the ideal solution state, indicating that the positioning result has high accuracy. When the solution state of the second epoch is a fixed solution, it means that the receiver in the positioning device has successfully calculated the precise position of the positioning device with a small error. In this case, the positioning result of the second epoch usually has a positioning accuracy at the centimeter level.
[0069] A floating-point solution is a suboptimal solution, and the positioning accuracy is relatively low compared to a fixed-point solution. When the solution in the second epoch is a floating-point solution, it means that the receiver can only obtain a relatively coarse position estimate. The error is relatively large but still within an acceptable range. In this case, the positioning result in the second epoch usually has a positioning accuracy of several centimeters to several meters.
[0070] Pseudorange solutions are lower-level solution states, and the positioning accuracy is relatively lower than that of floating-point solutions. When the solution state in the second epoch is a pseudorange solution, it means that the receiver only uses pseudorange measurements for positioning and has failed to use more precise measurements such as carrier phase. In this case, the positioning result in the second epoch typically has meter-level accuracy.
[0071] The above feedback information is the input data for each step of the first positioning solution operation. The steps of the first positioning solution operation include: satellite position fitting step, quality control step, cycle slip detection step, and positioning solution step.
[0072] The function of each step is explained below:
[0073] The satellite position fitting step is used to determine the position of the second satellite corresponding to the first epoch based on the satellite position fitting information.
[0074] The satellite position fitting information includes satellite orbit parameter fitting information, which consists of fitting parameters calculated in subsequent epochs at the first epoch interval. Subsequent epochs include the N-1 epochs between the second and first epochs, and the first epoch itself.
[0075] Satellite position fitting information serves as input data for the satellite position fitting step, while satellite orbit parameter fitting information is used to determine the position of the second satellite corresponding to the first epoch.
[0076] Specifically, the number of second satellites is greater than 1. For the satellite orbit of each second satellite, the satellite position (J is greater than 1, for example J=4), velocity and clock bias information of J points in the satellite orbit of the second satellite are calculated. Based on the calculated satellite position, velocity and clock bias information of J points, polynomial fitting calculation is performed to obtain the satellite position, velocity and clock bias information of subsequent epochs.
[0077] The quality control step is used to filter the first observation data based on quality control information to obtain the third observation data.
[0078] The first observation data includes at least one carrier signal obtained by baseband processing of satellite signals transmitted by at least one second satellite corresponding to the first epoch.
[0079] Quality control information is used to indicate whether satellite data transmitted by the first satellite corresponding to the second epoch is available or unavailable.
[0080] In the quality control step, satellite data transmitted by the first satellite that is unusable is discarded.
[0081] Suppose that in the second epoch, M satellite data transmitted by the first satellite are received, where M is greater than 1. Among them, Q satellite data transmitted by the first satellite are unusable, where M is greater than Q. Then, the Q satellite data transmitted by the first satellite are discarded, and the remaining satellite data transmitted by the first satellite are obtained.
[0082] Based on the quality control information of the satellite data transmitted by the first satellite, the first observation data corresponding to the second satellite is filtered to obtain the third observation data.
[0083] Considering the short time interval between each epoch, the similarity of positioning scenarios (e.g., the geographical environment where the positioning device is located) and satellite data quality information between different epochs, the quality control information of the first satellite can be used for the second satellite. That is, the first observation data corresponding to the second satellite can be filtered based on the quality control information of the first satellite.
[0084] It should be noted that in this application, the first observation data is acquired at the first epoch, which corresponds to the second satellite. Therefore, the first observation data can also be described as the observation data corresponding to the second satellite. Correspondingly, the second observation data is acquired at the second epoch, which corresponds to the first satellite. Therefore, the second observation data can also be described as the observation data corresponding to the first satellite.
[0085] The cycle slip detection step is used to perform cycle slip detection based on the third observation data to obtain the cycle slip detection result. The cycle slip detection result characterizes whether the carrier signal corresponding to the second satellite has experienced a cycle slip.
[0086] A cycle slip occurs when a satellite signal interruption or malfunction causes a sudden change in the phase measurement of the carrier signal in the observation data, making continuous tracking of the satellite signal impossible. When a cycle slip occurs, the integer multiple relationship of the carrier signal phase is disrupted, requiring cycle slip detection and repair to ensure the accuracy of the positioning results.
[0087] Cycle slip detection includes various detection methods, such as: baseband loss-of-lock identification, MW-GF multi-frequency combination detection, Doppler cycle slip detection, high-order difference cycle slip detection, and triple difference detection.
[0088] The positioning solution step is used to determine the positioning result for the first epoch.
[0089] The positioning result of the first epoch is determined by: the solution status of the second epoch indicated by the solution status information, the ambiguity information of the second epoch, the position of the second satellite, and the third observation data. Alternatively, the positioning result of the first epoch is determined by: the solution status of the second epoch indicated by the solution status information and the cycle slip detection results.
[0090] In this application, the first positioning solution operation is a simplified version of the second positioning solution operation. The number of steps to be performed in the first positioning solution operation is less than the number of steps to be performed in the second positioning solution operation. The execution complexity of the first positioning solution operation is lower than that of the second positioning solution operation. Therefore, the execution time of the first positioning solution operation is less than the execution time of the second positioning solution operation.
[0091] The first positioning solution operation can also be called a simple positioning solution operation, and the second positioning solution operation can also be called a complex positioning solution operation.
[0092] The first positioning solution operation can also be called the simplified positioning solution operation, and the second positioning solution operation can also be called the complete positioning solution operation.
[0093] As described above, after N epoch intervals, the second positioning calculation operation of the second epoch is completed, and feedback information is obtained. The rover can then perform the first positioning calculation operation in the next epoch interval based on the feedback information to obtain the positioning result of the first epoch. Thus, when performing positioning calculation for the first epoch, based on the feedback information of the second epoch and the first observation data of the first epoch, a shorter first positioning calculation operation can be performed within one epoch interval to obtain the positioning result of the first epoch. Compared with the existing technology that performs a longer second positioning calculation operation within one epoch interval to locate the rover, this reduces the time spent on positioning calculation, thereby improving positioning speed and reducing positioning latency. Furthermore, the positioning result of the first epoch is obtained based on the feedback information from the complete positioning calculation, thus ensuring positioning accuracy.
[0094] It should be noted that in the embodiments of this application, each epoch corresponds one-to-one with the subsequent epoch interval, for example, in Figure 2 In this context, the T1 epoch corresponds to the G1 epoch. When locating the rover, the positioning result determined based on the first positioning calculation operation needs to be output to the user at each epoch interval.
[0095] The execution of the first positioning solution operation is based on the feedback information of the second positioning solution operation. That is, before obtaining the first observation data of the first epoch, the second positioning solution operation needs to be executed at an interval of N epochs before the first epoch.
[0096] Specifically, for the j-th epoch of N epoch intervals, the input data for the j-th epoch interval is obtained; j is greater than or equal to 1 and less than or equal to N. In the j-th epoch interval, based on the input data of the j-th epoch interval, the j-th step of the second positioning solution operation is executed to obtain the feedback information corresponding to the j-th step; wherein, the second positioning solution includes N steps, and the N steps correspond one-to-one with the N epoch intervals.
[0097] The input data for the j-th epoch interval is the second observation data, or the input data for the j-th epoch is the second observation data and / or the feedback information corresponding to the (j-1)-th step of the second positioning solution operation.
[0098] Specifically, when j=1, the input data for the j-th epoch interval is the second observation data. The second observation data is the observation data for the second epoch.
[0099] When j is greater than 1, the input data for the j-th epoch interval is the second observation data and / or the feedback information corresponding to the j-th step. The feedback information corresponding to the (j-1)-th step is the intermediate solution result obtained by performing the (j-1)-th step of the second positioning solution.
[0100] For the j-th epoch, the total duration of the j-th solution stage of the first and second positioning solutions is less than the observation data sampling interval.
[0101] The first epoch described in this application embodiment can be any epoch in which the positioning solution result needs to be output when positioning the rover. That is, when positioning the rover, the first positioning solution operation needs to be performed at each epoch interval to obtain the positioning result of the corresponding epoch and output the positioning result to the user.
[0102] The more complete second calculation operation performed at N intervals after the second epoch is to assist in obtaining the positioning result of the first epoch, and then output the positioning result to the user. Since the positioning result of the first epoch is determined based on a simple positioning calculation operation, the execution time is short, which helps to reduce positioning latency; and since the positioning result of the first epoch is obtained based on a complete second calculation operation, positioning accuracy is guaranteed.
[0103] Accordingly, the positioning result of the second epoch is determined based on the feedback information corresponding to the previous N epochs of the second epoch. This feedback information is obtained by performing the second positioning solution operation at intervals of the previous N epochs of the second epoch.
[0104] For the epoch interval corresponding to the second epoch (e.g.) Figure 2 In the case of G1), the execution flow of performing the first step of the second positioning solution operation at the epoch interval to obtain feedback information for determining the positioning result of the first epoch is different from the execution flow of performing the first positioning solution operation at the epoch interval to determine the positioning result of the second epoch. In specific operation, the first positioning solution operation is executed first and the positioning result of the epoch is output to the user, and then the corresponding steps of the second positioning solution operation are executed.
[0105] As mentioned above, the solution status information indicates that the solution status of the second epoch includes fixed solution, floating-point solution, and pseudorange solution. The algorithm for determining the positioning result of the first epoch differs depending on the type of solution status indicated by the solution status information for the second epoch.
[0106] This application provides a positioning method that describes how to determine the positioning result of the first epoch when the solution state of the second epoch is a fixed solution.
[0107] Figure 3 This is a schematic diagram illustrating the implementation process of the positioning method provided in this application embodiment. The positioning method is applied to a mobile station device and includes the following steps:
[0108] Step 301: Determine the position of the second satellite corresponding to the first epoch based on the satellite position fitting information.
[0109] The satellite position fitting information includes satellite orbit parameter fitting information, which consists of fitting parameters for subsequent epochs calculated in the first epoch interval.
[0110] This information is used to determine the position of the second satellite corresponding to the first epoch. The satellite position fitting information serves as the input data for the satellite position fitting step, which is used to determine the position of the second satellite corresponding to the first epoch based on the satellite position fitting information.
[0111] Specifically, the number of second satellites is greater than 1. For the satellite orbit of each second satellite, the satellite position (J is greater than 1, for example J=4), velocity and clock bias information of J points in the satellite orbit of the second satellite are calculated. Based on the calculated satellite position, velocity and clock bias information of J points, polynomial fitting calculation is performed to obtain the satellite position, velocity and clock bias information of subsequent epochs.
[0112] Step 302: Filter the first observation data based on quality control information to obtain the third observation data.
[0113] Step 303: Perform cycle slip detection based on the third observation data to obtain cycle slip detection results.
[0114] The third observation data includes carrier signals from the available second satellite.
[0115] In this step, cycle slip detection is performed on the available carrier signal of the second satellite to obtain the cycle slip detection results. If a cycle slip occurs in the carrier signal of the second satellite, it means that the carrier signal of the second satellite may not be usable for positioning calculation. When performing positioning calculation on the positioning equipment, the satellite data corresponding to the carrier signal that has experienced a cycle slip needs to be removed.
[0116] In this embodiment, the method of cycle slip detection is not limited, and it can be any of the following detection methods: baseband loss of lock identification, MW-GF multi-frequency combination detection, Doppler cycle slip detection, high-order difference cycle slip detection, and triple difference detection.
[0117] Step 304: If the solution status information indicates that the solution status of the second epoch is a fixed solution, the ambiguity information of the second epoch is recursively processed based on the cycle slip detection results to determine whether the ambiguity information of the first epoch remains fixed.
[0118] In some embodiments, the ambiguity information of the second epoch is fixed double-difference ambiguity information, and the fixed ambiguity information is the ambiguity information that can be solved.
[0119] The cycle slip detection result indicates whether a cycle slip has occurred in the carrier phase of the second satellite corresponding to the first epoch. Based on the cycle slip detection result, the ambiguity information of the second epoch is recursively processed. The recursive process is as follows: the ambiguity information of each first satellite in the second epoch is passed to the first epoch.
[0120] Determine whether the ambiguity information of the first epoch remains fixed. That is, after the ambiguity information of at least one first satellite is recursively derived from the second epoch to the first epoch, determine whether the number of second satellites corresponding to the obtained ambiguity information that can remain fixed satisfies the first condition or whether the spatial geometric configuration satisfies the least squares solution. If the least squares solution is satisfied, that is, the ambiguity information of the first epoch can remain fixed.
[0121] It is understood that the positioning result for the first epoch is determined based on multiple second satellites, while the positioning result for the second epoch is determined based on multiple first satellites. In some embodiments, the multiple first satellites and the multiple second satellites are the same; in other embodiments, the multiple first satellites include the multiple second satellites.
[0122] In some embodiments, satellite ambiguity can be characterized based on whether a cycle slip occurs in the satellite's carrier phase.
[0123] For example, when determining the positioning result of the first epoch, the observation data of 10 second satellites are used. Among them, the carrier phase of the second observation data of 4 second satellites has cycle slipped. Therefore, the ambiguity information of the 4 second satellites cannot be kept fixed, while the ambiguity information of the remaining 6 second satellites can be kept fixed.
[0124] If the number of second satellites corresponding to the fixed ambiguity information satisfies the first condition, then the ambiguity of the first epoch can be kept fixed. The first condition is related to the total number of second satellites; for example, the first condition may be that the number of second satellites whose carrier phase experiences cycle slips is greater than half of the total number of second satellites.
[0125] Step 305: If the ambiguity information of the first epoch can be kept fixed, the positioning result of the first epoch is determined based on the position of the second satellite and the third observation data using the RTK carrier double-difference observation equation and the least squares adjustment algorithm.
[0126] Furthermore, with the ambiguity of the first epoch remaining fixed, the positioning result of the first epoch is determined based on the third observation data where the carrier phase has not experienced cycle slips and the position of the second satellite, using the RTK carrier double-difference observation equation and the least-two adjustment algorithm.
[0127] The RTK carrier double-difference equation is shown below:
[0128]
[0129] in, This represents the double-difference carrier observations of the two second satellites i and j, as well as the rover station r and the base station b. These double-difference carrier observations are obtained based on the third observation data of the two second satellites i and j.
[0130] The table shows the satellite-to-ground distance of the second satellite, which is obtained based on the position of the second satellite. λ represents the double-difference ambiguity parameter. This indicates double-difference carrier measurement noise.
[0131] The ambiguity of the first epoch remains fixed, and the above equation (1) can be simplified to only three parameters related to the coordinate position. Based on least squares adjustment, the correction amount of the positioning result of the first epoch can be calculated as follows:
[0132] X=(H T PH) T H T PL (2);
[0133] In the formula, X represents the correction amount of the positioning result of the first epoch, L represents the vector corresponding to the second observation data, H represents the coefficient matrix, and P represents the weight matrix.
[0134] X is used to determine the positioning result of the first epoch. Specifically, the initial value of the positioning result is substituted into the above equation (1) carrier double difference observation equation, and the correction amount X is obtained through least squares adjustment. The positioning result of the first epoch = initial value + correction amount.
[0135] In this embodiment, if the solution state of the second epoch is a fixed solution, the above-mentioned positioning method can be used to determine the positioning result of the first epoch by using the RTK carrier double-difference observation equation and the least two adjustment algorithm while keeping the ambiguity of the first epoch fixed.
[0136] This application provides a positioning method, which describes how to determine the positioning result of the first epoch when the solution state of the second epoch is a fixed solution, a floating-point solution, or a pseudo-range solution.
[0137] Figure 4 This is a schematic diagram illustrating the implementation process of the positioning method provided in the embodiments of this application, as shown below. Figure 4 As shown, the method includes the following steps:
[0138] Step 401: Determine the position of the second satellite corresponding to the first epoch based on the satellite position fitting information.
[0139] The satellite position fitting information includes satellite orbit parameter fitting information, and the position of the second satellite corresponding to the first epoch is determined based on the satellite orbit parameter fitting information.
[0140] Step 402: Filter the first observation data based on quality control information to obtain the third observation data.
[0141] Step 403: Perform cycle slip detection based on the third observation data to obtain cycle slip detection results.
[0142] The third observation data includes carrier signals from the available second satellite.
[0143] In this step, cycle slip detection is performed on the available carrier signal of the second satellite to obtain the cycle slip detection results. If a cycle slip occurs in the carrier signal of the second satellite, it means that the carrier signal of the second satellite may not be usable for positioning calculation. When performing positioning calculation on the positioning equipment, the satellite data corresponding to the carrier signal that has experienced a cycle slip needs to be removed.
[0144] In this embodiment, a three-difference detection method is used to perform cycle slip detection on the third observation data based at least on the carrier three-difference observation equation to obtain the cycle slip detection result.
[0145] The carrier triple-difference observation equation is as follows:
[0146]
[0147] In the above formula, This represents the double-difference carrier observation value of the first epoch calculated based on the third observation data; This represents the double-difference carrier observation from the previous epoch of the first epoch; This represents the double-difference geometric distance between the second satellite and the receiver corresponding to the first epoch; This represents the double-difference geometric distance between the satellite and the receiver corresponding to the previous epoch of the first epoch. It contains information on the positional changes between previous and subsequent epochs; This represents the error term in the three-difference equation.
[0148] The carrier triple-difference equation eliminates the double-difference ambiguity parameter. When the positions of the reference stations remain unchanged at previous and subsequent epochs, the only parameter to be estimated is the change in the position of the rover at the previous and subsequent epochs. In some embodiments, this parameter can be accurately calculated using least-squares adjustment.
[0149] Step 404: If the solution status of the second epoch indicated by the solution status information is a fixed solution, a floating-point solution, or a pseudorange solution, determine whether the number of second satellites corresponding to carrier signals that have not experienced cycle slips is greater than the first threshold based on the cycle slip detection results.
[0150] It is understandable that the cycle slip detection result characterizes whether the carrier signal of the second satellite has a cycle slip. When there are multiple second satellites, the cycle slip detection result characterizes the cycle slip situation of the carrier signal of each second satellite. Based on the cycle slip detection result, the cycle slip situation of the carrier signal of each second satellite can be obtained. If the number of second satellites that have not experienced a cycle slip is greater than the first threshold, the positioning result of the first epoch can be determined based on the position change.
[0151] The positioning results for the first epoch are determined as follows:
[0152] X(k)=X(k-1)+Δk (4);
[0153] Where X(k) is the positioning result of the first epoch, X(k-1) is the positioning result of the second epoch, and Δk is the change in position.
[0154] The first threshold is related to the total number of second satellites on which the first epoch is determined. The first threshold = x * total number, where x is greater than 0 and less than 1.
[0155] In practice, x can be set according to the actual situation.
[0156] It is understandable that if the number of second satellites that have not experienced cycle slips is greater than the first threshold, then all ambiguity information representing the first epoch can be kept fixed. At this time, the carrier three-difference position change can be calculated based on all the ambiguity maintenance.
[0157] Step 405: If the number of second satellites corresponding to carrier signals that have not experienced cycle slips is greater than the first threshold, determine the position change amount; the position change amount is obtained based on the position of the second satellite and the third observation data, using the RTK three-difference observation equation and the least squares adjustment algorithm.
[0158] If the number of second satellites that have not experienced cycle slips is greater than the first threshold, indicating that all ambiguity information can be kept fixed, then the positional change of the second epoch relative to the first epoch can be determined based on the RTK three-difference observation equation and the least squares adjustment equation.
[0159] Step 406: Determine the positioning result of the first epoch based on the position change and the positioning result of the second epoch. The position change represents the change of the positioning result of the first epoch relative to the positioning result of the second epoch.
[0160] It can be understood that the change in position is the change in position between the second epoch and the first epoch. The second epoch is before the first epoch, and the position of the second epoch, that is, the positioning result of the second epoch, is known. At this time, the positioning result of the first epoch can be determined based on the positioning result of the second epoch and the change in position.
[0161] In this embodiment, if the solution status information indicates that the solution of the second epoch is a fixed solution, a floating-point solution, or a pseudorange solution, and the number of second satellites that have not experienced cycle slips is greater than the first threshold, then the positioning result of the first epoch is determined based on the position change and the positioning result of the second epoch.
[0162] This application provides a positioning method. The positioning method described in this application describes how to determine the positioning result of the first epoch when the solution state of the second epoch is a floating-point solution or a pseudo-range solution and the position change of the first epoch cannot be obtained based on the cycle slip detection result.
[0163] Figure 5This is a schematic diagram illustrating the implementation process of the positioning method provided in the embodiments of this application, as shown below. Figure 5 As shown, the positioning method includes the following steps 501 to 505:
[0164] Step 501: Determine the position of the second satellite corresponding to the first epoch based on the satellite position fitting information.
[0165] The satellite position fitting information includes satellite orbit parameter fitting information, and the position of the second satellite corresponding to the first epoch is determined based on the satellite orbit parameter fitting information.
[0166] Step 502: Filter the first observation data based on quality control information to obtain the third observation data.
[0167] The third observation data includes observation data from available satellites, such as carrier signals from available second satellites.
[0168] In this step, cycle slip detection is performed on the available carrier signal of the second satellite to obtain the cycle slip detection results. If a cycle slip occurs in the carrier signal of the second satellite, it means that the carrier signal of the second satellite may not be usable for positioning calculation. When performing positioning calculation on the positioning equipment, the satellite data corresponding to the carrier signal that has experienced a cycle slip needs to be removed.
[0169] Step 503: Perform cycle slip detection based on the third observation data to obtain cycle slip detection results.
[0170] In this embodiment, a three-difference detection method is used to perform cycle slip detection on the third observation data based at least on the carrier three-difference observation equation to obtain the cycle slip detection result.
[0171] Step 504: If the solution status information indicates that the solution status of the second epoch is a floating-point solution or a pseudo-range solution, determine whether the position change of the first epoch is obtained based on the cycle slip detection results.
[0172] When the solution is a floating-point solution or a pseudorange solution, cycle slip detection is performed on the third observation data based on the carrier triple-difference observation equation.
[0173] As described above, the carrier triple-difference observation equation is as follows:
[0174]
[0175] In the above formula, This represents the double-difference carrier observation value of the first epoch calculated based on the third observation data, which is obtained from the third observation data; This represents the double-difference carrier observation from the previous epoch of the first epoch; This represents the double-difference geometric distance between the second satellite and the receiver corresponding to the first epoch; This represents the double-difference geometric distance between the satellite and the receiver corresponding to the previous epoch of the first epoch. It contains information on the positional changes between previous and subsequent epochs; This represents the error term in the three-difference equation.
[0176] The double-difference ambiguity parameter is eliminated in the carrier triple-difference equation. When the positions of the reference stations in the previous and subsequent epochs remain unchanged, the only parameter to be estimated is the change in the position of the rover station in the previous and subsequent epochs.
[0177] The position change is determined using least squares adjustment. Specifically, it is determined whether the number of second satellites without cycle slips in the carrier phase meets the requirements of least squares adjustment, and whether the residual of the least squares adjustment is less than a preset threshold. If the number of second satellites without cycle slips in the carrier phase meets the requirements of least squares adjustment, and the residual of the least squares adjustment is less than the preset threshold, then the position change can be obtained; otherwise, it cannot be obtained.
[0178] Step 505: If the position change of the first epoch cannot be obtained, the Kalman filter algorithm is used to obtain the positioning result of the first epoch based on the state transition matrix between the first epoch and the second epoch.
[0179] The equation corresponding to the Kalman prediction algorithm is as follows:
[0180]
[0181] Where X(k|k-1) is the positioning result of the first epoch, and X(k-1|k-1) is the positioning result of the second epoch. This represents the state transition matrix from the second epoch to the first epoch.
[0182] In this embodiment, the solution state information indicates that the solution of the second epoch is a floating-point solution or a pseudo-range solution, based on the state transition matrix from the second epoch to the first epoch and the localization result of the Kalman filter prediction algorithm in the first epoch.
[0183] Before performing the first positioning solution based on the observation data of the first epoch and the feedback information of the second epoch, it is necessary to determine whether there is feedback information.
[0184] This application embodiment provides another positioning method, the implementation flowchart of which is shown below. Figure 6 As shown, the method includes steps 601 to 607:
[0185] Step 601: Obtain the first observation data of the first epoch.
[0186] Step 602: Determine if there is feedback information from the second epoch; if yes, proceed to step 603; otherwise, proceed to step 604.
[0187] The feedback information for the second epoch is obtained by performing N steps of the second positioning solution operation at intervals N epochs prior to the second epoch.
[0188] Step 603: Based on the first observation data of the first epoch and the feedback information of the second epoch, perform the first positioning solution operation to obtain the positioning result of the first epoch.
[0189] If feedback information exists for the second epoch, it means that N steps of the second positioning solution operation were executed within the N epoch intervals preceding the second epoch, and this feedback information can be used to execute the first positioning solution operation.
[0190] Step 604: Perform the second positioning solution operation based on the first observation data of the first epoch to obtain the positioning result of the first epoch.
[0191] It is understandable that if there is no feedback information, the first positioning solution operation cannot be performed. Therefore, based on the observation data of the first epoch, the second positioning solution operation is performed for N steps at the epoch interval corresponding to the first epoch to obtain the positioning result of the first epoch, and the positioning result is output to the user.
[0192] Based on the foregoing embodiments, this application provides a positioning device, which includes various modules and units included in each module, and can be implemented by a processor; of course, it can also be implemented by specific logic circuits; in the implementation process, the processor can be a central processing unit (CPU), microprocessor (MPU), digital signal processor (DSP) or field programmable gate array (FPGA), etc.
[0193] Figure 7 This is a schematic diagram of the positioning device provided in the embodiments of this application, as shown below. Figure 7 As shown, the positioning device 70 includes an acquisition module 701 and an execution module 702, wherein:
[0194] The acquisition module 701 is used to acquire the first observation data of the first epoch.
[0195] The execution module 702 is used to perform a first positioning calculation operation based on the first observation data of the first epoch and the feedback information of the second epoch to obtain the positioning result of the first epoch; wherein the second epoch is located before the first epoch, the feedback information is obtained by performing a second positioning calculation operation based on the second observation data of the second epoch, and the feedback information includes the input data corresponding to the multiple processing steps of the first positioning calculation operation; the execution time of the first positioning calculation operation is less than the execution time of the second positioning calculation operation.
[0196] In some embodiments, the first positioning calculation operation includes: a satellite position fitting step, a quality control step, a cycle slip detection step, and a positioning calculation step; the feedback information includes: satellite position fitting information, quality control information, ambiguity information of the second epoch, and calculation status information, wherein the satellite position fitting information includes satellite orbit parameter fitting information, the quality control information is used to indicate whether the satellite data transmitted by the first satellite corresponding to the second epoch is available or unavailable, the ambiguity information of the second epoch is used to determine whether the ambiguity information of the first epoch remains fixed, and the calculation status information indicates whether the calculation status of the second epoch is a fixed solution, a floating-point solution, or a pseudorange solution; the first observation data includes at least a carrier signal obtained by baseband processing of satellite signals transmitted by at least one second satellite corresponding to the first epoch; the satellite position fitting step is used to determine the position of the satellite based on the satellite position fitting information. The system is missing the position of a second satellite; the quality control step is used to filter the first observation data based on the quality control information to obtain third observation data; the cycle slip detection step is used to perform cycle slip detection based on the third observation data to obtain cycle slip detection results; the cycle slip detection results characterize whether a cycle slip has occurred in the carrier signal corresponding to the second satellite; the positioning calculation step is used to determine the positioning result of the first epoch; wherein, determining the positioning result of the first epoch includes: determining the positioning result of the first epoch based on the calculation status of the second epoch indicated by the calculation status information, the ambiguity information of the second epoch, the position of the second satellite, and the third observation data, or, determining the positioning result of the first epoch includes: determining the positioning result of the first epoch based on the calculation status of the second epoch indicated by the calculation status information and the cycle slip detection results.
[0197] In some embodiments, the positioning device 70 further includes a determining module, which is used to, when the solution status information indicates that the solution status of the second epoch is a fixed solution, perform recursive processing on the ambiguity information of the second epoch based on the cycle slip detection result to determine whether the ambiguity information of the first epoch remains fixed; and when the ambiguity information of the first epoch can remain fixed, determine the positioning result of the first epoch based on the position of the second satellite and the third observation data, using the RTK carrier double-difference observation equation and the least squares adjustment algorithm.
[0198] In some embodiments, the determining module is further configured to, when the solution status information indicates that the solution status of the second epoch is a fixed solution, a floating-point solution, or a pseudorange solution, determine, based on the cycle slip detection result, whether the number of second satellites corresponding to carrier signals that have not experienced cycle slips is greater than a first threshold; if the number of second satellites corresponding to carrier signals that have not experienced cycle slips is greater than the first threshold, determine the position change amount; the position change amount is obtained based on the position of the second satellite and the third observation data, using the RTK three-difference observation equation and the least squares adjustment algorithm; and determine the positioning result of the first epoch based on the position change amount and the positioning result of the second epoch, wherein the position change amount characterizes the change in the positioning result of the first epoch relative to the positioning result of the second epoch.
[0199] In some embodiments, the determining module is further configured to determine, based on the cycle slip detection result, whether to obtain the position change of the first epoch when the solution status information indicates that the solution status of the second epoch is a floating-point solution or a pseudo-range solution;
[0200] If the position change of the first epoch cannot be obtained, the Kalman filter algorithm is used to determine the positioning result of the first epoch based on the state transition matrix between the first epoch and the second epoch.
[0201] In some embodiments, there are N epoch intervals between the second epoch and the first epoch; the acquisition module is further configured to acquire input data for the j-th epoch interval among the N epoch intervals; wherein j is greater than or equal to 1 and less than or equal to N; wherein the input data for the j-th epoch interval is the second observation data, or the input data for the j-th epoch is the second observation data and / or the feedback information corresponding to the j-th step of the second positioning and solving operation; in the j-th epoch interval, based on the input data of the j-th epoch, the j-th step of the second positioning and solving operation is executed to obtain the feedback information corresponding to the j-th step; wherein the second positioning and solving operation includes N steps, and the N steps correspond one-to-one with the N epoch intervals.
[0202] In some embodiments, the execution module is configured to determine whether there is feedback information corresponding to the second epoch before the first observation data of the first epoch and the feedback information of the second epoch; if there is no feedback information corresponding to the second epoch, the second positioning solution operation is performed based on the observation data of the first epoch to obtain the positioning result of the first epoch.
[0203] The descriptions of the above device embodiments are similar to those of the above method embodiments, and have similar beneficial effects. For technical details not disclosed in the device embodiments of this application, please refer to the descriptions of the method embodiments of this application for understanding.
[0204] It should be noted that, in the embodiments of this application... Figure 7 The module division shown in the positioning device is illustrative and represents only one logical functional division; in actual implementation, other division methods may be used. Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, exist as separate physical units, or be integrated into one unit with two or more units. The integrated units can be implemented in hardware, as software functional units, or a combination of both.
[0205] It should be noted that, in the embodiments of this application, if the above-described data aggregation method is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiments of this application, or the part that contributes to the related technology, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause an electronic device to execute all or part of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), magnetic disks, or optical disks. Thus, the embodiments of this application are not limited to any specific hardware and software combination.
[0206] This application provides an electronic device. Figure 8 This is a schematic diagram of the hardware entity of the electronic device according to an embodiment of this application, such as... Figure 8 As shown, the electronic device 80 includes a memory 801 and a processor 802. The memory 801 stores a computer program that can run on the processor 802. When the processor 802 executes the program, it implements the steps in the method provided in the above embodiments.
[0207] It should be noted that the memory 801 is configured to store instructions and applications executable by the processor 802, and can also cache data to be processed or already processed (e.g., image data, audio data, voice communication data and video communication data) in the processor 802 and various modules in the electronic device 80, which can be implemented by flash memory or random access memory (RAM).
[0208] This application provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps in the data aggregation method provided in the above embodiments.
[0209] This application provides a computer program product containing instructions that, when run on a computer, causes the computer to perform the steps in the data aggregation method provided in the above-described method embodiments.
[0210] It should be noted that the descriptions of the storage medium and device embodiments above are similar to the descriptions of the method embodiments above, and have similar beneficial effects. For technical details not disclosed in the storage medium, storage medium, and device embodiments of this application, please refer to the descriptions of the method embodiments of this application for understanding.
[0211] It should be understood that the phrases "one embodiment," "an embodiment," or "some embodiments" mentioned throughout the specification mean that a specific feature, structure, or characteristic related to an embodiment is included in at least one embodiment of this application. Therefore, "in one embodiment," "in one embodiment," or "in some embodiments" appearing throughout the specification do not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. It should be understood that in the various embodiments of this application, the sequence numbers of the above-described processes do not imply a sequential order of execution; the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application. The sequence numbers of the above-described embodiments are merely for descriptive purposes and do not represent the superiority or inferiority of the embodiments. The descriptions of the various embodiments above tend to emphasize the differences between the various embodiments; their similarities or commonalities can be referred to mutually, and for the sake of brevity, they will not be repeated here.
[0212] In this article, the term "and / or" is merely a description of the relationship between related objects, indicating that there can be three kinds of relationships. For example, object A and / or object B can represent three situations: object A exists alone, object A and object B exist simultaneously, and object B exists alone.
[0213] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0214] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. The embodiments described above are merely illustrative. For example, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple modules or components can be combined, or integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed can be through some interfaces, and the indirect coupling or communication connection between devices or modules can be electrical, mechanical, or other forms.
[0215] The modules described above as separate components may or may not be physically separate. The components shown as modules may or may not be physical modules. They may be located in one place or distributed across multiple network units. Some or all of the modules may be selected to achieve the purpose of this embodiment according to actual needs.
[0216] In addition, each functional module in the various embodiments of this application can be integrated into one processing unit, or each module can be a separate unit, or two or more modules can be integrated into one unit; the integrated modules can be implemented in hardware or in the form of hardware plus software functional units.
[0217] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as mobile storage devices, read-only memory (ROM), magnetic disks, or optical disks.
[0218] Alternatively, if the integrated units described above are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, or the parts that contribute to related technologies, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause an electronic device to execute all or part of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROMs, magnetic disks, or optical disks.
[0219] The methods disclosed in the several method embodiments provided in this application can be arbitrarily combined without conflict to obtain new method embodiments.
[0220] The features disclosed in the several product embodiments provided in this application can be arbitrarily combined without conflict to obtain new product embodiments.
[0221] The features disclosed in the several method or device embodiments provided in this application can be arbitrarily combined without conflict to obtain new method or device embodiments.
[0222] The above description is merely an embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A positioning method, characterized in that, The method includes: Obtain the first observation data of the first epoch; Based on the first observation data of the first epoch and the feedback information of the second epoch, a first positioning solution operation is performed to obtain the positioning result of the first epoch; wherein, the second epoch is located before the first epoch, and the feedback information is obtained by performing a second positioning solution operation based on the second observation data of the second epoch, and the feedback information includes the input data corresponding to the multiple processing steps of the first positioning solution operation; the duration of performing the first positioning solution operation is less than the duration of performing the second positioning solution operation; There are N epoch intervals between the second epoch and the first epoch; before acquiring the first observation data of the first epoch, the method further includes: For the j-th epoch among N epoch intervals, obtain the input data for the j-th epoch interval; where j is greater than or equal to 1 and less than or equal to N; where the input data for the j-th epoch interval is the second observation data, or the input data for the j-th epoch is the second observation data and / or the feedback information corresponding to the (j-1)-th step of the second positioning solution operation; At the j-th epoch interval, based on the input data of the j-th epoch, the j-th step of the second positioning and solving operation is executed to obtain the feedback information corresponding to the j-th step; wherein, the second positioning and solving operation includes N steps, and the N steps correspond one-to-one with the N epoch intervals.
2. The method according to claim 1, characterized in that, The first positioning solution operation includes: a satellite position fitting step, a quality control step, a cycle slip detection step, and a positioning solution step; the feedback information includes: satellite position fitting information, quality control information, ambiguity information of the second epoch, and solution status information, wherein the satellite position fitting information includes satellite orbit parameter fitting information, the quality control information is used to indicate whether the satellite data sent by the first satellite corresponding to the second epoch is available or unavailable, the ambiguity information of the second epoch is used to determine whether the ambiguity information of the first epoch remains fixed, and the solution status information indicates whether the solution status of the second epoch is a fixed solution, a floating-point solution, or a pseudorange solution; The first observation data includes at least a carrier signal obtained by baseband processing of a satellite signal transmitted by at least one second satellite corresponding to the first epoch; The satellite position fitting step is used to determine the position of the at least one second satellite based on the satellite position fitting information; The quality control step is used to filter the first observation data based on the quality control information to obtain the third observation data; The cycle slip detection step is used to perform cycle slip detection based on the third observation data to obtain a cycle slip detection result; the cycle slip detection result indicates whether a cycle slip has occurred in the carrier signal corresponding to the second satellite. The positioning calculation step is used to determine the positioning result of the first epoch; wherein, Determining the positioning result of the first epoch includes: determining the positioning result of the first epoch based on the solution status of the second epoch indicated by the solution status information, the ambiguity information of the second epoch, the position of the second satellite, and the third observation data; or, Determining the positioning result of the first epoch includes: determining the positioning result of the first epoch based on the solution status of the second epoch indicated by the solution status information and the cycle slip detection result.
3. The method according to claim 2, characterized in that, The determination of the positioning result for the first epoch based on the solution status of the second epoch indicated by the solution status information, the ambiguity information of the second epoch, the position of the second satellite, and the third observation data includes: When the solution status information indicates that the solution status of the second epoch is a fixed solution, the ambiguity information of the second epoch is recursively processed based on the cycle slip detection result to determine whether the ambiguity information of the first epoch remains fixed. If the ambiguity information of the first epoch can be kept fixed, the positioning result of the first epoch is determined based on the position of the second satellite and the third observation data, using the RTK carrier double-difference observation equation and the least squares adjustment algorithm.
4. The method according to claim 2, characterized in that, The determination of the positioning result of the first epoch based on the solution status of the second epoch indicated by the solution status information and the cycle slip detection result includes: When the solution status information indicates that the solution status of the second epoch is a fixed solution, a floating-point solution, or a pseudorange solution, based on the cycle slip detection results, it is determined whether the number of second satellites corresponding to carrier signals that have not experienced cycle slips is greater than a first threshold. If the number of second satellites corresponding to carrier signals that have not experienced cycle slips is greater than the first threshold, the position change is determined; the position change is obtained based on the position of the second satellite and the third observation data, using the RTK three-difference observation equation and the least squares adjustment algorithm. The positioning result of the first epoch is determined based on the position change and the positioning result of the second epoch, wherein the position change represents the change of the positioning result of the first epoch relative to the positioning result of the second epoch.
5. The method according to claim 2, characterized in that, The determination of the positioning result of the first epoch based on the solution status of the second epoch indicated by the solution status information and the cycle slip detection result includes: If the solution status information indicates that the solution status of the second epoch is a floating-point solution or a pseudo-range solution, based on the cycle slip detection result, determine whether to obtain the position change of the first epoch; If the position change of the first epoch cannot be obtained, the Kalman filter algorithm is used to determine the positioning result of the first epoch based on the state transition matrix between the first epoch and the second epoch.
6. The method according to claim 1, characterized in that, Before performing the first positioning calculation operation based on the first observation data of the first epoch and the feedback information of the second epoch, the method further includes: Determine whether feedback information corresponding to the second epoch exists; If there is no feedback information corresponding to the second epoch, the second positioning solution operation is performed based on the first observation data of the first epoch to obtain the positioning result of the first epoch.
7. A positioning device, characterized in that, include: The acquisition module is used to acquire the first observation data of the first epoch; An execution module is configured to perform a first positioning calculation operation based on the first observation data of the first epoch and the feedback information of the second epoch, to obtain the positioning result of the first epoch; wherein the second epoch is located before the first epoch, and the feedback information is obtained by performing a second positioning calculation operation based on the second observation data of the second epoch, and the feedback information includes the input data corresponding to the multiple processing steps of the first positioning calculation operation; the execution time of the first positioning calculation operation is less than the execution time of the second positioning calculation operation; There are N epoch intervals between the second epoch and the first epoch; the acquisition module is further configured to acquire input data for the j-th epoch interval among the N epoch intervals; wherein j is greater than or equal to 1 and less than or equal to N; wherein the input data for the j-th epoch interval is the second observation data, or the input data for the j-th epoch is the second observation data and / or the feedback information corresponding to the (j-1)-th step of the second positioning and solving operation; in the j-th epoch interval, based on the input data of the j-th epoch, the j-th step of the second positioning and solving operation is executed to obtain the feedback information corresponding to the j-th step; wherein the second positioning and solving operation includes N steps, and the N steps correspond one-to-one with the N epoch intervals.
8. An electronic device, characterized in that, The method includes a memory and a processor, the memory storing a computer program that can run on the processor, the processor executing the program to implement the method of any one of claims 1 to 6.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Positioning calculation method and device and storage medium
CN112684481A
GNSS (Global Navigation Satellite System) resolving method and device, positioning system, electronic equipment and storage medium
CN115856973A