High-precision positioning method for mechanical arm based on fusion of UWB and IMU
By analyzing inertial measurement unit and ultra-wideband data, the cumulative error and confidence level of the robotic arm's movements are evaluated, and the UWB positioning weights are adjusted. This solves the problem of low positioning accuracy of the robotic arm during multi-degree-of-freedom, small-angle, and high-frequency operations, and achieves high-precision fusion positioning.
Patent Information
- Application Number
- CN202511544602.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-28
- Publication Date
- 2026-01-27
- Estimated Expiration
- 2045-10-28
AI Technical Summary
Existing technologies have low positioning accuracy when robotic arms perform precision control operations with multiple degrees of freedom, small angles, and high frequencies. Especially in industrial environments with multipath interference, obstructions, and electromagnetic interference, UWB positioning is affected, leading to increased system errors.
By analyzing the motion data acquired by the inertial measurement unit and ultra-wideband (UWB), the cumulative error and confidence level of the robotic arm's movements are evaluated. By combining the cumulative motion error value and motion identification value, the confidence level of the UWB positioning results is determined, and its weight in fusion positioning is adjusted to suppress the introduction of erroneous positions.
It improves the positioning accuracy of the robotic arm under multi-degree-of-freedom, high-frequency, small-amplitude movements, reduces the accumulation of system errors, and improves the accuracy and reliability of positioning.
Smart Images

