Positioning method, system and device based on UWB single base station, medium and product
By combining inertial measurement unit (IMU) and Kalman filtering to compensate for UWB single-base station positioning data, the problem of data drift in UWB single-base station positioning system under complex environments is solved, achieving high-precision and stable positioning results.
Patent Information
- Application Number
- CN202511536782.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-27
- Publication Date
- 2026-02-17
AI Technical Summary
In underground coal mines, UWB single-base station positioning systems experience positioning data drift due to environmental interference and signal reflection, affecting positioning accuracy and stability.
The movement direction of the positioning tag is determined by combining the inertial measurement unit (IMU), and the initial UWB positioning data is compensated by Kalman filtering and weighted averaging. The UWB positioning data is corrected by using the IMU positioning data to suppress data drift.
It improves the accuracy and stability of UWB single-base station positioning, overcomes the positioning instability and IMU error accumulation problems in complex environments, and ensures the robustness and long-term positioning stability of the system.
Smart Images

Figure CN121547849A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of positioning technology, and in particular to a positioning method, system, device, medium and product based on a UWB single base station. Background Technology
[0002] Ultra-wideband (UWB) technology has advantages such as high positioning accuracy and strong anti-interference capability, and has been widely used. UWB positioning systems are generally divided into multi-base station positioning and single-base station positioning. Among them, single-base station positioning systems have great advantages in some scenarios where positioning accuracy requirements are not particularly high due to their low cost and flexible deployment.
[0003] However, in practical applications, UWB single-base station positioning systems are prone to data drift due to the confined space in coal mines and the influence of environmental interference and signal reflection. This leads to decreased positioning accuracy and affects the reliability and stability of the system. Therefore, providing a simple and effective method to suppress data drift in UWB single-base station positioning systems has become a problem urgently needing to be solved by those skilled in the art. Summary of the Invention
[0004] The purpose of this application is to provide a positioning method, system, device, medium, and product based on a single UWB base station. By combining an inertial measurement unit (IMU) to determine the movement direction of the positioning tag, the positioning information of UWB and IMU can be fused to complement each other's advantages, effectively suppress data drift caused by multipath propagation, non-line-of-sight propagation, and other factors during the UWB single base station positioning process, and improve the accuracy and stability of positioning.
[0005] To achieve the above objectives, this application provides the following solution: Firstly, this application provides a positioning method based on a single UWB base station, comprising: The motion state data of the positioning tag is collected by the inertial measurement unit and the position is calculated to obtain the IMU positioning data.
[0006] When a single UWB base station receives a UWB signal from a positioning tag, it acquires initial UWB positioning data.
[0007] The positional deviation between the initial UWB positioning data and the IMU positioning data is compared with a set threshold to determine whether the initial UWB positioning data is abnormal.
[0008] When the initial UWB positioning data is abnormal, the Kalman filter method is used to perform strong compensation on the initial UWB positioning data using IMU positioning data to obtain the positioning result when the initial UWB positioning data is abnormal.
[0009] When the initial UWB positioning data is normal, a weighted average method is used to weakly compensate or not compensate the initial UWB positioning data using IMU positioning data, so as to obtain the positioning result when the initial UWB positioning data is normal.
[0010] When a single UWB base station loses the UWB signal of its positioning tag, the IMU positioning data is directly used as the positioning result when the UWB signal is lost.
[0011] In one embodiment, the motion state data of the positioning tag is collected by an inertial measurement unit (IMU) and the position is calculated to obtain IMU positioning data, specifically including: The accelerometer of the inertial measurement unit collects the original x-axis acceleration of the positioning tag in the carrier coordinate system. and the original acceleration along the y-axis .
[0012] The z-axis angular velocity of the positioning tag is collected by the gyroscope of the inertial measurement unit. .
[0013] z-axis angular velocity Integrating, we obtain the heading angle as a function of time, using the following formula: .
[0014] in, Let be the heading angle at time t. The initial heading angle, For integration variables, For time.
[0015] The original acceleration along the x-axis in the carrier coordinate system and the original acceleration along the y-axis Transform to the global coordinate system to obtain the x-axis transformation acceleration in the global coordinate system. and y-axis transformation acceleration The formula is: .
[0016] .
[0017] in, Let x be the acceleration along the x-axis at time t. Let be the y-axis acceleration at time t.
[0018] Acceleration with respect to the x-axis and y-axis transformation acceleration Integrating each component separately yields the x-axis transformation velocity. y-axis transformation speed The formula is: .
[0019] .
[0020] in, Let x be the velocity of the x-axis transformation at time t. Let be the y-axis transformation velocity at time t. , These represent the initial x-axis transformation velocity and the initial y-axis transformation velocity, respectively, at the start from a standstill. , .
[0021] velocity transformation along the x-axis y-axis transformation speed Integrating each component separately yields the IMU positioning data, using the following formula: .
[0022] .
[0023] in, For IMU location data, These are the initial position coordinates of the IMU.
[0024] In one embodiment, when a UWB single base station receives a UWB signal from a positioning tag, it acquires initial UWB positioning data, specifically including: Based on the UWB signal from the positioning tag and the antenna distance difference between the antennas on the UWB single base station, the angle between the positioning tag and the UWB single base station is calculated using the following formula: .
[0025] in, The incident direction angle, For the phase difference of the UWB signal, d is the UWB signal wavelength, and d is the antenna distance difference.
[0026] The distance D between the positioning tag and the UWB single base station is calculated using the TOF algorithm.
[0027] The PDOA algorithm is used to obtain initial UWB positioning data based on the angle and distance between the positioning tag and a single UWB base station. The formula is: .
[0028] in, These are the coordinates of a single UWB base station.
[0029] In one embodiment, the positional deviation between the initial UWB positioning data and the IMU positioning data is compared with a set threshold to determine whether the initial UWB positioning data is abnormal. Specifically, this includes: Calculate the positional deviation between the initial UWB positioning data and the IMU positioning data. The formula is: .
[0030] Set the size of the sliding window to N, and calculate the standard deviation of the initial UWB positioning data within the window. The formula is: .
[0031] .
[0032] .
[0033] .
[0034] .
[0035] in, The standard deviation of the x-coordinate of the initial UWB positioning data within the window. The mean of the x-coordinates within the window. Let x be the x-coordinate of the i-th initial UWB positioning data within the window. The standard deviation of the y-coordinate of the initial UWB positioning data within the window. This represents the mean of the y-coordinates within the window. Let x be the x-coordinate of the i-th initial UWB positioning data within the window.
[0036] Set the threshold T as ,like If the initial UWB positioning data is normal; The initial UWB positioning data is determined to be abnormal; where k is a constant.
[0037] In one embodiment, based on the Kalman filter method, strong compensation is performed on the initial UWB positioning data using IMU positioning data to obtain the positioning result when the initial UWB positioning data is abnormal, specifically including: Construct the state vector and state equations. The formula for the state vector is: .
[0038] in, Let k be the state vector at time k. Let UWB be the UWB position error of the UWB signal at time k. This represents the rate of change of the positioning error of the UWB signal in different directions.
[0039] The formula for the state equation is: .
[0040] .
[0041] in, Let k be the state vector at time k-1. It is the system noise at time k-1, which follows the law of... , Let F be the state transition noise covariance matrix at time k-1, and let F be the state transition matrix. Let k be the time difference between time k-1 and time k.
[0042] Using IMU positioning data as observation data, we construct observation vectors and observation equations. The formula for the observation vector is: .
[0043] in, Let k be the observation vector at time k. This represents the difference between the initial UWB positioning data and the IMU positioning data in the x-direction. This represents the difference in the y-direction between the initial UWB positioning data and the IMU positioning data.
[0044] The formula for the observation equation is: .
[0045] .
[0046] in, The observation noise at time k follows a certain order. , Let H be the observation noise covariance matrix at time k-1, and H be the observation matrix.
[0047] Based on the state equation and the observation equation, the prediction and update steps of Kalman filtering are performed to obtain the optimal estimate of the state vector. The formula in the prediction step is: .
[0048] .
[0049] in, Let be the prior state estimate at time k, representing the prediction of the state at time k based on all observations up to time k-1. Let be the posterior state estimate at time k-1, and let represent the optimal estimate at time k-1. Let be the prior estimation error covariance matrix at time k; It is the posterior estimation error covariance matrix at time k-1. Let be the state transition noise covariance matrix at time k.
[0050] The formula in the update step is: .
[0051] .
[0052] .
[0053] in, To provide the optimal estimate of the state at time k based on data from time k and previous times, The covariance matrix of the optimal estimated state. It is the identity matrix. The Kalman gain at time k, for The transpose of .
[0054] The error estimates in the x and y directions are extracted from the optimal estimate of the state vector, using the following formula: .
[0055] .
[0056] in, This represents the error estimate of the initial UWB positioning data in the x-direction. This represents the error estimate of the initial UWB positioning data in the y-direction. for The first element.
[0057] The initial UWB positioning data is compensated using error estimates to obtain the positioning result when the initial UWB positioning data is abnormal. The formula is as follows: .
[0058] .
[0059] in, for The third element; The location result when the initial UWB location data is abnormal.
[0060] In one embodiment, a weighted average method is used to weakly compensate or not compensate the initial UWB positioning data using IMU positioning data, to obtain the positioning result when the initial UWB positioning data is normal. The specific formula is as follows: .
[0061] in, This is the positioning result when the initial UWB positioning data is normal. The weighting coefficients for the initial UWB positioning data. Weighting coefficients for IMU location data. and .
[0062] Secondly, this application provides a positioning system based on a single UWB base station, including: an IMU positioning data module, a UWB signal receiving module, an anomaly determination module, a data anomaly processing module, a data normal processing module, and a UWB signal loss processing module.
[0063] The IMU positioning data module is used to collect motion state data of positioning tags through the inertial measurement unit and perform position calculation to obtain IMU positioning data.
[0064] The UWB signal receiving module is used to obtain initial UWB positioning data when a single UWB base station receives a UWB signal from a positioning tag.
[0065] The anomaly detection module is used to compare the positional deviation between the initial UWB positioning data and the IMU positioning data with a set threshold to determine whether the initial UWB positioning data is abnormal.
[0066] The data anomaly handling module is used to perform strong compensation on the initial UWB positioning data based on the Kalman filter method and IMU positioning data when the initial UWB positioning data is abnormal, so as to obtain the positioning result when the initial UWB positioning data is abnormal.
[0067] The data normalization module is used to perform weak compensation or no compensation on the initial UWB positioning data when the initial UWB positioning data is normal, using a weighted average method and IMU positioning data to obtain the positioning result when the initial UWB positioning data is normal.
[0068] The UWB signal loss processing module is used to directly use IMU positioning data as the positioning result when a single UWB base station loses the UWB signal of the positioning tag.
[0069] Thirdly, this application provides a computer device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the positioning method based on a UWB single base station as described above.
[0070] Fourthly, this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the positioning method based on a UWB single base station as described above.
[0071] Fifthly, this application provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the positioning method based on a UWB single base station as described above.
[0072] According to the specific embodiments provided in this application, the following technical effects are disclosed: This application provides a positioning method, system, device, medium, and product based on a single UWB base station. It uses an inertial measurement unit (IMU) to collect motion state data of a positioning tag in real time and calculate its position to obtain IMU positioning data. This data is then used to correct the initial UWB positioning data, effectively suppressing UWB single-base station positioning data drift caused by multipath propagation, non-line-of-sight propagation, and other factors, thus improving positioning accuracy. By comparing the position deviation between the initial UWB positioning data and the IMU positioning data with a set threshold, it can accurately identify UWB signal anomalies, improving system robustness. When the initial UWB positioning data is abnormal, a Kalman filter is used to suppress data drift using IMU positioning data, providing strong compensation to the UWB data, resulting in a more accurate positioning result. The system exhibits high stability, overcoming the problems of UWB positioning instability in complex environments and IMU error accumulation. When the initial UWB positioning data is normal, a weighted average method is used to weakly compensate or not compensate the UWB data, making full use of the high-precision UWB data while avoiding errors caused by overcompensation. When the UWB signal is lost, IMU positioning data is used directly as the positioning result, enabling the system to still provide positioning information when the UWB signal is unavailable, avoiding positioning interruption and improving the system's robustness. Different optimization strategies are used to calculate the positioning result for different UWB signals, which not only specifically corrects the environmental interference error of UWB and retains its high-precision characteristics, but also avoids the cumulative error caused by relying solely on the IMU, ensuring long-term positioning stability. Attached Figure Description
[0073] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0074] Figure 1 A schematic flowchart illustrating a positioning method based on a single UWB base station, provided in an embodiment of this application; Figure 2 A detailed flowchart of a positioning method based on a single UWB base station provided in an embodiment of this application; Figure 3 A functional module diagram of a positioning system based on a single UWB base station provided in an embodiment of this application; Figure 4 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application.
[0075] Figure label: 1-IMU positioning data module, 2-UWB signal receiving module, 3-anomaly detection module, 4-data anomaly processing module, 5-data normal processing module, 6-UWB signal loss processing module. Detailed Implementation
[0076] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0077] To make the above-mentioned objectives, features and advantages of this application more apparent and understandable, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0078] like Figures 1-2 As shown, this application embodiment provides a positioning method based on a single UWB base station, including the following steps 201 to 206. Wherein: Step 201: Collect motion state data of the positioning tag through the inertial measurement unit and perform position calculation to obtain IMU positioning data.
[0079] Step 202: When a UWB single base station receives the UWB signal from the positioning tag, it acquires the initial UWB positioning data.
[0080] Step 203: Compare the position deviation between the initial UWB positioning data and the IMU positioning data with a set threshold to determine whether the initial UWB positioning data is abnormal.
[0081] Step 204: When the initial UWB positioning data is abnormal, the initial UWB positioning data is strongly compensated using IMU positioning data based on the Kalman filter method to obtain the positioning result when the initial UWB positioning data is abnormal.
[0082] Step 205: When the initial UWB positioning data is normal, the weighted average method is used to weakly compensate or not compensate the initial UWB positioning data using IMU positioning data to obtain the positioning result when the initial UWB positioning data is normal.
[0083] Step 206: When a single UWB base station loses the UWB signal of the positioning tag, the IMU positioning data is directly used as the positioning result when the UWB signal is lost.
[0084] By implementing steps 201 to 206 above, this application uses an inertial measurement unit to collect the motion state data of the positioning tag in real time and calculate its position to obtain IMU positioning data. This data is then used to correct the initial UWB positioning data, effectively suppressing UWB single-base station positioning data drift caused by multipath propagation, non-line-of-sight propagation, and other factors, thus improving positioning accuracy. By comparing the position deviation between the initial UWB positioning data and the IMU positioning data with a set threshold, UWB signal anomalies can be accurately identified, improving system robustness. When the initial UWB positioning data is abnormal, a Kalman filter is used with the IMU positioning data to suppress data drift and strongly compensate for the UWB data, resulting in highly stable positioning results after strong compensation. This system overcomes the problems of UWB positioning instability in complex environments and IMU error accumulation. When the initial UWB positioning data is normal, a weighted average method is used to weakly compensate or not compensate the UWB data, making full use of the high-precision UWB data while avoiding errors caused by overcompensation. When the UWB signal is lost, IMU positioning data is used directly as the positioning result, enabling the system to still provide positioning information when the UWB signal is unavailable, avoiding positioning interruption and improving the system's robustness. Different optimization strategies are used to calculate the positioning result for different UWB signals, which not only specifically corrects the environmental interference error of UWB and retains its high-precision characteristics, but also avoids the cumulative error caused by relying solely on the IMU, ensuring long-term positioning stability.
[0085] In another exemplary embodiment of this application, step 201 is replaced by steps 301 to 306: Step 301: Acquire the original x-axis acceleration of the positioning tag in the carrier coordinate system using the accelerometer of the inertial measurement unit. and the original acceleration along the y-axis .
[0086] Step 302: Acquire the z-axis angular velocity of the positioning tag using the gyroscope of the inertial measurement unit. .
[0087] Step 303, angular velocity along the z-axis Integrating, we obtain the heading angle as a function of time, using the following formula: .
[0088] in, Let be the heading angle at time t. The initial heading angle, For integration variables, For time.
[0089] Step 304, the original x-axis acceleration in the carrier coordinate system and the original acceleration along the y-axis Transform to the global coordinate system to obtain the x-axis transformation acceleration in the global coordinate system. and y-axis transformation acceleration The formula is: .
[0090] .
[0091] in, Let x be the acceleration along the x-axis at time t. Let be the y-axis acceleration at time t.
[0092] Step 305, transform the acceleration along the x-axis and y-axis transformation acceleration Integrating each component separately yields the x-axis transformation velocity. y-axis transformation speed The formula is: .
[0093] .
[0094] in, Let x be the velocity of the x-axis transformation at time t. Let be the y-axis transformation velocity at time t. , These represent the initial x-axis transformation velocity and the initial y-axis transformation velocity, respectively, at the start from a standstill. , .
[0095] Step 306, change the speed along the x-axis y-axis transformation speed Integrating each component separately yields the IMU positioning data, using the following formula: .
[0096] .
[0097] in, For IMU location data, These are the initial position coordinates of the IMU.
[0098] In step 301, in the carrier coordinate system, the attitude changes of vehicles and pedestrians during movement are reflected on the xy-plane axes, with the z-axis perpendicular to the ground. Generally, the acceleration is zero, so the dynamic positioning of the positioning tag only needs to consider two-dimensional positioning. Data acquisition is performed in steps 301-302, obtaining the object's initial acceleration along the x and y axes using an accelerometer, denoted as... , ; Measure the angular velocity of an object along its axis perpendicular to the xy-plane (z-axis) using a gyroscope. This is used to calculate the angular change of an object. The angular velocity is integrated in step 303 to obtain the heading angle. The changes are as follows: Step 304 performs data correction, transforming the measured planar acceleration from the carrier coordinate system to the global coordinate system. Step 305 performs velocity calculation: integrating the acceleration in the global coordinate system to obtain the velocity in the global coordinate system. Step 306 performs position calculation: integrating the velocity in the global coordinate system to obtain the displacement, combined with the initial IMU position. Calculate the two-dimensional coordinates .
[0099] In another exemplary embodiment of this application, step 202 is replaced by steps 401 to 403: Step 401: Based on the UWB signal of the positioning tag and the antenna distance difference of the antenna on the UWB single base station, calculate the angle between the positioning tag and the UWB single base station. The formula is: .
[0100] in, The incident direction angle, For the phase difference of the UWB signal, d is the UWB signal wavelength, and d is the antenna distance difference.
[0101] Step 402: The distance D between the positioning tag and the UWB single base station is calculated using the TOF algorithm.
[0102] Step 403: Using the PDOA algorithm, initial UWB positioning data is obtained based on the angle and distance between the positioning tag and the UWB single base station. The formula is: .
[0103] in, These are the coordinates of a single UWB base station.
[0104] In step 401, two or more antennas are set up on the UWB single base station. The base station and the positioning tag send and receive ultra-wideband pulse signals. The incident direction angle is obtained based on the antenna distance difference d, thereby determining the orientation of the positioning tag. In step 403, the coordinates of the positioning tag, i.e., the initial UWB positioning data, are calculated based on the angle and distance between the positioning tag and the UWB single base station. .
[0105] This application significantly improves positioning accuracy by calculating the angle and distance between the positioning tag and a single UWB base station, and combining this with the PDOA algorithm to obtain initial UWB positioning data. This improves the reliability of positioning, resists the effects of multipath interference and environmental noise, and enhances the adaptability and flexibility of the system, enabling the system to maintain high performance even in complex environments.
[0106] In another exemplary embodiment of this application, step 203 is replaced by steps 501 to 503: Step 501: Calculate the positional deviation between the initial UWB positioning data and the IMU positioning data. The formula is: .
[0107] Step 502: Set the size of the sliding window to N, and calculate the standard deviation of the initial UWB positioning data within the window. The formula is: .
[0108] .
[0109] .
[0110] .
[0111] .
[0112] in, The standard deviation of the x-coordinate of the initial UWB positioning data within the window. The mean of the x-coordinates within the window. Let x be the x-coordinate of the i-th initial UWB positioning data within the window. The standard deviation of the y-coordinate of the initial UWB positioning data within the window. This represents the mean of the y-coordinates within the window. Let x be the x-coordinate of the i-th initial UWB positioning data within the window.
[0113] Step 503, set the threshold T as... ,like If the initial UWB positioning data is normal; The initial UWB positioning data is determined to be abnormal; where k is a constant.
[0114] Optionally, N can be set to 100 (i.e., N=100). Generally, the threshold T is set to... (i.e., T= ).
[0115] In step 501, the spatial distance deviation between the UWB and IMU positioning results is calculated. This is used to reflect the consistency between UWB and IMU positioning data. In step 503, if... This indicates that the UWB signal is stable and the data is normal; if This indicates that the UWB signal is blocked or subject to multipath interference, resulting in abnormal data.
[0116] In another exemplary embodiment of this application, based on the Kalman filter method, the initial UWB positioning data is strongly compensated using IMU positioning data to obtain the positioning result when the initial UWB positioning data is abnormal. This is replaced by steps 601 to 605. Step 601, construct the state vector and state equation. The formula for the state vector is: .
[0117] in, Let k be the state vector at time k. Let UWB be the UWB position error of the UWB signal at time k. This represents the rate of change of the positioning error of the UWB signal in different directions.
[0118] The formula for the state equation is: .
[0119] .
[0120] in, Let k be the state vector at time k-1. It is the system noise at time k-1, which follows the law of... , Let F be the state transition noise covariance matrix at time k-1, and let F be the state transition matrix. Let k be the time difference between time k-1 and time k.
[0121] Step 602: Using IMU positioning data as observation data, construct observation vectors and observation equations. The formula for the observation vector is: .
[0122] in, Let k be the observation vector at time k. This represents the difference between the initial UWB positioning data and the IMU positioning data in the x-direction. This represents the difference in the y-direction between the initial UWB positioning data and the IMU positioning data.
[0123] The formula for the observation equation is: .
[0124] .
[0125] in, The observation noise at time k follows a certain order. , Let H be the observation noise covariance matrix at time k-1, and H be the observation matrix.
[0126] Step 603: Based on the state equation and the observation equation, perform the prediction and update steps of Kalman filtering to obtain the optimal estimate of the state vector. The formula in the prediction step is: .
[0127] .
[0128] in, Let be the prior state estimate at time k, representing the prediction of the state at time k based on all observations up to time k-1. Let be the posterior state estimate at time k-1, and let represent the optimal estimate at time k-1. Let be the prior estimation error covariance matrix at time k; It is the posterior estimation error covariance matrix at time k-1. Let be the state transition noise covariance matrix at time k.
[0129] The formula in the update step is: .
[0130] .
[0131] .
[0132] in, Let be the state vector of the optimal estimated state, representing the optimal estimate of the state at time k based on all observation data up to time k. The covariance matrix of the optimal estimated state. It is the identity matrix. The Kalman gain at time k, for The transpose of .
[0133] Step 604: Extract the error estimates in the x and y directions from the optimal estimate of the state vector, using the following formula: .
[0134] .
[0135] in, This represents the error estimate of the initial UWB positioning data in the x-direction. This represents the error estimate of the initial UWB positioning data in the y-direction. for The first element, for The third element.
[0136] Step 605: Compensate the initial UWB positioning data using the error estimate to obtain the positioning result when the initial UWB positioning data is abnormal. The formula is: .
[0137] .
[0138] in, The location result when the initial UWB location data is abnormal.
[0139] This application addresses the issue of abnormal initial UWB positioning data by employing a "prediction-update" loop based on the Kalman filter algorithm. It constructs a state vector and state equation using "UWB position error + error change rate," and uses IMU positioning data as observation data to construct observation vectors and observation equations. During the prediction and update steps of the Kalman filter, the state vector and error covariance are predicted, and the Kalman gain is calculated. Finally, the state vector and error covariance are updated to obtain the optimal estimate of the state vector, which in turn extracts the error estimate. The initial UWB positioning data is then compensated based on the error estimate to obtain the positioning result when the initial UWB positioning data is abnormal. Using the Kalman filter allows for real-time tracking of UWB error changes. Introducing the error change rate adapts to the modeling requirements of the Kalman filter. Combined with historical state information, this enhances the system's ability to cope with sudden changes in UWB positioning errors, resulting in a more stable and compensated combined positioning result. This overcomes the problems of unstable UWB positioning in complex environments and IMU error accumulation.
[0140] In another exemplary embodiment of this application, a weighted average method is used to weakly compensate or not compensate the initial UWB positioning data using IMU positioning data, to obtain the positioning result when the initial UWB positioning data is normal. The specific formula is as follows: .
[0141] in, This is the positioning result when the initial UWB positioning data is normal. The weighting coefficients for the initial UWB positioning data. Weighting coefficients for IMU location data. and .
[0142] When the initial UWB positioning data is normal, this application does not require strong compensation. It can perform weak compensation on the UWB positioning data without compensation or with the assistance of IMU to correct minor errors, giving the UWB data a higher weight coefficient and prioritizing the trust of the UWB positioning data.
[0143] This application combines IMU (Installation Detection Unit) with UWB single-base station positioning, fully leveraging the advantages of IMU's good short-term stability and UWB's high long-term accuracy. Using the directional information acquired by the IMU to correct UWB data effectively suppresses drift in UWB single-base station positioning data caused by multipath propagation and non-line-of-sight propagation, improving positioning accuracy. Different optimization strategies are employed to calculate the final coordinates for different UWB signals, specifically correcting environmental interference errors while preserving its high accuracy characteristics, and avoiding the cumulative errors caused by relying solely on the IMU, ensuring long-term positioning stability. Secondly, a dynamic threshold adjustment mechanism is introduced, adjusting the threshold in real time according to the environment, equipment status, or motion scenario, enabling accurate identification of UWB signal anomalies and improving system robustness. Using a Kalman filter allows real-time tracking of UWB error changes, introducing an error change rate to adapt to Kalman filter modeling requirements, and combining historical state information to enhance the system's ability to cope with sudden changes in UWB positioning errors. This results in highly stable compensated combined positioning results, overcoming the problems of UWB positioning instability in complex environments and IMU error accumulation.
[0144] Based on the same inventive concept, this application also provides a UWB-based single-base station positioning system for implementing the aforementioned UWB-based single-base station positioning method. The solution provided by this system is similar to the implementation described in the above method; therefore, the specific limitations in one or more UWB-based single-base station positioning system embodiments provided below can be found in the limitations of the UWB-based single-base station positioning method described above, and will not be repeated here.
[0145] In one exemplary embodiment, such as Figure 3 As shown, a positioning system based on a single UWB base station is provided, including: an IMU positioning data module 1, a UWB signal receiving module 2, an anomaly determination module 3, a data anomaly processing module 4, a data normal processing module 5, and a UWB signal loss processing module 6.
[0146] IMU positioning data module 1 is used to collect motion state data of positioning tags through inertial measurement units and perform position calculations to obtain IMU positioning data.
[0147] UWB signal receiving module 2 is used to obtain initial UWB positioning data when a single UWB base station receives a UWB signal from a positioning tag.
[0148] The anomaly detection module 3 is used to compare the position deviation between the initial UWB positioning data and the IMU positioning data with a set threshold to determine whether the initial UWB positioning data is abnormal.
[0149] The data anomaly processing module 4 is used to perform strong compensation on the initial UWB positioning data based on the Kalman filter method and IMU positioning data when the initial UWB positioning data is abnormal, so as to obtain the positioning result when the initial UWB positioning data is abnormal.
[0150] The data normal processing module 5 is used to perform weak compensation or no compensation on the UWB initial positioning data when the initial UWB positioning data is normal, using the weighted average method and IMU positioning data to obtain the positioning result when the initial UWB positioning data is normal.
[0151] The UWB signal loss processing module 6 is used to directly use the IMU positioning data as the positioning result when the UWB signal of the positioning tag is lost in a single UWB base station.
[0152] In one exemplary embodiment, a computer device is provided, which may be a server or a terminal, and its internal structure diagram may be as follows. Figure 4 As shown, the computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores positioning data based on a UWB single-base station. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communication with external terminals via a network connection. When the computer program is executed by the processor, it implements a positioning method based on a UWB single-base station.
[0153] Those skilled in the art will understand that Figure 4The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0154] In one exemplary embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above-described method embodiments.
[0155] In one exemplary embodiment, a computer-readable storage medium is provided storing a computer program that, when executed by a processor, implements the steps in the above-described method embodiments.
[0156] In one exemplary embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above-described method embodiments.
[0157] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.
[0158] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments described above. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM).
[0159] The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0160] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0161] This document uses specific examples to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the methods and core ideas of this application. Furthermore, those skilled in the art will recognize that, based on the ideas of this application, there will be changes in the specific implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A positioning method based on UWB single base station, characterized in that, The application comprises the following steps: Collecting motion state data of the positioning tag by an inertial measurement unit and performing position calculation to obtain IMU positioning data; When the UWB single base station receives the UWB signal of the positioning tag, UWB initial positioning data is obtained; Comparing the position deviation of the UWB initial positioning data and the IMU positioning data with a set threshold to determine whether the UWB initial positioning data is abnormal; When the UWB initial positioning data is abnormal, the UWB initial positioning data is strongly compensated by the IMU positioning data based on the Kalman filtering method to obtain the positioning result when the UWB initial positioning data is abnormal; When the UWB initial positioning data is normal, the UWB initial positioning data is weakly compensated or not compensated by the IMU positioning data by using the weighted average method to obtain the positioning result when the UWB initial positioning data is normal; When the UWB single base station loses the UWB signal of the positioning tag, the IMU positioning data is directly taken as the positioning result when the UWB signal is lost. 2.The UWB single base station based positioning method of claim 1, wherein, The application comprises the following steps: Collecting the x-axis original acceleration and y-axis original acceleration of the positioning tag under the carrier coordinate system through the accelerometer of the inertial measurement unit and y-axis original acceleration ; Collecting z-axis angular velocity of the positioning tag by a gyroscope of an inertial measurement unit ; The z-axis angular velocity Integrating, the time-varying heading angle is obtained, with the formula: ; wherein, is the heading angle at time t, is the initial heading angle, is the integral variable, is the time; The x-axis original acceleration under the carrier coordinate system and the y-axis original acceleration under the carrier coordinate system are converted into the global coordinate system to obtain the x-axis transformed acceleration under the global coordinate system and the y-axis transformed acceleration under the global coordinate system , and the formula is: ; ; wherein, is the x-axis transformed acceleration at time t, is the y-axis transformed acceleration at time t; x-axis transformed acceleration and y-axis transformed acceleration Integrating each of these gives the x-axis transformed velocity , y-axis transformed velocity , respectively, where ; ; wherein, is the x-axis transformation speed at time t, is the y-axis transformation speed at time t, , respectively represent the initial x-axis transformation speed, the initial y-axis transformation speed, and the static start-up time , ; Transform speed of x axis Transform speed of y axis Integrating respectively, the IMU positioning data is obtained, and the formula is: ; ; wherein, is the IMU positioning data, is the IMU initial position coordinates. 3.The UWB single base station based positioning method of claim 1, wherein, When the UWB single base station receives the UWB signal of the positioning tag, UWB initial positioning data is obtained, and the application comprises the following steps: The angle between the positioning tag and the UWB single base station is calculated according to the UWB signal of the positioning tag and the antenna distance difference of the antenna on the UWB single base station, and the formula is as follows: ; wherein, is the incident direction angle, is the UWB signal phase difference, is the UWB signal wavelength, and d is the antenna distance difference; The distance D between the positioning tag and the UWB single base station is calculated by using the TOF algorithm; The UWB initial positioning data is obtained according to the angle and distance between the positioning tag and the UWB single base station by using the PDOA algorithm , and the formula is: ; wherein, is the coordinate of the UWB single base station. 4.The UWB single base station based positioning method of claim 1, wherein, The position deviation of the UWB initial positioning data and the IMU positioning data is compared with a set threshold to determine whether the UWB initial positioning data is abnormal, and the application comprises the following steps: Computing a position bias of UWB initial positioning data and IMU positioning data , the formula is: ; Set the size of the sliding window as N, calculate the standard deviation of the initial positioning data of UWB in the window The formula is: ; ; ; ; ; wherein, is the standard deviation of the x-coordinates of the UWB initial positioning data within the window, is the mean of the x-coordinates within the window, is the x-coordinate of the i-th UWB initial positioning data within the window, is the standard deviation of the y-coordinates of the UWB initial positioning data within the window, is the mean of the y-coordinates within the window, is the x-coordinate of the i-th UWB initial positioning data within the window; The threshold T is set as If , it is determined that the UWB initial positioning data is normal; if , it is determined that the UWB initial positioning data is abnormal; wherein k is a constant. 5.The UWB single base station based positioning method according to claim 1, characterized in that, The UWB initial positioning data is strongly compensated by the IMU positioning data based on the Kalman filtering method to obtain the positioning result when the UWB initial positioning data is abnormal, and the application comprises the following steps: A state vector and a state equation are constructed, and the formula of the state vector is as follows: ; wherein, is the state vector at time k, is the UWB position error of the UWB signal at time k, is the rate of change of the UWB signal positioning error in different directions; The formula of the state equation is as follows: ; ; wherein is the state vector at time k-1, is the system noise at time k-1, which is subject to , is the state transition noise covariance matrix at time k-1, and F is the state transition matrix, is the time difference between time k-1 and time k. The IMU positioning data is taken as observation data to construct an observation vector and an observation equation, and the formula of the observation vector is as follows: ; wherein, is the observation vector at time k, is the difference between the UWB initial positioning data and the IMU positioning data in the x direction, is the difference between the UWB initial positioning data and the IMU positioning data in the y direction; The formula of the observation equation is as follows: ; ; wherein is the observation noise at time k, which is subject to , is the observation noise covariance matrix at time k-1, and H is the observation matrix. Based on the state equation and the observation equation, the prediction step and the update step of the Kalman filtering are performed to obtain the optimal estimation value of the state vector; The formula in the prediction step is as follows: ; ; wherein, is the prior state estimate at time k, representing the prediction made of the state at time k using all observations up to time k-1; is the posterior state estimate at time k-1, representing the optimal estimate value at time k-1; is the prior estimation error covariance matrix at time k; is the posterior estimation error covariance matrix at time k-1, is the state transition noise covariance matrix at time k; The formula in the update step is as follows: ; ; ; wherein, is a state vector of the optimal estimation state, and represents an optimal estimation of a state at the k-th time point based on all observation data up to the k-th time point, is a covariance matrix of the optimal estimation state, is an identity matrix, is a Kalman gain at the k-th time point, is is a transpose matrix of The error estimation value of the x direction and the y direction is extracted from the optimal estimation value of the state vector, and the formula is as follows: ; ; in, This represents the error estimate of the initial UWB positioning data in the x-direction. This represents the error estimate of the initial UWB positioning data in the y-direction. for The first element, for The third element; The UWB initial positioning data is compensated by the error estimation value to obtain the positioning result when the UWB initial positioning data is abnormal, and the formula is as follows: ; ; wherein, is the positioning result when the UWB initial positioning data is abnormal. 6.The UWB single base station based positioning method according to claim 1, characterized in that, The UWB initial positioning data is weakly compensated or not compensated by the IMU positioning data by using the weighted average method to obtain the positioning result when the UWB initial positioning data is normal, and the formula is as follows: ; wherein, is the positioning result when the UWB initial positioning data is normal, is the weight coefficient of the UWB initial positioning data, is the weight coefficient of the IMU positioning data, and .
7. A UWB single base station based positioning system, characterized by The application comprises the following steps: The IMU positioning data module is used for collecting motion state data of the positioning tag by an inertial measurement unit and performing position calculation to obtain IMU positioning data; The UWB signal receiving module is used for obtaining UWB initial positioning data when the UWB single base station receives the UWB signal of the positioning tag; Anomaly determination module, configured to compare the position deviation between the UWB initial positioning data and the IMU positioning data with a set threshold value, and determine whether the UWB initial positioning data is abnormal; Data anomaly processing module, configured to, when the UWB initial positioning data is abnormal, perform strong compensation on the UWB initial positioning data based on a Kalman filtering method by using the IMU positioning data, to obtain a positioning result when the UWB initial positioning data is abnormal; Data normal processing module, configured to, when the UWB initial positioning data is normal, perform weak compensation or no compensation on the UWB initial positioning data by using the IMU positioning data through a weighted average method, to obtain a positioning result when the UWB initial positioning data is normal; UWB signal loss processing module, configured to, when a UWB signal of a positioning tag is lost by a UWB single base station, directly take the IMU positioning data as a positioning result when the UWB signal is lost.
8. A computer device comprising: A memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that the processor executes the computer program to implement the UWB single base station-based positioning method in any one of claims 1-6.
9. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the UWB single base station-based positioning method in any one of claims 1-6.
10. A computer program product comprising a computer program, characterized in that, The computer program is executed by the processor to implement the UWB single base station-based positioning method in any one of claims 1-6.
