An industrial robot pose error compensation method and system based on digital twinning
Patent Information
- Application Number
- CN202611157772.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-31
- Publication Date
- 2026-10-30
AI Technical Summary
[0004]然而,上述中的相关技术中通过三维建模构建机器人虚拟模型并实现数据交互,但该模型仅含几何参数,未涉及关节柔性、传动间隙等物理特性表征,无法反映受力形变影响;数据交互仅限于角度和位置指令,未融合力矩传感和末端实测位姿等实时物理状态;同时缺乏误差辨识与参数校准机制,模型初始后固定不变,应用局限于离线仿真,未建立误差补偿闭环,也不具备在线更新能力,难以适应长期运行导致的特性漂移
本发明通过构建融合关节柔性与传动间隙物理特性的高保真数字孪生模型,并结合实时采集的关节力矩与末端位姿数据进行同步仿真,使仿真末端位姿能够实时反映负载变化与关节柔性形变引起的动态偏差,为误差补偿提供了与物理实体高度吻合的参考基准,从而提升了工业机器人在动态作业环境下的绝对定位精度。
Smart Images

Figure CN123000798A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of industrial robot control technology, and in particular to a method and system for compensating for pose errors in industrial robots based on digital twins. Background Technology
[0002] Industrial robots, as core equipment in automated production lines, are widely used in precision operations such as welding, assembly, and material handling. The pose accuracy of their end effectors—the precision with which they reach a designated position and posture within the workspace—is a key indicator of robot performance, directly impacting the final product's processing quality and production efficiency. Therefore, pose error compensation for industrial robots is an important technical means to enhance their application value and market competitiveness.
[0003] In related technologies, Chinese invention patent CN114260893B discloses a method for constructing a digital twin model of an industrial robot assembly and placement process. The method includes: constructing a digital twin virtual model of the industrial robot; specifying data interaction commands to achieve data interaction between the digital twin virtual model and the industrial robot, completing the actual assembly work; collecting the actions of the industrial robot under each data interaction command, constructing a digital twin model of the industrial robot assembly and placement process, and simulating the assembly process. This invention constructs a digital twin virtual model of the industrial robot assembly and placement process, which can be used to simulate the real industrial robot assembly process.
[0004] However, the aforementioned technologies construct virtual robot models through 3D modeling and achieve data interaction, but these models only contain geometric parameters and do not involve physical characteristics such as joint flexibility and transmission clearance, and cannot reflect the influence of force deformation; data interaction is limited to angle and position commands, and does not integrate real-time physical states such as torque sensing and end-effector measured pose; at the same time, there is a lack of error identification and parameter calibration mechanisms, the model remains fixed after initialization, the application is limited to offline simulation, no error compensation closed loop is established, and there is no online update capability, making it difficult to adapt to characteristic drift caused by long-term operation. Summary of the Invention
[0005] To address the aforementioned issues, this invention provides a method and system for compensating the pose error of industrial robots based on digital twins. By combining a high-fidelity digital twin model with a spatiotemporal error compensation network, it is possible to achieve adaptive and high-precision online compensation for the dynamic errors of the robot.
[0006] The above objectives can be achieved through the following approach: A method and system for compensating pose errors in industrial robots based on digital twins includes: acquiring joint angle sequences, joint torque sequences, and measured pose data of the end effector during the operation of the industrial robot to generate real-time physical state information; inputting the real-time physical state information into a pre-constructed digital twin model of the industrial robot to drive the digital twin model to perform synchronous simulation and generate simulated end effector pose information; calculating the pose deviation characteristics between the measured pose data and the simulated end effector pose information to generate a pose residual feature tensor; fusing the pose residual feature tensor with the joint angle sequences and joint torque sequences in the real-time physical state information to form a spatiotemporal input tensor; inputting the spatiotemporal input tensor into a pre-trained spatiotemporal error compensation network to generate a joint compensation increment sequence; and using the joint compensation increment sequence to correct the original joint position command sequence of the industrial robot to obtain compensated motion control commands to drive the robot to move.
[0007] Optionally, generating real-time physical state information includes: acquiring encoder pulse signals from each joint motor and calculating joint angle sequences; acquiring analog signals from torque sensors of each joint and converting them into joint torque sequences; obtaining measured pose data of the end effector in a reference coordinate system through an external pose measurement device; and performing time synchronization alignment processing on the joint angle sequences, the joint torque sequences, and the measured pose data to generate real-time physical state information with a unified timestamp.
[0008] Optionally, generating the simulated end-effector pose information includes: constructing a digital twin model; inputting the joint angle sequence from the real-time physical state information into the forward kinematics chain of the digital twin model to obtain the initial end-effector pose; using the joint torque sequence from the real-time physical state information and the joint flexibility model built into the digital twin model to calculate the joint deformation caused by torque for each joint; superimposing the joint deformation with the corresponding joint angle sequence to obtain the corrected simulated joint state, and driving the digital twin model to perform forward kinematics calculation again to output the simulated end-effector pose information.
[0009] Optionally, the construction of the digital twin model includes: acquiring the structural dimension parameters and kinematic geometry model of the industrial robot, and establishing an ideal digital body representing the ideal kinematic relationship; acquiring the measured joint motion trajectories and corresponding end-effector pose records of the industrial robot under different load conditions, identifying the joint flexibility coefficient and transmission clearance distribution, and forming an error compensation parameter set; integrating the error compensation parameter set into the ideal digital body, performing model parameter fusion and dynamic characteristic injection, and obtaining the digital twin model.
[0010] Optionally, generating the pose residual feature tensor includes: extracting end-effector position coordinates from the measured pose data, and subtracting them from the simulated position coordinates in the simulated end-effector pose information to obtain a position residual vector; extracting the end-effector pose representation from the measured pose data, and performing pose error calculation with the simulated pose representation in the simulated end-effector pose information to obtain a pose residual vector; and concatenating the position residual vector with the pose residual vector to generate the pose residual feature tensor.
[0011] Optionally, generating the joint compensation increment sequence includes: standardizing the pose residual feature tensor, the joint moment sequence, and the joint angle sequence to obtain normalized residual features, normalized moment sequences, and normalized angle sequences; concatenating the normalized residual features, the normalized moment sequences, and the normalized angle sequences along the feature dimension to form a multi-channel joint feature sequence; adding joint number information and timestamp encoding to the multi-channel joint feature sequence to form a spatiotemporal input tensor; and inputting the spatiotemporal input tensor into the spatiotemporal error compensation network to generate the joint compensation increment sequence.
[0012] Optionally, inputting the spatiotemporal input tensor into the spatiotemporal error compensation network includes: the spatiotemporal error compensation network is a spatiotemporal graph neural network, which internally includes a spatial graph convolutional layer, a temporally gated recurrent unit layer, and a fully connected output layer; the spatial graph convolutional layer uses each joint as a node and constructs an adjacency matrix based on the transmission chain relationship between joints, performs feature aggregation between adjacent joints on the input spatiotemporal input tensor, and outputs spatial aggregation features; the temporally gated recurrent unit layer receives the time series of the spatial aggregation features, captures the evolution law of error features in the time dimension, and generates a hidden state sequence; the fully connected output layer maps the hidden state sequence to the correction increment value corresponding to each joint, and combines them into a joint compensation increment sequence according to the time index.
[0013] Optionally, obtaining the compensated motion control command includes: aligning the joint compensation increment sequence with the original joint position command sequence point by point according to time labels to obtain an aligned joint compensation increment sequence; superimposing the aligned joint compensation increment sequence with the original joint position command sequence for corresponding joint values to generate a compensated joint position command; and applying smoothing filtering of joint velocity constraints and joint acceleration constraints to the compensated joint position command to obtain the compensated motion control command.
[0014] Optionally, the method further includes: during the execution of compensation control, combining the real-time physical state information, the pose residual feature tensor, and the joint compensation incremental sequence into training samples and storing them in a historical sample library; when the number of new samples or the statistical index of pose residual in the historical sample library reaches a preset update threshold, triggering an online learning process; using the samples in the historical sample library to incrementally train the spatiotemporal error compensation network, updating the network weight parameters of the spatiotemporal error compensation network, and obtaining a compensation model adapted to the characteristics of the current working condition.
[0015] Based on the same inventive concept, this invention also provides a digital twin-based industrial robot pose error compensation system. The system includes: a signal pose acquisition module for acquiring joint angle sequences, joint torque sequences, and measured pose data of the end effector during the operation of the industrial robot, generating real-time physical state information; a twin synchronous simulation module for inputting the real-time physical state information into a pre-constructed digital twin model of the industrial robot, driving the digital twin model to perform synchronous simulation, and generating simulated end effector pose information; and a residual tensor generation module for calculating the measured... The pose deviation characteristics between the pose data and the pose information of the simulated end effector are used to generate a pose residual feature tensor. The spatiotemporal compensation prediction module is used to fuse the pose residual feature tensor with the joint angle sequence and joint torque sequence in the real-time physical state information to form a spatiotemporal input tensor. The spatiotemporal input tensor is then input into a pre-trained spatiotemporal error compensation network to generate a joint compensation increment sequence. The command correction and driving module is used to correct the original joint position command sequence of the industrial robot using the joint compensation increment sequence to obtain a compensated motion control command to drive the robot to move.
[0016] Compared with the prior art, the present invention has the following advantages: This invention constructs a high-fidelity digital twin model that integrates the physical characteristics of joint flexibility and transmission clearance, and performs synchronous simulation by combining real-time acquired joint torque and end-effector pose data. This enables the simulated end-effector pose to reflect the dynamic deviation caused by load changes and joint flexibility deformation in real time, providing a reference benchmark that is highly consistent with the physical entity for error compensation, thereby improving the absolute positioning accuracy of industrial robots in dynamic working environments.
[0017] This invention designs an online incremental learning mechanism triggered by pose residual statistical indicators. During the execution of compensation control, real-time physical state information, pose residual feature tensors, and joint compensation incremental sequences are continuously collected to form training samples. When the residual indicators exceed a preset threshold, incremental training is automatically started to update the weight parameters of the spatiotemporal error compensation network. This enables the compensation model to continuously adapt to changes in operating conditions caused by factors such as joint wear and environmental temperature drift during long-term operation, effectively suppressing accuracy degradation and reducing the number of downtime calibrations.
[0018] This invention constructs a spatiotemporal error compensation network comprising spatial graph convolutional layers and temporally gated recurrent unit layers. Using each joint as a node and constructing an adjacency matrix based on the inter-joint transmission chain relationship for spatial feature aggregation, it also models the evolution of error features over time. This allows the network to fully capture the coupling dependencies in multi-joint cooperative motion and the dynamic evolution of errors over time, achieving compensation for nonlinear coupling errors and temporally correlated errors that are difficult to handle using traditional methods. Other features and advantages of the invention will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the invention. The objects and other advantages of the invention may be realized and obtained by means of the structures pointed out in the description, claims, and drawings. Attached Figure Description
[0019] To more clearly illustrate the technical solutions 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 some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0020] Figure 1 This is a flowchart illustrating a digital twin-based method for compensating for the pose error of an industrial robot according to an embodiment of the present invention.
[0021] Figure 2 This is the adjacency matrix diagram of the robot kinematic transmission chain according to an embodiment of the present invention.
[0022] Figure 3 This is a spatial graph convolutional adjacent joint feature correlation matrix diagram according to an embodiment of the present invention.
[0023] Figure 4 This is a distribution diagram of the joint compensation increments of the fully connected layer output in an embodiment of the present invention.
[0024] Figure 5 This is a convergence curve of the loss function according to an embodiment of the present invention.
[0025] Figure 6This is a schematic diagram of the structure of an industrial robot pose error compensation system based on digital twin according to an embodiment of the present invention. Detailed Implementation
[0026] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0027] Reference Figure 1 One embodiment of the present invention proposes a digital twin-based method for compensating the pose error of an industrial robot. By combining a high-fidelity digital twin model with a spatiotemporal error compensation network, it is possible to achieve adaptive and high-precision online compensation for the dynamic error of the robot.
[0028] The method described in this embodiment specifically includes: Acquire joint angle sequences, joint torque sequences, and measured pose data of the end effector during the operation of the industrial robot to generate real-time physical state information; Optionally, the generation of real-time physical state information includes: The encoder pulse signals of each joint motor are collected, and the joint angle sequence is calculated. The analog signals from the torque sensors of each joint are collected and converted into a joint torque sequence; The measured pose data of the end effector in the reference coordinate system is obtained by using an external pose measurement device; The joint angle sequence, the joint torque sequence, and the measured pose data are time-synchronized and aligned to generate real-time physical state information with a unified timestamp.
[0029] Specifically, to obtain the joint angle sequence, encoder pulse signals are collected from the drive motors of each joint of the robot. An encoder is a device that converts angular displacement into electrical signals; its output encoder pulse signal is a series of digital square waves, and the number of pulses is proportional to the angle rotated by the motor. By counting these pulses, the rotation angle of each joint can be calculated. For example, for the i-th joint, its angle value at time t... ,have: ; in, It is the total number of pulses recorded by the encoder of the i-th joint since the initial position; Represents the resolution of the i-th joint encoder, which is the number of pulses generated by the motor in one revolution, in units of pulses / revolution. This parameter is determined by the encoder hardware specifications. For example, based on actual measurements of a 2048-line incremental encoder, its value is 2048. The gear ratio of the i-th joint is determined by the robot's mechanical design. Arranging the angle values of all joints in chronological order creates a joint angle sequence. Analog signals from torque sensors at each joint are collected to generate a joint torque sequence. Torque sensors are typically based on the strain gauge principle; when a joint is subjected to torque, the elastic body inside the sensor undergoes slight deformation, causing a change in the strain gauge's resistance, thus outputting an analog voltage or current signal proportional to the torque magnitude. This analog signal is then converted into the actual torque value through an analog-to-digital converter (ADC) via calibration. The torque value of the i-th joint at time t... ,have: ; in, It is the voltage value acquired and digitized from the torque sensor of the i-th joint at time t; It is the sensitivity coefficient of the i-th torque sensor, which is determined by a calibration experiment in which a known torque is applied to the sensor and its voltage output is recorded. This is the bias voltage of the i-th sensor under zero load, also measured during calibration. The torque values of all joints are organized chronologically to form a joint torque sequence. The pose measurement values of the end effector in a reference coordinate system are acquired using an external pose measurement device deployed within the robot's workspace, such as a laser tracker or binocular vision system. The reference coordinate system is a fixed reference coordinate system, typically located at the robot's base, serving as a unified reference for all motion and measurement. The external pose measurement device can directly measure the position and orientation of specific marker points on the end effector, outputting pose measurements containing three-dimensional spatial coordinates and orientation information such as quaternions or Euler angles. Since the joint angle sequence, joint torque sequence, and pose measurement values originate from different sensors, their sampling frequencies and data generation times differ, necessitating time synchronization. This process aims to assign a unified timestamp to each set of data points. A common method is to set a uniform sampling frequency and generate a series of equally spaced unified timestamps. For any given unified timestamp, the original data stream may not contain a sampling point at exactly that moment. In such cases, interpolation algorithms are needed to estimate the value at the unified timestamp. For example, for a joint angle sequence, if the unified timestamp... Located at the original sampling time and Between, for the interpolated angle values ,have: ; in, and Is The two most recent original angle samples. The same interpolation method is applied to the joint torque sequence and pose measurements. After synchronization and alignment, at each unified timestamp... Each of these corresponds to a complete set of state data, including the angles of all joints, the torques of all joints, and the pose of the end effector. This set of data with a unified timestamp constitutes the real-time physical state information.
[0030] For example, suppose a six-axis industrial robot needs to be synchronized with a unified timestamp. Real-time physical state information is generated every second. For the angle acquisition of joint 2, the encoder resolution is 4096 pulses / revolution, and the reducer transmission ratio is 120. At 10.50 seconds, the cumulative pulse count for joint 2 read from the encoder counter is 6283185. The joint angle is calculated according to the formula: (Radians). The joint angle vector at 10.50 seconds was obtained by performing the same calculation on all six joints. For torque acquisition of joint 2, the torque sensor sensitivity coefficient was calibrated to 45.5 Nm / V, with a zero bias voltage of 2.50 V. Around 10.50 seconds, the voltage value acquired by the analog-to-digital converter was 2.72 V. Joint torque calculation: (Newton-meters). This calculation is performed on all six joints to obtain the joint torque vector at 10.50 seconds. For the measured pose data of the end effector, the data stream from the external pose measurement device shows the values at the original sampling time. The position at the second is [1.250, 0.860, 0.540] meters. The position at 10:50 seconds is [1.255, 0.862, 0.538] meters. To obtain the position at 10:50 seconds, linear interpolation is performed. Taking the X-coordinate as an example: (meters). Perform the same interpolation operation on the Y and Z coordinates and attitude data such as quaternions to obtain the complete pose measurement at 10.50 seconds. Combine all the data obtained from the above calculations and interpolation to generate real-time physical state information at 10.50 seconds, which includes: a unified timestamp of 10.50 seconds, the value at this moment in the joint angle sequence, including... Radius, etc.; the value at this moment in the joint torque sequence, including... Newton-meters, and the value at this moment in the measured pose data, including position. Rice, etc.
[0031] The real-time physical state information is input into the pre-built digital twin model of the industrial robot, driving the digital twin model to perform synchronous simulation and generate simulation end pose information; Optionally, the generation of simulated end-effector pose information includes: Obtain the structural dimensional parameters and kinematic geometry model of the industrial robot, and establish an ideal digital body representing the ideal kinematic relationship; The measured joint motion trajectories and corresponding end pose records of the industrial robot under different load conditions are obtained, the joint flexibility coefficient and transmission clearance distribution are identified, and an error compensation parameter set is formed. The error compensation parameter set is integrated into the ideal digital body, and model parameter fusion and dynamic characteristic injection are performed to obtain a digital twin model. The joint angle sequence in the real-time physical state information is input into the forward kinematics chain of the digital twin model to solve for the initial end pose. Using the joint torque sequence in the real-time physical state information and the joint flexibility model built into the digital twin model, the joint deformation caused by torque for each joint is calculated; The joint deformation is superimposed with the corresponding joint angle sequence to obtain the corrected simulated joint state, and the digital twin model is driven to perform forward kinematics calculation again to output the simulated end pose information.
[0032] Specifically, real-time physical state information is input into a pre-built digital twin model of the industrial robot. This aims to drive the digital twin model to perform synchronous simulation, thereby generating the simulation end-effector pose information. The digital twin model is a high-fidelity virtual copy of the physical industrial robot; it not only contains the robot's geometric and kinematic information but also incorporates its dynamic physical characteristics. The first step in building the digital twin model is to establish an ideal digital body that represents the robot's perfect, error-free kinematic relationships. This is achieved by acquiring the structural dimensional parameters and kinematic geometry model of the industrial robot. Structural dimensional parameters are typically described using the De Navetter-Hartenberg parameters (DH), including link lengths, link torsion angles, link offsets, and joint angles. For a robot composed of N links, the homogeneous coordinate transformation matrix from the (i-1)th link coordinate system to the ith link coordinate system is... ,have: ; in, It is the length of link i-1; It is the torsion angle of link i-1; It is the offset of link i; This refers to the angle of joint i. These parameters collectively constitute the kinematic geometry model, the core of the ideal digital body. Physical robots suffer from manufacturing and assembly errors, as well as deformations caused by forces during operation. These factors cause their behavior to deviate from the ideal digital body. To make the model more accurate, it is necessary to obtain the measured joint motion trajectories and corresponding end-effector pose records of the industrial robot under different load conditions. By comparing the differences between the predictions of the ideal model and the actual measurement results, the joint flexibility coefficient and transmission clearance distribution can be identified, ultimately forming an error compensation parameter set. The joint flexibility coefficient describes the ability of a joint to produce elastic deformation when subjected to torque. The flexibility deformation of the i-th joint... The torque it bears The relationship between them can be approximated as a linear relationship, as follows: ; in, This refers to the joint flexibility coefficient of the i-th joint. This coefficient is obtained by applying different loads to the robot's end effector, recording the torque and end effector pose deviation of each joint, and then fitting it using optimization algorithms such as least squares. For example, it is based on the analysis and identification of 200 sets of measured data under different loads. The transmission clearance distribution describes the error caused by factors such as gear clearance. These identified parameters together constitute the error compensation parameter set. Integrating the error compensation parameter set into an ideal digital volume, performing model parameter fusion and dynamic characteristic injection, yields the final digital twin model. This model can consider the flexible deformation caused by torque during simulation. During the operation phase, the joint angle sequence from the real-time physical state information is input into the forward kinematics chain of the digital twin model to solve for the initial end effector pose. The forward kinematics chain calculates the pose of the end effector relative to the base by multiplying the transformation matrices of each joint. For an N-axis robot, its initial end effector pose... ,have: ; Using the joint torque sequence from real-time physical state information and the joint flexibility model built into the digital twin model, the joint deformation caused by torque for each joint is calculated. According to the aforementioned flexibility model formula, for the i-th joint at time t, the deformation is... ,have: ; in, These are real-time measurements from the joint torque sequence. The calculated joint deformation is superimposed with the corresponding joint angle sequence to obtain the corrected simulated joint state. For the i-th joint, its corrected angle... ,have: ; this This represents a joint that more closely approximates its actual rotational state after considering torque deformation. The driving digital twin model is then solved again using forward kinematics, but this time with the corrected simulated joint state, resulting in more accurate simulated end-effector pose information. : ; this This is the final generated simulated end-effector pose information, which reflects the robot's actual pose under load better than the initial end-effector pose.
[0033] For example, consider a six-axis industrial robot whose digital twin model has been pre-built. Based on 200 sets of measured joint motion trajectories and corresponding end-effector pose records under different load conditions, the joint flexibility coefficient of the fourth joint is identified as 0.00015 rad / Nm. At time 10.50, the real-time physical state information obtained includes joint angle sequences and joint torque sequences. At 10.50 seconds, the angle of the fourth joint in the joint angle sequence is... Radius, the torque of the 4th joint in the joint torque sequence Newton-meters. Meanwhile, the angles and moments of the other five joints have also been obtained. A complete sequence of joint angles, each containing 1.570 radians, is input into the forward kinematics chain of the digital twin model. The initial end-effector pose is obtained by multiplying the transformation matrices of the six joints. Joint deformations are calculated using the joint moment sequence and the joint flexibility model. For the fourth joint, the joint deformation caused by the moment is: (Radians). The same calculation is performed on the other five joints to obtain their respective joint deformation variables. These joint deformation variables are then superimposed with the joint angle sequence to obtain the corrected simulated joint state. The corrected angle for the 4th joint is: (Radians). Combine the corrected angles of all six joints to form the corrected simulated joint state. This includes... The simulated joint state, corrected for radian, is then input again into the forward kinematics chain of the digital twin model for calculation. Through a new multiplication operation, the output pose matrix is the final simulated end-effector pose information. This information accurately reflects the end-effector pose change caused by the flexible deformation of joint 4 under a torque of 25.0 Nm.
[0034] Calculate the pose deviation characteristics between the measured pose data and the simulated end-effector pose information, and generate a pose residual feature tensor. Optionally, the generated pose residual feature tensor includes: The end-effector position coordinates are extracted from the measured pose data and differiated from the simulated position coordinates in the simulated end-effector pose information to obtain the position residual vector. Extract the end-effector pose representation from the measured pose data, and perform pose error calculation with the simulated pose representation in the simulated end-effector pose information to obtain the pose residual vector. The position residual vector and the attitude residual vector are concatenated to generate the pose residual feature tensor.
[0035] Specifically, the process of generating the pose residual feature tensor consists of three stages. First, the end-effector position coordinates are extracted from the measured pose data and differiated from the simulated position coordinates in the simulated end-effector pose information to obtain the position residual vector. The end-effector position coordinates are a three-dimensional vector containing three elements, representing the position in the X, Y, and Z directions in the reference coordinate system. The calculation of the position residual vector is a direct vector subtraction; for each time t, the position residual vector... ,have: ; in, It is the position residual vector at time t, and its components are... These represent the positional deviations along the three coordinate axes, respectively. These are the end-position coordinates extracted from the measured pose data; These are the simulated position coordinates extracted from the simulated end-effector pose information. The end-effector pose representation is extracted from the measured pose data and then compared with the simulated pose representation in the simulated end-effector pose information to perform pose error calculations, resulting in the pose residual vector. The pose representation describes the orientation of the end-effector in space and is typically represented using quaternions to avoid singularity problems. A quaternion q consists of one real part and three imaginary parts, i.e. The error between two attitudes is itself a rotation, which can be represented by an error quaternion. For this error quaternion... ,have: ; in, It is a quaternion representation of the simulated attitude; It is a quaternion representation of the measured attitude. It is the inverse of the measured attitude quaternion, and for a unit quaternion, it is its conjugate. ;symbol This represents quaternion multiplication. The resulting error quaternion is... This represents the rotation operation required to rotate the measured attitude to the simulated attitude. To convert it into a three-dimensional attitude residual vector, its vector portion can be extracted; for small rotations, this vector approximates the product of the rotation axis and the rotation angle. For this attitude residual vector... ,have: ; The attitude residual vector represents the small rotation angle error around each coordinate axis. It is an error quaternion The three imaginary parts; the coefficient 2 is introduced to ensure that its physical meaning remains consistent with the rotation vector under small-angle approximation. The calculated position residual vector and attitude residual vector are concatenated to generate a pose residual feature tensor containing complete six-degree-of-freedom deviation information. The concatenation operation combines the two vectors sequentially into a longer vector, resulting in the pose residual feature tensor. For this pose residual feature tensor... ,have: ; The pose residual feature tensor is a six-dimensional column vector. Its first three elements are positional deviations, and its last three elements are attitude deviations, which characterize the error between the simulation model and physical reality.
[0036] For example, at a unified timestamp of 10.50 seconds, the following data was obtained: The end-effector coordinates were extracted from the obtained measured pose data. And end-effector attitude representation (quaternion). From the obtained simulation end-effector pose information, the simulation position coordinates are extracted. And simulated attitude representation (quaternions). Calculate the position residual vector: (meters). Calculate the inverse of the measured attitude quaternion: ; Calculation error quaternion ,Right now ; ; .so, The attitude residual vector is calculated based on this error quaternion: (Radians). The position residual vector and the attitude residual vector are concatenated to generate the pose residual feature tensor: This six-dimensional vector describes the positional deviation of the robot's end effector at 10.50 seconds, which is (2,1,-1) mm, and the orientation deviation around the Y-axis, which is approximately 0.0030 radians.
[0037] The pose residual feature tensor is fused with the joint angle sequence and joint torque sequence in the real-time physical state information to form a spatiotemporal input tensor. The spatiotemporal input tensor is then input into a pre-trained spatiotemporal error compensation network to generate a joint compensation increment sequence. Optionally, the generation of the joint compensation increment sequence includes: The pose residual feature tensor, the joint moment sequence, and the joint angle sequence are standardized to obtain normalized residual features, normalized moment sequences, and normalized angle sequences. The normalized residual features, the normalized torque sequence, and the normalized angle sequence are concatenated along the feature dimension to form a multi-channel joint feature sequence; The multi-channel joint feature sequence is appended with joint number information and timestamp encoding to form a spatiotemporal input tensor; The spatiotemporal error compensation network is a spatiotemporal graph neural network, which contains a spatial graph convolutional layer, a temporally gated recurrent unit layer, and a fully connected output layer. The spatial graph convolutional layer uses each joint as a node and constructs an adjacency matrix based on the transmission chain relationship between joints. It performs feature aggregation between adjacent joints on the input spatiotemporal input tensor and outputs spatial aggregation features. The time-gated cyclic unit layer receives the time series of the spatial aggregation features, captures the evolution of error features in the time dimension, and generates a hidden state sequence. The fully connected output layer maps the hidden state sequence to the correction increment value corresponding to each joint, and combines them into a joint compensation increment sequence according to the time index.
[0038] Specifically, this step aims to utilize the information obtained in previous steps to calculate compensation values for correcting robot motion using a pre-trained intelligent network model. The pose residual feature tensor, joint torque sequence, and joint angle sequence are standardized to obtain normalized residual features, normalized torque sequence, and normalized angle sequence. The purpose of standardization is to eliminate the influence of different physical dimensions and numerical ranges, enabling the network to learn more stably. For any input feature value x, its standardized value... ,have: ; Where x represents the original data point to be standardized, such as a component of the pose residual, the torque value or angle value of a joint; It is the average value obtained by statistically analyzing a large amount of historical operational data for this type of feature. That is the corresponding standard deviation. These two parameters... and The standardization is pre-defined based on statistical analysis of, for example, over 1000 hours of robot operation data, ensuring its stability and representativeness. After standardization, the normalized residual features, normalized torque sequences, and normalized angle sequences are concatenated along the feature dimension to form a multi-channel joint feature sequence. This means that for each joint, at each time point, a fused feature vector containing end-effector pose error information, its own torque information, and its own angle information is created. To enable the network to understand the spatial and temporal attributes of the data, joint number information and timestamp encoding are added to the multi-channel joint feature sequence to form the final spatiotemporal input tensor. The joint number information can directly use the joint index number, while the timestamp encoding maps the timestamp t to a high-dimensional vector through a position encoding function to represent its temporal position in the sequence. A commonly used timestamp encoding method is to use sine and cosine functions, with the sine encoding value of the timestamp t at the even-numbered dimension index 2j. Cosine encoded value of timestamp t at odd-dimensional index 2j+1 ,have: ; Where j is the dimension index in the encoded vector; This is the total dimension of the encoded vector. This spatiotemporal input tensor integrates all information about "which joint (joint number)," "at what time (timestamp encoding)," "in what state (angle, torque)," and "caused what result (pose residual)." This spatiotemporal input tensor is fed into a pre-trained spatiotemporal error compensation network. This network is a spatiotemporal graph neural network, whose special structure allows it to simultaneously handle the physical connections between robot joints (i.e., the spatial dimension) and the evolution of states over time (i.e., the temporal dimension). The network mainly consists of three core parts. The first is the spatial graph convolutional layer. This layer uses the robot's joints as nodes in the graph and constructs an adjacency matrix based on the physical transmission chain relationships between joints on the robot body. The adjacency matrix is a square matrix; if two joints are directly connected, the corresponding element in the matrix is 1; otherwise, it is 0. Figure 2As shown in the diagram, the robot's joints, J1 to J6, are nodes. If two joints are directly connected via a transmission chain, their corresponding element in the matrix is 1 (represented by a white square in the diagram); otherwise, it is 0 (represented by a black square). For example, joints J1 and J2 are connected, J2 is connected to J1 and J3, and so on. The spatial graph convolutional layer operates on the spatiotemporal input tensor. Its core function is to allow the features of each joint to exchange and aggregate information with the features of its neighboring joints, thereby outputting spatial aggregated features that include the influence of local structures. This process can be understood as the error of a joint being related not only to its own state but also to the states of its neighboring joints. The second layer is the temporally gated recurrent unit layer. This layer receives the time series of spatial aggregated features output by the spatial graph convolutional layer. As a network structure capable of processing sequential data, its internal "gating" mechanism can selectively remember and forget historical information, thereby capturing the evolution of error features in the time dimension. At each time step, it updates an internal hidden state, which integrates the current input and the memory from the previous time step, ultimately generating a sequence of hidden states. The third is the fully connected output layer. This layer is a standard mapping layer that receives the sequence of hidden states output from the temporally gated recurrent unit layer. For the hidden state at each time point in the sequence, the fully connected output layer performs a linear transformation, mapping it to the corresponding correction increment value for each joint. This correction increment value is the amount of fine-tuning the joint angle predicted by the network to eliminate end-effector pose errors. Combining the correction increment values of all joints at all time points according to their time indices forms the final output, i.e., the joint compensation increment sequence. Figure 3 As shown, each element in the matrix represents the degree of correlation between the corresponding two joint features.
[0039] For example, at a unified timestamp of 10.50 seconds, for the 4th joint of an industrial robot, perform the following operations: Obtain the pose residual feature tensor. The value of the 4th joint in the joint angle sequence is 1.570 radians; the value of the 4th joint in the joint moment sequence is 25.0 Nm. Based on historical data statistics, the mean and standard deviation of the position residual components are 0 and 0.002, respectively; the mean and standard deviation of the attitude residual components are 0 and 0.005, respectively; the mean and standard deviation of the 4th joint angles are 1.5 and 0.5, respectively; the mean and standard deviation of the 4th joint moment are 20 and 10, respectively. The first component in the normalized residual feature is: The value of the 4th joint in the normalized angle sequence is: The value of the 4th joint in the normalized torque sequence is: Perform this operation on all feature components to obtain normalized features. Concatenate these normalized features to form a multi-channel joint feature sequence. After concatenation, the feature vector for joint 4 at 10.50 seconds is... Attach joint number information and timestamp encoding. The joint number is 4. The timestamp encoding has a dimension of 2, then... , The final joint 4 has a spatiotemporal input tensor of 10.50 seconds. The spatiotemporal input tensor is then fed into the spatiotemporal error compensation network. The spatial graph convolutional layer combines the input tensors of joints 3 and 5 to update the features of joint 4, generating spatial aggregated features. The temporally gated recurrent unit layer receives this spatial aggregated feature and, combined with the hidden state at 10.49 seconds, calculates the new hidden state at 10.50 seconds. The fully connected output layer maps this new hidden state to a numerical value, such as -0.0005. This value -0.0005 is the correction increment for joint 4 at 10.50 seconds. This process is repeated for all six joints to obtain the complete joint compensation increment for that moment. Arranging the compensation increments at each moment in chronological order constitutes the joint compensation increment sequence.
[0040] The original joint position command sequence of the industrial robot is corrected using the joint compensation increment sequence to obtain the compensated motion control command, which drives the robot to move.
[0041] Optionally, the compensated motion control command includes: The joint compensation increment sequence is aligned point by point with the original joint position instruction sequence according to the time label to obtain the aligned joint compensation increment sequence. The aligned joint compensation increment sequence is superimposed with the original joint position command sequence to generate the compensated joint position command. Smoothing filters are applied to the compensated joint position commands with joint velocity and joint acceleration constraints to obtain compensated motion control commands.
[0042] Specifically, the process of obtaining the compensated motion control commands is gradual. The joint compensation increment sequence output by the spatiotemporal error compensation network needs to be aligned point-by-point with the original joint position command sequence generated by the robot motion controller, according to time stamps. The original joint position command sequence is the predetermined trajectory for the robot to execute the task, consisting of a series of target joint angles with timestamps. Since the generation time of the joint compensation increment sequence may not completely coincide with the time of the original command, interpolation must be used to obtain the precise compensation value at each point in the original command, thus obtaining the aligned joint compensation increment sequence. For the i-th joint, at the time of the original command… The compensation increment after alignment ,have: ; in, It is the i-th joint at the instruction time The alignment compensation increment; It is the kth timestamp in the original joint position command sequence; and In the joint compensation incremental sequence, The two most recent timestamps; and These are the original compensation increment values corresponding to these two time points. After obtaining the aligned joint compensation increment sequence, it can be superimposed with the original joint position command sequence to generate the compensated joint position command. This superposition operation is the core of error compensation; it directly applies the correction amount predicted by the network to the original command. For the i-th joint, for the time point... Compensated joint position command ,have: ; in, It is the i-th joint in the original joint position command sequence at time i. The target angle value; This is the corrected new target angle value. Directly sending the compensated joint position command sequence to the robot controller may cause problems because simple numerical superposition can introduce unsmooth jumps, meaning that instantaneous velocity or acceleration may exceed the robot's physical tolerance. Smoothing filters with joint velocity and acceleration constraints must be applied to the compensated joint position commands to obtain the final safe and executable compensated motion control commands. The smoothing filter process examines the implicit velocity and acceleration from one command point to the next. For the i-th joint, its velocity... and acceleration Must meet: ; in, It is the angle value of the motion control command after compensation, which is finally output after smoothing and filtering; and These are the maximum permissible speed and maximum permissible acceleration of the i-th joint, respectively. These parameters are determined by the robot hardware, such as motor performance and reducer specifications, and are preset. If the calculated... If the sequence causes velocity or acceleration to exceed limits, the filter will automatically adjust the trajectory, for example, by generating a smooth transition curve to ensure all motion remains within constraints, thus generating the final compensated motion control command. Figure 4As shown, the diagram visually illustrates the sequence of compensation increments predicted by the fully connected output layer of the spatiotemporal error compensation network for each joint of the robot at a given moment. The height and direction of each bar in the diagram represent the required correction value for the corresponding joint; positive values indicate an increase in angle, and negative values indicate a decrease in angle.
[0043] For example, a six-axis industrial robot is performing a task, and its motion controller sends a sequence of raw joint position commands at a frequency of 100 Hz. At time 10.52, the controller plans to send a raw joint position command of 1.58000 radians to the fourth joint. Simultaneously, the generated joint compensation increment sequence contains... Compensation increment of the 4th joint in seconds radians, and in Compensation increment per second Radius. Perform point-by-point alignment and calculate the joint compensation increment after alignment at 10.52 seconds: (Radians). Generate compensated joint position commands: (Radians). Apply smoothing filter. The joint velocity constraint for joint 4 is 2.5 radians / second, and the joint acceleration constraint is 15.0 radians / second². Assume that the compensated motion control command output in the previous control cycle (t=10.51 seconds) was 1.57800 radians, and the velocity at that time was 0.140 radians / second. The time interval from t=10.51 seconds to t=10.52 seconds is 0.01 seconds. The desired velocity is: (radians per second). This speed The velocity constraint is satisfied. The desired acceleration is: (radians per second²). This acceleration The acceleration constraints are satisfied. Since all constraints are satisfied, the smoothing filter confirms that 1.57942 radians is a safe and feasible command. Therefore, at t=10.52 seconds, the final compensated motion control command generated and sent to the 4th joint actuator is 1.57942 radians.
[0044] Optionally, the method further includes: During the execution of compensation control, the real-time physical state information, the pose residual feature tensor, and the joint compensation increment sequence are combined into training samples and stored in the historical sample library. When the number of new samples or the statistical index of pose residuals in the historical sample library reach the preset update threshold, the online learning process is triggered. The spatiotemporal error compensation network is incrementally trained using samples from the historical sample library, and the network weight parameters of the spatiotemporal error compensation network are updated to obtain a compensation model that adapts to the characteristics of the current working condition.
[0045] Specifically, the method of this invention also includes a self-optimizing and continuously adapting mechanism to ensure that the compensation effect does not degrade due to changes in robot state or working environment. During the execution of compensation control, the system continuously packages the data generated during operation into a format that can be used for learning. Specifically, at each time point, the real-time physical state information, pose residual feature tensor, and joint compensation increment sequence are combined to form a complete training sample, which is then stored in a historical sample library. The historical sample library is a continuously growing dataset that records the robot's error performance in various states and the compensation measures taken to correct the error. Training is not endless; instead, the learning process is initiated through a preset trigger mechanism. When the data in the historical sample library accumulates to a certain level, or when the performance of the compensation model shows a noticeable decline, the online learning process is triggered. This judgment is based on a preset update threshold. This threshold can take two forms. The first is based on the number of newly added samples; for example, when the number of newly added training samples in the historical sample library reaches a specific value, an update is triggered. The second is based on statistical indicators of pose residuals, which can more directly reflect model performance. For example, a moving average of the pose residual feature tensor size over a recent period can be calculated. Once this average exceeds a preset performance tolerance limit, it indicates that the compensation effect of the current model is weakening and an update is needed. The average residual size is calculated for the k-th sampling time. ,have: ; in, This is the sliding window size used to calculate the moving average. It is a preset integer, for example, set to 1000 based on system response speed and stability requirements. It is the pose residual feature tensor at the j-th sampling time; Let represent the Euclidean norm of the tensor, which is the square root of the sum of the squares of all its elements, representing the magnitude of the total pose error at that moment; when When the error exceeds a preset threshold, an update is triggered. Once the online learning process is triggered, the spatiotemporal error compensation network is incrementally trained using samples accumulated in the historical sample library. Incremental training is an efficient learning method; it doesn't train the entire network from scratch, but rather fine-tunes it using new data based on existing network parameters. This allows the model to quickly absorb new information and adapt to new changes while retaining existing knowledge. During training, a batch of samples is drawn from the historical sample library, and the real-time physical state information and pose residual feature tensor from these samples are used as input to the current spatiotemporal error compensation network to obtain a predicted compensation increment. Then, this predicted value is compared with the joint compensation increment sequence actually used at that time, recorded in the samples, and the difference between the two is calculated; this difference is called the loss. The goal of training is to minimize this loss by adjusting the network's internal parameters. The network weight parameters are updated using gradient descent. For the updated network weight parameters... ,have: ; in, These are the network weight parameters before the update; It is the learning rate, which controls the step size of each update. Its value needs to be preset, for example, 0.001, to ensure the stability of the training process. It is a loss function, usually the mean squared error function, used to measure the difference between the predicted value and the true value. Specifically, there are... ,in, This represents the number of samples drawn from the historical sample database during each incremental training iteration. This represents the total number of joints in the industrial robot, i.e., the dimension of the compensation increment that the network output layer needs to predict. To represent the network according to the first The predicted value of the input sample is the 1st sample. The compensation increment value for each joint, For the first The first actual record in the sample The true value of the compensation increment of each joint is used as a supervision label during training. It is the loss function with respect to the old weight parameters The gradient indicates the direction of parameter adjustment that will most quickly reduce the loss. Through repeated iterations of this update process, the network weight parameters of the spatiotemporal error compensation network are continuously optimized, resulting in a compensation model that better adapts to the characteristics of the current operating conditions. For example... Figure 5 As shown, the curves reveal a trend where the loss function value gradually decreases and eventually stabilizes as the number of training rounds increases. This indicates that the network continuously updates the weight parameters through gradient descent, making the error between the compensation increment predicted by the model and the actual observed value smaller and smaller.
[0046] For example, after a robot completes a long-term repetitive handling task, its positioning accuracy begins to decline due to wear on joint components. During the execution of compensatory control, training samples are continuously generated and stored. At time t=36000.5 seconds, a training sample is recorded, containing real-time physical state information (joint angles and torques) at that moment, and the pose residual feature tensor calculated at that moment. The value, along with a value from the generated joint compensation increment sequence, such as -0.00082 radians for the 4th joint, is stored in the historical sample database. Statistical indicators of the pose residual are continuously monitored. The error threshold in the preset update threshold is set to 0.006. The sliding window size is set to 1000. At t=36010.0 seconds, the average residual of the most recent 1000 samples is calculated. Assuming the calculated... It is 0.0061. Because... The triggering condition was met, and the online learning process was initiated. 10,000 recently added samples were extracted from the historical sample database for incremental training. Taking the sample at t=36000.5 seconds as an example, the training process is as follows: The real-time physical state information and pose residual feature tensor of this sample are input into the current spatiotemporal error compensation network; the network predicts a compensation increment for the 4th joint based on its current network weight parameters, assumed to be -0.00075 radians; the loss is calculated, the actual compensation value recorded in the sample is -0.00082 radians, and the squared error loss between the two is... The total loss for all joints and all extracted samples is calculated, along with the gradient of the loss function with respect to all weight parameters in the network. The network weight parameters are then updated using a preset learning rate of 0.001 according to the gradient descent formula. After multiple iterations, training is complete. The new network weight parameters are loaded into the spatiotemporal error compensation network, forming a new compensation model adapted to the current working conditions, specifically the characteristics after joint wear. This model will then be able to more accurately predict errors caused by wear and generate more effective compensation commands.
[0047] Based on the same inventive concept, such as Figure 6 As shown, the present invention also provides an industrial robot pose error compensation system based on digital twins, the system comprising: The signal pose acquisition module is used to acquire the joint angle sequence, joint torque sequence, and measured pose data of the end effector of the industrial robot during operation, and generate real-time physical state information. The twin synchronous simulation module is used to input the real-time physical state information into the pre-built digital twin model of the industrial robot, drive the digital twin model to perform synchronous simulation, and generate simulation end pose information; The residual tensor generation module is used to calculate the pose deviation characteristics between the measured pose data and the simulated end pose information, and generate a pose residual feature tensor. The spatiotemporal compensation prediction module is used to fuse the pose residual feature tensor with the joint angle sequence and joint torque sequence in the real-time physical state information to form a spatiotemporal input tensor. The spatiotemporal input tensor is then input into a pre-trained spatiotemporal error compensation network to generate a joint compensation increment sequence. The instruction correction drive module is used to correct the original joint position instruction sequence of the industrial robot using the joint compensation increment sequence to obtain the compensated motion control instruction and drive the robot to move.
[0048] It should be noted that the electrical connections between the various units described above do not necessarily represent direct or indirect connections. Any indirect connection method can be applied to the embodiments of the present invention as long as it achieves the purpose of the present invention. The above descriptions are merely exemplary embodiments of the present invention and should not be construed as limiting the scope of the present invention.
[0049] All equivalent changes and modifications made in accordance with the teachings of this invention are still within the scope of this invention. Those skilled in the art will readily conceive of other embodiments of this invention upon considering the specification and the disclosure of practical truth. This application is intended to cover any variations, uses, or adaptations of this invention that follow the general principles of this invention and include common knowledge or conventional techniques in the art not described herein.
Claims
1. A method for compensating pose error of an industrial robot based on digital twin, characterized in that, The method includes: Acquire joint angle sequences, joint torque sequences, and measured pose data of the end effector during the operation of the industrial robot to generate real-time physical state information; The real-time physical state information is input into the pre-built digital twin model of the industrial robot, driving the digital twin model to perform synchronous simulation and generate simulation end pose information; Calculate the pose deviation characteristics between the measured pose data and the simulated end-effector pose information, and generate a pose residual feature tensor. The pose residual feature tensor is fused with the joint angle sequence and joint torque sequence in the real-time physical state information to form a spatiotemporal input tensor. The spatiotemporal input tensor is then input into a pre-trained spatiotemporal error compensation network to generate a joint compensation increment sequence. The original joint position command sequence of the industrial robot is corrected using the joint compensation increment sequence to obtain the compensated motion control command, which drives the robot to move.
2. The method for compensating for pose error of an industrial robot based on digital twins according to claim 1, characterized in that, The generation of real-time physical state information includes: The encoder pulse signals of each joint motor are collected, and the joint angle sequence is calculated. The analog signals from the torque sensors of each joint are collected and converted into a joint torque sequence; The measured pose data of the end effector in the reference coordinate system is obtained by using an external pose measurement device; The joint angle sequence, the joint torque sequence, and the measured pose data are time-synchronized and aligned to generate real-time physical state information with a unified timestamp.
3. The method for compensating for pose error of an industrial robot based on digital twins according to claim 1, characterized in that, The generated simulation end-effector pose information includes: A digital twin model is constructed by inputting the joint angle sequence from the real-time physical state information into the forward kinematics chain of the digital twin model and solving for the initial end pose. Using the joint torque sequence in the real-time physical state information and the joint flexibility model built into the digital twin model, the joint deformation caused by torque for each joint is calculated; The joint deformation is superimposed with the corresponding joint angle sequence to obtain the corrected simulated joint state, and the digital twin model is driven to perform forward kinematics calculation again to output the simulated end pose information.
4. The method for compensating for pose error of an industrial robot based on digital twins according to claim 3, characterized in that, The construction of the digital twin model includes: Obtain the structural dimensional parameters and kinematic geometry model of the industrial robot, and establish an ideal digital body representing the ideal kinematic relationship; The measured joint motion trajectories and corresponding end pose records of the industrial robot under different load conditions are obtained, the joint flexibility coefficient and transmission clearance distribution are identified, and an error compensation parameter set is formed. The error compensation parameter set is integrated into the ideal digital body, and model parameter fusion and dynamic characteristic injection are performed to obtain a digital twin model.
5. The method for compensating for pose error of an industrial robot based on digital twins according to claim 1, characterized in that, The generated pose residual feature tensor includes: The end-effector position coordinates are extracted from the measured pose data and differiated from the simulated position coordinates in the simulated end-effector pose information to obtain the position residual vector. Extract the end-effector pose representation from the measured pose data, and perform pose error calculation with the simulated pose representation in the simulated end-effector pose information to obtain the pose residual vector. The position residual vector and the attitude residual vector are concatenated to generate the pose residual feature tensor.
6. The method for compensating for pose error of an industrial robot based on digital twins according to claim 1, characterized in that, The generated joint compensation increment sequence includes: The pose residual feature tensor, the joint moment sequence, and the joint angle sequence are standardized to obtain normalized residual features, normalized moment sequences, and normalized angle sequences. The normalized residual features, the normalized torque sequence, and the normalized angle sequence are concatenated along the feature dimension to form a multi-channel joint feature sequence. The multi-channel joint feature sequence is appended with joint number information and timestamp encoding to form a spatiotemporal input tensor; The spatiotemporal input tensor is input into the spatiotemporal error compensation network to generate a joint compensation increment sequence.
7. The method for compensating for pose error of an industrial robot based on digital twins according to claim 6, characterized in that, The step of inputting the spatiotemporal input tensor into the spatiotemporal error compensation network includes: The spatiotemporal error compensation network is a spatiotemporal graph neural network, which contains a spatial graph convolutional layer, a temporally gated recurrent unit layer, and a fully connected output layer. The spatial graph convolutional layer uses each joint as a node and constructs an adjacency matrix based on the transmission chain relationship between joints. It performs feature aggregation between adjacent joints on the input spatiotemporal input tensor and outputs spatial aggregation features. The time-gated cyclic unit layer receives the time series of the spatial aggregation features, captures the evolution of error features in the time dimension, and generates a hidden state sequence. The fully connected output layer maps the hidden state sequence to the correction increment value corresponding to each joint, and combines them into a joint compensation increment sequence according to the time index.
8. The method for compensating for pose error of an industrial robot based on digital twins according to claim 1, characterized in that, The compensated motion control commands include: The joint compensation increment sequence is aligned point by point with the original joint position instruction sequence according to the time label to obtain the aligned joint compensation increment sequence. The aligned joint compensation increment sequence is superimposed with the original joint position command sequence to generate the compensated joint position command. Smoothing filters are applied to the compensated joint position commands with joint velocity and joint acceleration constraints to obtain compensated motion control commands.
9. The method for compensating for pose error of an industrial robot based on digital twins according to claim 1, characterized in that, The method further includes: During the execution of compensation control, the real-time physical state information, the pose residual feature tensor, and the joint compensation increment sequence are combined into training samples and stored in the historical sample library. When the number of new samples or the statistical index of pose residuals in the historical sample library reach the preset update threshold, the online learning process is triggered. The spatiotemporal error compensation network is incrementally trained using samples from the historical sample library, and the network weight parameters of the spatiotemporal error compensation network are updated to obtain a compensation model that adapts to the characteristics of the current working condition.
10. A digital twin-based industrial robot pose error compensation system, applied to the digital twin-based industrial robot pose error compensation method as described in any one of claims 1-9, characterized in that, The system includes: The signal pose acquisition module is used to acquire the joint angle sequence, joint torque sequence, and measured pose data of the end effector of the industrial robot during operation, and generate real-time physical state information. The twin synchronous simulation module is used to input the real-time physical state information into the pre-built digital twin model of the industrial robot, drive the digital twin model to perform synchronous simulation, and generate simulation end pose information; The residual tensor generation module is used to calculate the pose deviation characteristics between the measured pose data and the simulated end pose information, and generate a pose residual feature tensor. The spatiotemporal compensation prediction module is used to fuse the pose residual feature tensor with the joint angle sequence and joint torque sequence in the real-time physical state information to form a spatiotemporal input tensor. The spatiotemporal input tensor is then input into a pre-trained spatiotemporal error compensation network to generate a joint compensation increment sequence. The instruction correction drive module is used to correct the original joint position instruction sequence of the industrial robot using the joint compensation increment sequence to obtain the compensated motion control instruction and drive the robot to move.
Citation Information
Patent Citations
A method for constructing a digital twin model of an industrial robot assembly pick-and-place process
CN114260893B