Figure CN121018668B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the technical field of robotic arm control, and specifically to a high-precision positioning method for robotic arms based on UWB and IMU fusion technology. Background Technology
[0002] As a core piece of equipment in industrial automation and intelligent manufacturing, robotic arms are widely used in welding, assembly, handling, inspection, and precision operations. In practical applications, the working efficiency and task completion accuracy of robotic arms are highly dependent on the measurement and control accuracy of the spatial position and attitude of their end effectors. Traditional robotic arm positioning methods mostly rely on joint angle sensors, optical motion capture systems, or laser measurement equipment. Although these methods can provide high accuracy under certain conditions, they are still subject to interference from various factors that can lead to a decrease in accuracy. Therefore, the fusion positioning technology of ultra-wideband (UWB) and inertial measurement unit (IMU) is gradually becoming an important direction for achieving high-precision positioning of robotic arms.
[0003] In existing technologies, inertial measurement units (IMUs) suffer from drift errors due to measurement bias, scaling factor errors, and random noise. The pose information obtained by integrating angular velocity and linear acceleration accumulates over time. To counteract this drift, existing technologies typically employ a Kalman filter-based fusion method, using external absolute positioning quantities (such as UWB) to periodically correct the IMU's integration results. However, in practical applications, the following problems exist: When a robotic arm performs multi-degree-of-freedom, small-angle, and high-frequency precision control operations, the spatial displacement amplitude of the end effector is extremely small, and the variation spectrum is high. This makes it difficult to significantly distinguish the low-frequency or low-resolution position information provided by UWB from measurement noise, thus making the bias estimation based on position observation weakly observable or unobservable. Furthermore, UWB positioning is affected by multipath, occlusion, and electromagnetic interference, and can produce significant abnormal measurements in industrial environments with severe reflections. If real-time anomaly detection and rejection are not performed, erroneous absolute positions will be introduced into the fusion process, exacerbating system errors.
[0004] In other words, existing technologies have low positioning accuracy for robotic arms when performing precision control operations with multiple degrees of freedom, small angles, and high frequencies. Summary of the Invention
[0005] The purpose of this invention is to provide a high-precision positioning method for robotic arms based on UWB and IMU fusion technology, which solves the technical problem of low positioning accuracy of robotic arms when performing multi-degree-of-freedom, small-angle and high-frequency precision control operations.
[0006] In a first aspect, one embodiment of the present invention provides a high-precision positioning method for a robotic arm based on UWB and IMU fusion technology, the method comprising:
[0007] Within the target time window, the changes in the first motion data are analyzed to obtain the cumulative value of motion error. The first motion data is the motion data of the robotic arm collected by the inertial measurement unit within the corresponding time window. The cumulative value of motion error is used to represent the cumulative error introduced by the robotic arm's actions within the corresponding time window.
[0008] Within the target time window, the changes in the second motion data are analyzed to obtain a motion identification value. The second motion data is the motion data of the robotic arm acquired by ultra-wideband within the corresponding time window. The motion identification value is used to represent the confidence level of tracking the position of the robotic arm under different degrees of freedom of motion within the corresponding time window by ultra-wideband.
[0009] Based on the cumulative motion error value and the motion identification value, a positioning confidence value is obtained, wherein the positioning confidence value is used to represent the confidence level of the ultra-wideband positioning result in participating in fusion positioning within the corresponding time window;
[0010] Within the target time window, fusion positioning is performed based on the positioning information value, the ultra-wideband positioning result, and the positioning result of the inertial measurement unit to obtain the target positioning result of the robotic arm.
[0011] In some embodiments, analyzing the changes in the first motion data to obtain the cumulative motion error value includes:
[0012] By analyzing the changes in angular velocity data included in the first motion data, an angular velocity fluctuation index is obtained, wherein the angular velocity fluctuation index is used to represent the degree of drastic change in the angular velocity of the robotic arm within a corresponding time window;
[0013] The pose observation offset data included in the first motion data are analyzed to obtain the pose fluctuation index, wherein the pose fluctuation is used to at least indicate the degree of drastic change in the deviation between the observed pose and the reference pose of the robotic arm within the corresponding time window.
[0014] The cumulative value of motion error is obtained based on the pose fluctuation index and the angular velocity fluctuation index.
[0015] In some embodiments, the analysis of changes in the angular velocity data included in the first motion data to obtain the angular velocity fluctuation index includes:
[0016] Among the multiple angular velocity monitoring points included in the angular velocity data, the time interval between adjacent first angular velocity monitoring points and second angular velocity monitoring points is analyzed to obtain the angular velocity fluctuation period value, wherein the first angular velocity monitoring point is the angular velocity monitoring point corresponding to the local maximum value, and the second angular velocity monitoring point is the angular velocity monitoring point corresponding to the local minimum value;
[0017] Among the multiple angular velocity monitoring points included in the angular velocity data, the concentration trend of multiple first angular velocity monitoring points is analyzed to obtain the characteristic peak value of angular velocity;
[0018] Among the multiple angular velocity monitoring points included in the angular velocity data, the degree of disorder of multiple first angular velocity monitoring points is analyzed to obtain the peak entropy value of angular velocity;
[0019] The angular velocity fluctuation index is obtained based on the angular velocity fluctuation period value, the angular velocity characteristic peak value, and the angular velocity peak entropy value.
[0020] In some embodiments, the angular velocity fluctuation period value is negatively correlated with the angular velocity fluctuation index, the angular velocity characteristic peak value is negatively correlated with the angular velocity fluctuation index, and the angular velocity peak entropy value is positively correlated with the angular velocity fluctuation index.
[0021] In some embodiments, the analysis of changes in pose observation offset data included in the first motion data to obtain a pose fluctuation index includes:
[0022] Among the multiple pose offset monitoring points included in the pose observation offset data, the central tendency of the differences between adjacent pose offset monitoring points is analyzed to obtain the pose fluctuation index.
[0023] In some embodiments, analyzing the changes in the second motion data to obtain motion identification values includes:
[0024] The differences between the multiple displacement sequences included in the second motion data are analyzed to obtain the degree of freedom discrimination value, wherein the multiple displacement sequences correspond one-to-one with the multiple motion degrees of freedom of the robotic arm;
[0025] In the second motion data, which includes multiple displacement sequences, the degree of change of each sequence element of the displacement sequence is analyzed to obtain multiple displacement fluctuation indices.
[0026] The motion recognition degree is obtained based on the degree of freedom differentiation value and the multiple displacement fluctuation indices.
[0027] In some embodiments, the analysis of the differences between multiple displacement sequences included in the second motion data to obtain a degree-of-freedom discrimination value includes:
[0028] In the second motion data, which includes multiple displacement sequences, the mean square error between any two different displacement sequences is calculated to obtain the mean square error between multiple sequences.
[0029] The average mean square error among the multiple sequences is calculated to obtain the degree of freedom discrimination value.
[0030] In some embodiments, the step of analyzing the degree of change of each sequence element in the multiple displacement sequences included in the second motion data to obtain multiple displacement fluctuation indices includes:
[0031] In the second motion data, which includes multiple displacement sequences, the differences between adjacent sequence elements in each displacement sequence are analyzed to obtain multiple displacement difference sequences.
[0032] In the multiple displacement difference sequences, the dispersion of each sequence element in the displacement difference sequence is analyzed to obtain multiple displacement fluctuation indices.
[0033] In some embodiments, obtaining the positioning information value based on the cumulative motion error value and the motion identification value includes:
[0034] Based on the cumulative motion error value and the motion identification value, the external confidence factor for positioning is obtained;
[0035] Within the target time window, the similarity between the pulse signal corresponding to the ultra-wideband and the standard pulse signal is analyzed to obtain the pulse similarity value, wherein the standard pulse signal is the ultra-wideband pulse signal under interference-free conditions;
[0036] Within the target time window, the instantaneous change in the carrier phase corresponding to the ultra-wideband is analyzed to obtain the instantaneous phase drift value;
[0037] The positioning built-in information factor is obtained based on the pulse similarity value and the instantaneous phase drift value;
[0038] The location confidence value is obtained based on the external confidence factor and the internal confidence factor.
[0039] In some embodiments, obtaining the location confidence value based on the external confidence factor and the internal confidence factor includes:
[0040] The location external confidence factor is normalized to obtain the positive factor normalization value;
[0041] The built-in information factor of the positioning is normalized to obtain the normalized value of the negative factor;
[0042] The ratio of the normalized value of the positive factor to the normalized value of the negative factor is determined as the location information value.
[0043] Secondly, another embodiment of the present invention provides a high-precision positioning system for a robotic arm based on UWB and IMU fusion technology, the system comprising:
[0044] The error accumulation analysis module is used to analyze the changes of the first motion data within the target time window and obtain the cumulative value of motion error. The first motion data is the motion data of the robotic arm collected by the inertial measurement unit within the corresponding time window. The cumulative value of motion error is used to represent the cumulative error introduced by the robotic arm action within the corresponding time window.
[0045] The motion identification and analysis module is used to analyze the changes of the second motion data within the target time window to obtain a motion identification value. The second motion data is the motion data of the robotic arm acquired by ultra-wideband within the corresponding time window. The motion identification value is used to represent the confidence level of tracking the position of the robotic arm under different degrees of freedom of motion within the corresponding time window by ultra-wideband.
[0046] The positioning confidence analysis module is used to obtain a positioning confidence value based on the cumulative motion error value and the motion identification value, wherein the positioning confidence value is used to represent the confidence level of the ultra-wideband positioning result in participating in fusion positioning within the corresponding time window;
[0047] The fusion positioning module is used to perform fusion positioning based on the positioning information value, the ultra-wideband positioning result, and the positioning result of the inertial measurement unit within the target time window to obtain the target positioning result of the robotic arm.
[0048] Thirdly, in another embodiment of the present invention, an electronic device is provided, including a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein the computer program, when executed by the processor, implements the steps of the method described in the first aspect.
[0049] Fourthly, in another embodiment of the present invention, a computer-readable storage medium is provided, on which a computer program is stored, which, when executed by a processor, implements the steps of the method described in the first aspect.
[0050] The present invention has the following beneficial effects:
[0051] This invention analyzes motion data of a robotic arm acquired by an inertial measurement unit (IMU) to accurately assess the degree of precision control operations involving multiple degrees of freedom, small angles, and high frequencies within a target time window using high-frequency continuous measurement. This assessment then evaluates the intensity of the cumulative error introduced by the robotic arm's movements within the target time window. Next, by analyzing motion data acquired using ultra-wideband (UWB), the confidence level of UWB's ability to distinguish the robotic arm's position in different degrees of freedom within the corresponding time window is determined, i.e., the reliability of UWB in processing the corresponding robotic arm movements within the time window is determined. Finally, based on the cumulative motion error value and motion identification value, the positioning accuracy of the UWB is determined. The confidence level of the results participating in the fusion positioning within the corresponding time window is determined, that is, the reliability of the positioning results obtained through ultra-wideband (UWB) within the corresponding time window. Based on this, the UWB positioning results are used to guide the calculation of subsequent fusion positioning. When the positioning results obtained through UWB are relatively reliable, the weight of the UWB positioning results in the calculation of subsequent fusion positioning is increased, while when the positioning results obtained through UWB are relatively unreliable, the weight of the UWB positioning results in the calculation of subsequent fusion positioning is decreased. This is to suppress the introduction of erroneous absolute positions into the fusion positioning process as much as possible, so that the system error gradually converges and the positioning accuracy of the robotic arm under multi-degree-of-freedom, high-frequency, small-amplitude movements is improved. Attached Figure Description
[0052] To more clearly illustrate the technical solutions and advantages in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0053] Figure 1 This is a flowchart illustrating a high-precision positioning method for a robotic arm based on UWB and IMU fusion technology provided in an embodiment of the present invention.
[0054] Figure 2 This is a schematic diagram of the structure of a high-precision positioning system for a robotic arm based on UWB and IMU fusion technology provided in an embodiment of the present invention;
[0055] Figure 3 This is a schematic diagram of an electronic device provided in an embodiment of the present invention. Detailed Implementation
[0056] To further illustrate the technical means and effects adopted by the present invention to achieve its intended purpose, the following, in conjunction with the accompanying drawings and preferred embodiments, details the specific implementation, structure, features, and effects of the high-precision positioning method for a robotic arm based on UWB and IMU fusion technology proposed according to the present invention. In the following description, different "one embodiment" or "another embodiment" do not necessarily refer to the same embodiment. Furthermore, specific features, structures, or characteristics in one or more embodiments can be combined in any suitable form.
[0057] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains.
[0058] The specific solution of the high-precision positioning method for robotic arms based on UWB and IMU fusion technology provided by the present invention will be described in detail below with reference to the accompanying drawings.
[0059] This invention proposes a high-precision positioning method for robotic arms based on UWB and IMU fusion technology. Please refer to [link / reference]. Figure 1 The diagram illustrates a flowchart of a high-precision positioning method for a robotic arm based on UWB and IMU fusion technology, according to an embodiment of the present invention. The method includes:
[0060] Step S1: Within the target time window, analyze the changes in the first motion data to obtain the cumulative value of motion error.
[0061] The first motion data is the motion data of the robotic arm collected by the inertial measurement unit within the corresponding time window, and the cumulative motion error value is used to represent the cumulative error introduced by the robotic arm's actions within the corresponding time window.
[0062] In this invention, continuous time is divided into several consecutive time windows. The target time window can be understood as the time window in which the current moment occurs, or as the time window to be fused and localized. The duration of the time window can be 50-200ms; based on experience, this invention sets the duration of the time window to 100ms.
[0063] In some embodiments, analyzing the changes in the first motion data to obtain the cumulative motion error value includes:
[0064] By analyzing the changes in angular velocity data included in the first motion data, an angular velocity fluctuation index is obtained, wherein the angular velocity fluctuation index is used to represent the degree of drastic change in the angular velocity of the robotic arm within a corresponding time window;
[0065] The pose observation offset data included in the first motion data are analyzed to obtain the pose fluctuation index, wherein the pose fluctuation is used to at least indicate the degree of drastic change in the deviation between the observed pose and the reference pose of the robotic arm within the corresponding time window.
[0066] The cumulative value of motion error is obtained based on the pose fluctuation index and the angular velocity fluctuation index.
[0067] In applications, IMU sensors can be installed at the end of the robotic arm or at key joints. The IMU sensors include accelerometers and gyroscopes. The accelerometers record the acceleration changes when the robotic arm moves, and the gyroscopes record the angular velocity changes when the robotic arm rotates.
[0068] When a robotic arm performs multi-degree-of-freedom, high-frequency, small-amplitude movements, the angular velocity at its end effector or key joints will change drastically in a short period of time. Therefore, by observing the changes in the robotic arm's angular velocity within a corresponding time window, we can determine the degree of drastic change in the robotic arm's angular velocity within that time window, and thus determine the extent to which the robotic arm's movements within that time window match multi-degree-of-freedom, high-frequency, small-amplitude movements.
[0069] Similarly, when a robotic arm performs multi-degree-of-freedom, high-frequency, small-amplitude movements, the interference effect of random disturbances on its overall pose will be amplified. At this time, the observed position obtained by the inertial measurement unit will deviate significantly from the reference pose obtained by other high-precision measurement systems (such as optical encoders, optical tracking components, etc.). Therefore, by analyzing the changes in the robotic arm's pose observation offset data within the corresponding time window, we can determine the degree of drastic change in the deviation between the observed pose and the reference pose within the corresponding time window, and thus determine the degree to which the robotic arm's movements within the corresponding time window match multi-degree-of-freedom, high-frequency, small-amplitude movements.
[0070] It should be understood that the higher the degree to which the robotic arm's movements match multi-degree-of-freedom, high-frequency, small-amplitude movements within the corresponding time window, the greater the cumulative error introduced by the robotic arm's movements within the corresponding time window.
[0071] The reason for choosing to analyze the changes in angular velocity and pose observation offset in the above settings and combining the two to determine the cumulative value of motion error is to accurately evaluate the robot arm's movements from both local (reflected by the angular velocity fluctuation index) and global (reflected by the pose fluctuation index) dimensions, so as to avoid the errors introduced by single-dimensional evaluation and ensure the accuracy of the obtained cumulative value of motion error.
[0072] In this invention, the pose of the robotic arm includes the three-dimensional spatial coordinates of the end effector or key joints of the robotic arm and the corresponding Euler angles (including roll angle, pitch angle, and yaw angle).
[0073] Furthermore, the analysis of the changes in angular velocity data included in the first motion data to obtain the angular velocity fluctuation index includes:
[0074] Among the multiple angular velocity monitoring points included in the angular velocity data, the time interval between adjacent first angular velocity monitoring points and second angular velocity monitoring points is analyzed to obtain the angular velocity fluctuation period value, wherein the first angular velocity monitoring point is the angular velocity monitoring point corresponding to the local maximum value, and the second angular velocity monitoring point is the angular velocity monitoring point corresponding to the local minimum value;
[0075] Among the multiple angular velocity monitoring points included in the angular velocity data, the concentration trend of multiple first angular velocity monitoring points is analyzed to obtain the characteristic peak value of angular velocity;
[0076] Among the multiple angular velocity monitoring points included in the angular velocity data, the degree of disorder of multiple first angular velocity monitoring points is analyzed to obtain the peak entropy value of angular velocity;
[0077] The angular velocity fluctuation index is obtained based on the angular velocity fluctuation period value, the angular velocity characteristic peak value, and the angular velocity peak entropy value.
[0078] Specifically, the angular velocity fluctuation period value is negatively correlated with the angular velocity fluctuation index, the angular velocity characteristic peak value is negatively correlated with the angular velocity fluctuation index, and the angular velocity peak entropy value is positively correlated with the angular velocity fluctuation index.
[0079] The above angular velocity fluctuation period value is used to represent the frequency of sudden changes in angular velocity within the corresponding time window (from a local maximum to a local minimum, or from a local minimum to a local maximum).
[0080] A local maximum should be understood as a data point whose value is greater than the value of the preceding data point and also greater than the value of the following data point. Similarly, a local minimum should be understood as a data point whose value is less than the value of the preceding data point and also less than the value of the following data point.
[0081] The aforementioned angular velocity characteristic peaks are used to represent the peak intensity of the angular velocity within the corresponding time window.
[0082] The above peak entropy value of angular velocity is used to represent the degree of disorder in the distribution of multiple local maxima of angular velocity within the corresponding time window.
[0083] The larger the angular velocity fluctuation period value, the lower the frequency of sudden changes in angular velocity within the corresponding time window. In other words, the longer it takes for one sudden change in angular velocity within the corresponding time window, and consequently, the lower the degree to which the robotic arm matches multi-degree-of-freedom, high-frequency, small-amplitude movements within the corresponding time window.
[0084] The larger the peak value of the angular velocity characteristic, the higher the peak intensity of the angular velocity within the corresponding time window, and the lower the degree of matching with the small-amplitude movements of the robotic arm. In other words, the robotic arm's movements within the corresponding time window match the degree of multi-degree-of-freedom, high-frequency, small-amplitude movements.
[0085] The larger the peak entropy value of angular velocity, the more disordered the distribution of multiple local maxima of angular velocity within the corresponding time window. This is more consistent with the situation where random disturbances are amplified when the robotic arm performs multi-degree-of-freedom, high-frequency, small-amplitude movements. Therefore, it can be said that the robotic arm's movements within the corresponding time window match the degree of multi-degree-of-freedom, high-frequency, small-amplitude movements.
[0086] Based on the above settings, by acquiring the sudden change frequency, peak intensity, and the degree of disorder in the distribution of multiple local maxima within the corresponding time window, the degree of motion matching of the robotic arm within the corresponding time window can be comprehensively evaluated from the time dimension, numerical dimension, and data distribution dimension, making the determined angular velocity fluctuation index more accurate and reliable.
[0087] It should be noted that the angular velocity in this invention should be understood as the average value of the angular velocities of the roll angle, pitch angle, and yaw angle at the end of the robotic arm or key joint.
[0088] In this context, the adjacent first angular velocity monitoring point and second angular velocity monitoring point should be understood as: the Nth first angular velocity monitoring point and the Nth second angular velocity monitoring point, where N is any positive integer less than or equal to the target number, and the target number is the smaller value between the total number of multiple first angular velocity monitoring points and the total number of multiple second angular velocity monitoring points.
[0089] In one example, the angular velocity fluctuation period value is the average of the time intervals between multiple sets of adjacent first angular velocity monitoring points and second angular velocity monitoring points, the angular velocity characteristic peak value is the average of the angular velocities of multiple first angular velocity monitoring points, and the angular velocity peak entropy value is the information entropy of multiple first angular velocity monitoring points.
[0090] In this example, the angular velocity fluctuation index It can be represented as:
[0091]
[0092] in, This represents the period value of angular velocity fluctuation. Indicates the characteristic peak value of angular velocity. This represents the peak entropy of angular velocity.
[0093] Furthermore, the analysis of the changes in pose observation offset data included in the first motion data to obtain the pose fluctuation index includes:
[0094] Among the multiple pose offset monitoring points included in the pose observation offset data, the central tendency of the differences between adjacent pose offset monitoring points is analyzed to obtain the pose fluctuation index.
[0095] Specifically, the step of analyzing the central tendency of the differences between adjacent pose offset monitoring points in the pose observation offset data to obtain the pose fluctuation index includes:
[0096] Based on the six degrees of freedom of the robotic arm (three coordinate dimensions and three Euler angles in three-dimensional space), the multiple pose offset monitoring points included in the pose observation offset data are divided into six groups of degree-of-freedom offset monitoring points.
[0097] In each set of degree-of-freedom offset monitoring points, the ratio of the absolute difference between the values of two adjacent monitoring points to the time difference between two adjacent monitoring points is calculated to obtain the initial slope sequence corresponding to each set of degree-of-freedom offset monitoring points.
[0098] The initial slope sequence corresponding to each set of degree-of-freedom offset monitoring points is normalized (using the maximum value normalization algorithm) to obtain the target slope sequence corresponding to each set of degree-of-freedom offset monitoring points;
[0099] Calculate the average value of the sequence elements in the target slope sequence corresponding to each set of degree-of-freedom offset monitoring points to obtain the slope feature value corresponding to each set of degree-of-freedom offset monitoring points;
[0100] The average value of the slope characteristic values corresponding to the six sets of degree-of-freedom offset monitoring points is determined as the pose fluctuation index.
[0101] In the above settings, by analyzing the degree of change of the offset value of each degree of freedom of the robotic arm within the corresponding time window, the degree of motion matching of the robotic arm in the corresponding time window with multiple degrees of freedom and high frequency small amplitude motion is evaluated from the overall perspective of pose correspondence.
[0102] For example, the above pose fluctuation index It can be represented as:
[0103]
[0104] in, Indicates the first The slope characteristic value corresponding to the set of degrees of freedom offset monitoring points.
[0105] Furthermore, the cumulative value of the above motion error It can be represented as: .
[0106] Step S2: Within the target time window, analyze the changes in the second motion data to obtain the motion identification value.
[0107] The second motion data is the motion data of the robotic arm collected via ultra-wideband within the corresponding time window. The motion identification value is used to represent the confidence level of tracking the position of the robotic arm under different degrees of freedom of motion within the corresponding time window via ultra-wideband.
[0108] In applications, a small UWB tag can be installed at the end of the robotic arm or at key joints, and several UWB base stations can be arranged around the working area of the robotic arm. When the UWB tag sends a wireless signal to the UWB base station, the UWB base station will receive the wireless signal and determine the distance between the robotic arm and the UWB base station based on the time difference required for the wireless signal to be transmitted.
[0109] Furthermore, since the update frequency of the second motion data is relatively low, while the update speed of the first motion data is relatively fast, before analyzing the first and second motion data, it is necessary to add time tags to the data collected by the inertial measurement unit and the data collected by the ultra-wideband, and perform filtering and difference processing. Then, all of them are time-aligned to keep the time axis of the data collected by different sensors and different sources consistent. Then, the relevant analysis steps and fusion positioning steps described in this invention are executed.
[0110] Specifically, the analysis of changes in the second motion data to obtain motion identification values includes:
[0111] The differences between the multiple displacement sequences included in the second motion data are analyzed to obtain the degree of freedom discrimination value, wherein the multiple displacement sequences correspond one-to-one with the multiple motion degrees of freedom of the robotic arm;
[0112] In the second motion data, which includes multiple displacement sequences, the degree of change of each sequence element of the displacement sequence is analyzed to obtain multiple displacement fluctuation indices.
[0113] The motion recognition degree is obtained based on the degree of freedom differentiation value and the multiple displacement fluctuation indices.
[0114] In this invention, the steps for obtaining sequence elements in the displacement sequence include:
[0115] Multiple ranging data points from ultra-wideband (obtained by transmitting and receiving wireless signals between UWB tags and UWB base stations) are used to locate the robotic arm in the UWB coordinate system to obtain the first position data.
[0116] The first position data is transformed to obtain the second position data in the corresponding robot arm base coordinate system;
[0117] By calculating the difference between the second position data and the third position data obtained at the previous measurement time in the corresponding robotic arm base coordinate system, the sequence elements of the displacement sequence at the corresponding measurement time can be obtained.
[0118] The higher the degree of freedom discrimination value, the greater the difference between the multiple displacement sequences included in the second motion data. This means that the ultra-wideband can more effectively distinguish the displacement between different degrees of freedom, which also means that the reliability / accuracy of the observation information provided by the ultra-wideband under the corresponding robotic arm action is higher.
[0119] A higher displacement fluctuation index indicates a higher degree of change in the sequence elements of the displacement sequence under the corresponding degree of freedom of motion. This means that the external interference is more severe when tracking the displacement under the corresponding degree of freedom of motion through ultra-wideband, which in turn means that the reliability / accuracy of the observation information pointing to the corresponding degree of freedom of motion provided by ultra-wideband under the corresponding robotic arm action is lower.
[0120] Furthermore, the analysis of the differences between the multiple displacement sequences included in the second motion data to obtain the degree-of-freedom discrimination value includes:
[0121] In the second motion data, which includes multiple displacement sequences, the mean square error between any two different displacement sequences is calculated to obtain the mean square error between multiple sequences.
[0122] The average mean square error among the multiple sequences is calculated to obtain the degree of freedom discrimination value.
[0123] For example, the degree of freedom distinction value It can be represented as:
[0124]
[0125] in, This represents the mean calculation function. Indicates the first The displacement sequence corresponding to the nth degree of freedom of motion and the nth The mean square error between the displacement sequences corresponding to each degree of freedom of motion. and is any distinct positive integer less than or equal to 6.
[0126] Furthermore, in the second motion data, which includes multiple displacement sequences, the degree of change of each sequence element in the displacement sequence is analyzed to obtain multiple displacement fluctuation indices, including:
[0127] In the second motion data, which includes multiple displacement sequences, the differences between adjacent sequence elements in each displacement sequence are analyzed to obtain multiple displacement difference sequences.
[0128] In the multiple displacement difference sequences, the dispersion of each sequence element in the displacement difference sequence is analyzed to obtain multiple displacement fluctuation indices.
[0129] In this invention, the difference between adjacent sequence elements in the displacement sequence can be quantified by the absolute difference between adjacent sequence elements in the displacement sequence, and the dispersion of the sequence elements in the displacement difference sequence can be quantified by the standard deviation of all sequence elements included in the displacement difference sequence.
[0130] In the presence of external interference (such as false jumps caused by occlusion), the stronger the external interference under the corresponding degree of freedom, the more significant the abrupt change in the displacement of the robotic arm under the corresponding degree of freedom. Based on this, the present invention uses a displacement difference sequence to represent the displacement change of the robotic arm under the corresponding degree of freedom, and further analyzes the discreteness of the sequence elements of the displacement difference sequence to evaluate the significance of the displacement change of the robotic arm under the corresponding degree of freedom, thereby accurately assessing the degree of external interference under the corresponding degree of freedom.
[0131] Furthermore, the step of obtaining the motion recognition degree based on the degree-of-freedom discrimination value and the plurality of displacement fluctuation indices includes:
[0132] Calculate the average of the reciprocals of the plurality of displacement fluctuation indices to obtain the displacement fluctuation value;
[0133] The product of the displacement fluctuation value and the degree of freedom distinction value is calculated to obtain the motion recognition degree.
[0134] In the above settings, for cases where the movement of the robotic arm is coupled with multiple degrees of freedom, the displacement fluctuation trend of the robotic arm in each degree of freedom is adaptively evaluated by taking the average value, thereby comprehensively and accurately evaluating the intensity of external interference encountered by the robotic arm when passing through ultra-wideband measurement.
[0135] For example, the motion recognition It can be represented as:
[0136]
[0137] in, Indicates the first Displacement fluctuation index corresponding to each degree of freedom of motion Indicates the degree of freedom discrimination value. This represents the displacement fluctuation value.
[0138] Step S3: Obtain the position information value based on the cumulative motion error value and the motion identification value.
[0139] The location confidence value is used to represent the confidence level of the ultra-wideband positioning result in participating in fusion positioning within the corresponding time window.
[0140] Specifically, obtaining the positioning information value based on the cumulative motion error value and the motion identification value includes:
[0141] Based on the cumulative motion error value and the motion identification value, the external confidence factor for positioning is obtained;
[0142] Within the target time window, the similarity between the pulse signal corresponding to the ultra-wideband and the standard pulse signal is analyzed to obtain the pulse similarity value. The standard pulse signal is the ultra-wideband pulse signal under interference-free conditions (such as a laboratory environment).
[0143] Within the target time window, the instantaneous change in the carrier phase corresponding to the ultra-wideband is analyzed to obtain the instantaneous phase drift value;
[0144] The positioning built-in information factor is obtained based on the pulse similarity value and the instantaneous phase drift value;
[0145] The location confidence value is obtained based on the external confidence factor and the internal confidence factor.
[0146] The aforementioned external confidence factors for positioning represent external factors that affect the accuracy of ultra-wideband positioning results, while the internal confidence factors for positioning represent internal factors that affect the accuracy of ultra-wideband positioning results.
[0147] It should be understood that the higher the cumulative motion error value, the greater the cumulative error introduced by the robotic arm's movements within the corresponding time window, which means the lower the accuracy of the ultra-wideband positioning result. Conversely, the higher the motion identification value, the higher the confidence level of tracking the position of the robotic arm under different degrees of freedom within the corresponding time window using ultra-wideband, which means the higher the accuracy of the ultra-wideband positioning result.
[0148] The pulse similarity values mentioned above are used to indicate the degree of external interference affecting the pulse signals acquired by the ultra-wideband (UWB) signal within the corresponding time window. The instantaneous phase drift value is used to indicate the degree of external interference affecting the UWB carrier phase acquisition.
[0149] In the process of positioning measurement using ultra-wideband (UWB), the accuracy of the positioning results is affected not only by external factors such as the complexity of the robotic arm's movements, the frequency of movement changes, and the amplitude of movement changes, but also by internal measurement components. For example, pulse sampling errors and phase sampling errors in the wireless signal transmission and reception process can reduce the accuracy of the UWB positioning results.
[0150] Based on this, in addition to accurately assessing the impact of external factors on the accuracy of ultra-wideband positioning results through the cumulative motion error value and the motion identification value, the present invention further analyzes the error of the pulse signal and carrier phase during sampling within the corresponding time window of ultra-wideband, and forms a positioning built-in confidence factor accordingly. Combined with the positioning external confidence factor, the accuracy of ultra-wideband positioning results is comprehensively evaluated from the perspectives of internal measurement error and external measurement difficulty, making the determined positioning confidence value more accurate and reliable.
[0151] The aforementioned external confidence factors for location are positively correlated with the location confidence value, while the aforementioned internal confidence factors for location are negatively correlated with the location confidence value.
[0152] In this invention, the pulse similarity value is quantified by analyzing the Pearson correlation coefficient between the pulse signal corresponding to the ultra-wideband signal and the standard pulse signal. The pulse signal (usually represented as a sequence) can be extracted from the ultra-wideband base station (i.e., the wireless signal receiver).
[0153] The instantaneous phase drift value is quantified by the ratio of the absolute difference in carrier phase between adjacent sampling times to the time difference between adjacent sampling times. It should be understood that multiple instantaneous phase drift values can be statistically analyzed within a time window. The carrier phase can be obtained from the ultra-wideband base station through the underlying driver or developer API interface.
[0154] For example, locating built-in information factors It can be represented as:
[0155]
[0156] in, This represents the total number of instantaneous phase drift values calculated within the corresponding time window. Indicates the first time within the corresponding time window Each phase instantaneous drift value, This indicates the aforementioned pulse similarity value.
[0157] Locating external confidence factors It can be represented as:
[0158]
[0159] in, Indicates motion identification value, This represents the cumulative value of motion error.
[0160] Furthermore, obtaining the location confidence value based on the external confidence factor and the internal confidence factor includes:
[0161] The location external confidence factor is normalized to obtain the positive factor normalization value;
[0162] The built-in information factor of the positioning is normalized to obtain the normalized value of the negative factor;
[0163] The ratio of the normalized value of the positive factor to the normalized value of the negative factor is determined as the location information value.
[0164] In the above settings, normalization is used to eliminate the dimensional differences between the external confidence factor and the internal confidence factor for positioning, thereby ensuring the accuracy of the positioning confidence value calculated subsequently.
[0165] For example, the location information value It can be represented as:
[0166]
[0167] in, This represents the proportional normalization function.
[0168] Step S4: Within the target time window, perform fusion positioning based on the positioning information value, the ultra-wideband positioning result, and the positioning result of the inertial measurement unit to obtain the target positioning result of the robotic arm.
[0169] Specifically, after calculating the aforementioned location confidence value, this value is used as a dynamic weighting factor for UWB observations in the fusion process, and multiplied by the UWB calculation result (i.e., the ultra-wideband positioning result). When the weight of UWB is higher (which can be understood as the observation weight in Kalman filtering or extended Kalman filtering), the weight of UWB increases accordingly. At this time, the drift problem of the positioning result of the inertial measurement unit can be effectively suppressed by the more reliable UWB positioning result. Conversely, the corresponding reduction of UWB weight can reduce the degree of trust in the UWB positioning result, thereby suppressing the error correction introduced by the erroneous UWB positioning result, so that the final positioning result retains a high positioning accuracy.
[0170] This invention proposes a high-precision positioning system for a robotic arm based on UWB and IMU fusion technology. Please refer to [link / reference]. Figure 2 The diagram illustrates a structural schematic of a high-precision positioning system 200 for a robotic arm based on UWB and IMU fusion technology, according to an embodiment of the present invention. The system includes:
[0171] The error accumulation analysis module 201 is used to analyze the changes of the first motion data within the target time window and obtain the cumulative value of motion error. The first motion data is the motion data of the robotic arm collected by the inertial measurement unit within the corresponding time window. The cumulative value of motion error is used to represent the cumulative error introduced by the robotic arm action within the corresponding time window.
[0172] The motion identification and analysis module 202 is used to analyze the changes of the second motion data within the target time window to obtain a motion identification value. The second motion data is the motion data of the robotic arm acquired by ultra-wideband within the corresponding time window. The motion identification value is used to represent the confidence level of tracking the position of the robotic arm under different degrees of freedom of motion within the corresponding time window by ultra-wideband.
[0173] The positioning confidence analysis module 203 is used to obtain a positioning confidence value based on the cumulative motion error value and the motion identification value, wherein the positioning confidence value is used to represent the confidence level of the ultra-wideband positioning result in participating in fusion positioning within the corresponding time window;
[0174] The fusion positioning module 204 is used to perform fusion positioning based on the positioning information value, the ultra-wideband positioning result and the positioning result of the inertial measurement unit within the target time window to obtain the target positioning result of the robotic arm.
[0175] It should be noted that the system provided in the above embodiments is only an example of the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the computer device can be divided into different functional modules to complete all or part of the functions described above. In addition, the high-precision positioning system for a robotic arm based on UWB and IMU fusion technology and the high-precision positioning method for a robotic arm based on UWB and IMU fusion technology provided in the above embodiments belong to the same concept. The specific implementation process is detailed in the method embodiments and will not be repeated here.
[0176] This invention also provides an electronic device. Please refer to [link to relevant documentation]. Figure 3 The electronic device may include a processor 301, a memory 302, and a program 3021 stored in the memory 302 and capable of running on the processor 301.
[0177] When program 3021 is executed by processor 301, it can achieve the following: Figure 1 Any steps in the corresponding method embodiments and the achievement of the same beneficial effects will not be repeated here.
[0178] Those skilled in the art will understand that all or part of the steps of the methods described in the above embodiments can be implemented by hardware related to program instructions, and the program can be stored in a readable medium.
[0179] This invention also provides a readable storage medium storing a computer program, which, when executed by a processor, can perform the above-described functions. Figure 1 Any step in the corresponding method embodiment can achieve the same technical effect, and will not be repeated here to avoid repetition.
[0180] The computer-readable storage medium of this invention can be any combination of one or more computer-readable media. The computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. For example, a computer-readable storage medium can be an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of computer-readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this document, a computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0181] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, capable of sending, propagating, or transmitting programs for use by or in connection with an instruction execution system, apparatus, or device.
[0182] The program code contained on the storage medium can be transmitted using any suitable medium, including but not limited to wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.
[0183] Computer program code for performing the operations of this invention can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as "C" or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or terminal. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0184] This invention also provides a computer program product that, when run on a computer, causes the computer to perform the aforementioned steps to achieve the high-precision positioning method for a robotic arm based on UWB and IMU fusion technology provided in the above embodiments.
[0185] It should be noted that the order of the above embodiments of the present invention is merely for descriptive purposes and does not represent the superiority or inferiority of the embodiments. The processes depicted in the accompanying drawings do not necessarily require a specific or sequential order to achieve the desired result. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0186] The various embodiments in this specification are described in a progressive manner. The same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on describing the differences from other embodiments.
Claims
1. A high-precision positioning method for a robotic arm based on UWB and IMU fusion technology, characterized in that, The method includes: Within the target time window, the changes in the first motion data are analyzed to obtain the cumulative value of motion error. The first motion data is the motion data of the robotic arm collected by the inertial measurement unit within the corresponding time window. The cumulative value of motion error is used to represent the cumulative error introduced by the robotic arm's actions within the corresponding time window. Within the target time window, the changes in the second motion data are analyzed to obtain a motion identification value. The second motion data is the motion data of the robotic arm acquired by ultra-wideband within the corresponding time window. The motion identification value is used to represent the confidence level of tracking the position of the robotic arm under different degrees of freedom of motion within the corresponding time window by ultra-wideband. Based on the cumulative motion error value and the motion identification value, a positioning confidence value is obtained, wherein the positioning confidence value is used to represent the confidence level of the ultra-wideband positioning result in participating in fusion positioning within the corresponding time window; Within the target time window, fusion positioning is performed based on the positioning information value, the ultra-wideband positioning result, and the positioning result of the inertial measurement unit to obtain the target positioning result of the robotic arm; The analysis of changes in the first motion data yields the cumulative motion error value, including: By analyzing the changes in angular velocity data included in the first motion data, an angular velocity fluctuation index is obtained, wherein the angular velocity fluctuation index is used to represent the degree of drastic change in the angular velocity of the robotic arm within a corresponding time window; The changes in the pose observation offset data included in the first motion data are analyzed to obtain the pose fluctuation index, wherein the pose fluctuation index is used to at least represent the degree of drastic change in the deviation between the observed pose and the reference pose of the robotic arm within the corresponding time window. The cumulative value of motion error is obtained based on the pose fluctuation index and the angular velocity fluctuation index; The analysis of the changes in angular velocity data included in the first motion data yields an angular velocity fluctuation index, including: Among the multiple angular velocity monitoring points included in the angular velocity data, the time interval between adjacent first angular velocity monitoring points and second angular velocity monitoring points is analyzed to obtain the angular velocity fluctuation period value, wherein the first angular velocity monitoring point is the angular velocity monitoring point corresponding to the local maximum value, and the second angular velocity monitoring point is the angular velocity monitoring point corresponding to the local minimum value; Among the multiple angular velocity monitoring points included in the angular velocity data, the concentration trend of multiple first angular velocity monitoring points is analyzed to obtain the characteristic peak value of angular velocity; Among the multiple angular velocity monitoring points included in the angular velocity data, the degree of disorder of multiple first angular velocity monitoring points is analyzed to obtain the peak entropy value of angular velocity; The angular velocity fluctuation index is obtained based on the angular velocity fluctuation period value, the angular velocity characteristic peak value, and the angular velocity peak entropy value. The analysis of the changes in pose observation offset data included in the first motion data yields a pose fluctuation index, including: Among the multiple pose offset monitoring points included in the pose observation offset data, the central tendency of the differences between adjacent pose offset monitoring points is analyzed to obtain the pose fluctuation index. The analysis of changes in the second motion data yields motion identification values, including: The differences between the multiple displacement sequences included in the second motion data are analyzed to obtain the degree of freedom discrimination value, wherein the multiple displacement sequences correspond one-to-one with the multiple motion degrees of freedom of the robotic arm; In the second motion data, which includes multiple displacement sequences, the degree of change of each sequence element of the displacement sequence is analyzed to obtain multiple displacement fluctuation indices. The motion recognition degree is obtained based on the degree of freedom differentiation value and the multiple displacement fluctuation indices; The step of obtaining the positioning information value based on the cumulative motion error value and the motion identification value includes: Based on the cumulative motion error value and the motion identification value, the external confidence factor for positioning is obtained; Within the target time window, the similarity between the pulse signal corresponding to the ultra-wideband and the standard pulse signal is analyzed to obtain the pulse similarity value, wherein the standard pulse signal is the ultra-wideband pulse signal under interference-free conditions; Within the target time window, the instantaneous change in the carrier phase corresponding to the ultra-wideband is analyzed to obtain the instantaneous phase drift value; The positioning built-in information factor is obtained based on the pulse similarity value and the instantaneous phase drift value; The location confidence value is obtained based on the external confidence factor and the internal confidence factor. The step of obtaining the location confidence value based on the external confidence factor and the internal confidence factor includes: The location external confidence factor is normalized to obtain the positive factor normalization value; The built-in information factor of the positioning is normalized to obtain the normalized value of the negative factor; The ratio of the normalized value of the positive factor to the normalized value of the negative factor is determined as the location information value.
2. In the high-precision positioning method for a robotic arm based on UWB and IMU fusion technology according to claim 1, the angular velocity fluctuation period value is negatively correlated with the angular velocity fluctuation index, the angular velocity characteristic peak value is negatively correlated with the angular velocity fluctuation index, and the angular velocity peak entropy value is positively correlated with the angular velocity fluctuation index.
3. The high-precision positioning method for a robotic arm based on UWB and IMU fusion technology according to claim 1, characterized in that, The analysis of the differences between multiple displacement sequences included in the second motion data yields a degree-of-freedom discrimination value, including: In the second motion data, which includes multiple displacement sequences, the mean square error between any two different displacement sequences is calculated to obtain the mean square error between multiple sequences. The average mean square error among the multiple sequences is calculated to obtain the degree of freedom discrimination value.
4. The high-precision positioning method for a robotic arm based on UWB and IMU fusion technology according to claim 1, characterized in that, In the second motion data, which includes multiple displacement sequences, the degree of change of each sequence element in the displacement sequence is analyzed to obtain multiple displacement fluctuation indices, including: In the second motion data, which includes multiple displacement sequences, the differences between adjacent sequence elements in each displacement sequence are analyzed to obtain multiple displacement difference sequences. In the multiple displacement difference sequences, the dispersion of the sequence elements of each displacement difference sequence is analyzed to obtain multiple displacement fluctuation indices.
Citation Information
Patent Citations
Positioning confidence optimization method based on Bayesian multi-sensor error constraint
CN114019552A
Unmanned vehicle positioning method, device, equipment and medium
CN120558195A