A compensation method for the frictional force error of a robotic arm
By combining the Kolmogolov-Arnold network and the long-term memory network, the characteristics of the robot joint are extracted and fused, and the friction compensation model is established, the problem of low friction error compensation accuracy in the existing technology is solved, and a more accurate friction compensation effect is achieved.
Patent Information
- Application Number
- CN202510315065.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-18
- Publication Date
- 2025-06-03
- Estimated Expiration
- 2045-03-18
AI Technical Summary
The prior art has low compensation accuracy for robotic friction errors, making it difficult to accurately identify friction forces when the contact interface is unknown.
By combining the Kolmogolov-Arnold network and the long-term memory network in deep learning, features such as joint curvature, output power, joint mass and joint length are extracted, feature fusion and normalization are performed, and the robot friction compensation model is established.
The compensation accuracy of robot friction errors is improved, and the frictional force changes can be captured more accurately when the contact surface is unknown, providing a more accurate frictional force compensation effect.
Smart Images

Figure CN119839872B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of robotics, and particularly to a method for compensating the friction force error of a robotic arm. Background Art
[0002] With the continuous development of technology, robots are increasingly being applied in production and daily life. The robotic arm bone device is a precision device used to assist patients in hand function rehabilitation training, and is widely used in the fields of sports rehabilitation and neurological rehabilitation. Patients with hand dysfunction caused by nerve injury or other diseases need to restore hand function through repeated and delicate operation training. However, in actual applications, the joints and sliding components of the robotic arm bone are affected by friction, resulting in a decrease in motion control accuracy.
[0003] The existing technology for compensating the friction force of a robotic arm usually relies on the robot joint friction model. The robot joint friction model is obtained by adding a simplified friction force model (such as Coulomb friction force, viscous resistance model, Stribeck model, Karnopp model, etc.) to the robot dynamics model and combining the method of parameter identification to identify the model parameters. However, the error compensation of the friction force of the robotic arm relying on the robot joint friction model in the existing technology is often of low accuracy.
[0004] Therefore, how to improve the compensation accuracy of the friction force error of the robotic arm has become a technical problem that needs to be solved urgently by those skilled in the art. Summary of the Invention
[0005] Based on the above problems, the present application provides a method for compensating the friction force error of a robotic arm to improve the compensation accuracy of the friction force error of the robotic arm.
[0006] The present application provides a method for compensating the friction force error of a robotic arm, and the method includes the following steps:
[0007] Obtain the joint friction force compensation data of the robot and the standard compensation friction force corresponding to the joint friction force compensation data, where the joint friction force compensation data includes joint curvature, joint output power, joint mass, and joint length;
[0008] Extract features from the joint friction force compensation data to obtain a feature extraction result;
[0009] Perform layer normalization processing on the feature extraction result using a pre-trained friction force compensation model to obtain a first normalization result;
[0010] Magnify the first normalization result by a preset multiple to obtain a magnification result;
[0011] Process the amplified result through the Kolmogorov - Arnold network of the pre - trained friction compensation model to obtain a query vector, a key vector, and a reference vector;
[0012] Determine a value vector based on the amplified result;
[0013] Process the query vector, the key vector, and the value vector under the guidance of the amplified result through the long - short - term memory network of the pre - trained friction compensation model to obtain a first processing result;
[0014] Perform group normalization on the first processing result using the pre - trained friction compensation model to obtain a second normalization result;
[0015] Fuse the second normalization result, the reference vector, and the amplified result to obtain a feature fusion result;
[0016] Shrink the feature fusion result according to a preset ratio to obtain a shrunk result;
[0017] Process the shrunk result through a Kolmogorov - Arnold layer to obtain a second processing result;
[0018] Perform channel normalization on the second processing result using the pre - trained friction compensation model to obtain a predicted compensated friction;
[0019] Adjust the parameters of the pre - trained friction compensation model based on the difference between the standard compensated friction and the predicted compensated friction, and continuously train the pre - trained friction compensation model using the joint friction compensation data of the robot and the standard compensated friction corresponding to the joint friction compensation data to obtain a manipulator friction compensation model;
[0020] Compensate for the friction error of the manipulator through the manipulator friction compensation model.
[0021] In a possible implementation, the Kolmogorov - Arnold network includes a 1x4 convolution, a 1x1 convolution, a 4x1 convolution, a Kolmogorov - Arnold layer, a summation layer, and an activation function. The process of processing the amplified result through the Kolmogorov - Arnold network of the pre - trained friction compensation model to obtain a query vector, a key vector, and a reference vector includes:
[0022] Process the amplified result through the 1x4 convolution, the 1x1 convolution, and the 4x1 convolution respectively to obtain a first convolution result, a second convolution result, and a third convolution result;
[0023] Sum the first convolution result, the second convolution result, and the third convolution result through the summation layer to obtain a summation result;
[0024] Input the summation result into the Kolmogorov - Arnold layer to obtain a non - linear learning result;
[0025] Fuse the non - linear learning result and the amplification result to obtain a non - linear fusion result;
[0026] Obtain the query vector, the key vector, and the reference vector from the non - linear fusion result by using an activation function.
[0027] In a possible implementation, the activation function is represented by the following formula:
[0028] LeakySigmoid(x)=x(Sigmoid(x)+αmax(0, - x));
[0029] where, LeakySigmoid(x) represents the activation function, α represents a constant, and x represents the input of the activation function, .
[0030] In a possible implementation, the parameters of the long short - term memory network are represented by the following formula:
[0031] ;
[0032] where, t represents time, represents the memory state at time t, represents the first intermediate quantity at time t, represents the memory state at time t - 1, represents the second intermediate quantity at time t, represents the value vector at time t, represents the key vector at time t;
[0033] ;
[0034] where, t represents time and n represents the time series, represents the time series corresponding to time t, represents the first intermediate quantity at time t, represents the time series at time t - 1, represents the second intermediate quantity at time t, represents the key vector at time t;
[0035] ;
[0036] where, t represents time, represents the measured value of the state quantity at time t, represents the state quantity at time t, represents a third intermediate quantity, which is related to the query vector at time t.
[0037] In a possible implementation, the error value of the state quantity at time t is represented by the following formula:
[0038] ;
[0039] where t represents time, represents the measured value of the state quantity at time t, represents the memory state at time t, represents the query vector at time t, represents the time series corresponding to time t.
[0040] In a possible implementation, the query vector, key vector, and reference vector are represented by the following formula:
[0041] ;
[0042] where t represents time, represents the query vector at time t, represents the input value at time t, represents the first weight, represents the first component;
[0043] ;
[0044] where t represents time, represents that the dimension of the query vector q is d, represents the key vector at time t, represents the input value at time t, represents the second weight, represents the second component;
[0045] ;
[0046] where t represents time, represents the value vector at time t, represents the input value at time t, represents the third weight, represents the third component.
[0047] In a possible implementation, the first intermediate quantity, the second intermediate quantity, and the third intermediate quantity are represented by the following formula:
[0048] ;
[0049] where t represents time, represents the first intermediate quantity at time t, represents the measured value of the first intermediate quantity at time t;
[0050] ;
[0051] where, represents the first parameter corresponding to the first intermediate quantity, represents the second parameter corresponding to the first intermediate quantity, represents the parameter corresponding to time t;
[0052] ;
[0053] where t represents time, represents the second intermediate quantity at time t, represents the measured value of the second intermediate quantity at time t;
[0054] ;
[0055] where, represents the first parameter corresponding to the second intermediate quantity, represents the second parameter corresponding to the second intermediate quantity, represents the parameter corresponding to time t;
[0056] ;
[0057] where t represents time, represents the third intermediate quantity at time t, represents the measured value of the third intermediate quantity at time t;
[0058] ;
[0059] where, represents the first parameter corresponding to the third intermediate quantity, represents the second parameter corresponding to the third intermediate quantity, represents the input value at time t.
[0060] This application also provides a compensation device for the friction error of a robotic arm. The device includes:
[0061] An acquisition module, configured to acquire the joint friction compensation data of the robot and the standard compensation friction force corresponding to the joint friction compensation data. The joint friction compensation data includes joint curvature, joint output power, joint mass, and joint length;
[0062] A feature extraction module, configured to perform feature extraction on the joint friction compensation data to obtain a feature extraction result;
[0063] A first normalization module, configured to perform layer normalization on the feature extraction result by using a pre-trained friction compensation model to obtain a first normalization result;
[0064] An upper projection module, configured to magnify the first normalization result by a preset multiple to obtain a magnified result;
[0065] A non-linear learning module, configured to process the magnified result through a Kolmogorov-Arnold network of the pre-trained friction compensation model to obtain a query vector, a key vector, and a reference vector;
[0066] A determination module, configured to determine a value vector based on the magnified result;
[0067] A first processing module, configured to process the query vector, the key vector, and the value vector under the guidance of the magnified result through a long short-term memory network of the pre-trained friction compensation model to obtain a first processing result;
[0068] A second normalization module, configured to perform group normalization on the first processing result by using a pre-trained friction compensation model to obtain a second normalization result;
[0069] A fusion module, configured to perform feature fusion on the second normalization result, the reference vector, and the magnified result to obtain a feature fusion result;
[0070] A lower projection module, configured to reduce the feature fusion result by a preset ratio to obtain a reduced result;
[0071] A second processing module, configured to process the reduced result through a Kolmogorov-Arnold layer to obtain a second processing result;
[0072] A third normalization module, configured to perform channel normalization on the second processing result by using a pre-trained friction compensation model to obtain a predicted compensated friction force;
[0073] A training module, configured to adjust parameters of the pre-trained friction compensation model based on a difference between the standard compensated friction force and the predicted compensated friction force, and continuously train the pre-trained friction compensation model by using the joint friction compensation data of the robot and the standard compensated friction force corresponding to the joint friction compensation data to obtain a manipulator friction compensation model;
[0074] A compensation module, configured to compensate for a friction error of the manipulator through the manipulator friction compensation model.
[0075] The present application further provides an electronic device, where the electronic device includes a processor and a memory:
[0076] The memory is used to store a computer program and transmit the computer program to the processor;
[0077] The processor is used to execute the steps of the above method for compensating the friction force error of the robotic arm according to the instructions in the computer program.
[0078] This application also provides a computer-readable storage medium, which is used to store a computer program. When the computer program is executed by an electronic device, the steps of the above method for compensating the friction force error of the robotic arm are realized.
[0079] Compared with the prior art, this application has the following beneficial effects:
[0080] The method provided by this application can capture the change law of friction force in a higher dimension through the combination of the Kolmogorov - Arnold network and the long short-term memory network in deep learning, perform precise modeling, and provide a more accurate friction force compensation effect. By extracting multiple key features including joint bending degree, output power, joint mass, and joint length, and combining the feature fusion technology in deep learning, the present invention fully explores the potential relationships in the data and improves the accuracy of friction force compensation. In addition, through the processing of normalization and feature fusion, the differences between different data dimensions are effectively reduced, ensuring the robustness of the model under different environments and working conditions. In the case where the contact surface is unknown, this application combines the Kolmogorov - Arnold network and the long short-term memory network, considers the contact surface conditions such as non-local memory effect, critical friction, and viscous friction, introduces non-local memory effect, critical friction, and viscous friction non-linear activation functions, identifies the optimal estimation state of the contact interface based on data-driven, and selects supplementary strategies considering the contact interface situation, which can maximize the reflection of the friction state of the contact surface, so as to more accurately compensate the friction force error of the robotic arm. Description of the Drawings
[0081] In order to more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the following drawings are only some embodiments of this application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0082] Figure 1 It is a flowchart of a method for compensating the friction force error of a robotic arm provided by an embodiment of this application;
[0083] Figure 2 It is a schematic diagram of a robotic arm provided by an embodiment of this application;
[0084] Figure 3 A structural schematic diagram of a Kolmogorov - Arnold network provided by an embodiment of the present application;
[0085] Figure 4 A structural schematic diagram of a long - short - term memory network provided by an embodiment of the present application;
[0086] Figure 5 A model structural schematic diagram of a pre - trained friction compensation model provided by an embodiment of the present application;
[0087] Figure 6 A structural schematic diagram of a compensation device for the friction error of a robotic arm provided by an embodiment of the present application. Detailed implementation manners
[0088] As described above, the prior art for compensating the friction of a robotic arm usually relies on a robot joint friction model. The robot joint friction model adds a simplified friction model (such as Coulomb friction, viscous resistance model, Stribeck model, Karnopp model, etc.) to the robot dynamics model and combines a parameter identification method to identify the model parameters. However, the error compensation of the robotic arm friction relying on the robot joint friction model in the prior art often has low accuracy.
[0089] Through research, it is found that due to the particularity of the robotic arm, when the robotic arm is not in use, the contact interface between the user and the robotic arm is unknown. In the case where the contact interface is unknown, the robot joint friction model in the related technology is not conducive to selecting the basic model and its combination form, and the friction identification accuracy is low. In addition, also due to the particularity of the robotic arm, there are many non - linear frictions during the use of the robotic arm. The method of combining machine learning for dynamics modeling in the related technology, although it can improve the non - linear fitting effect through a multi - layer neural network, for a robotic arm model with multiple moving joints, the motion space state is complex, and all states of the robotic arm motion process cannot be traversed, which is not conducive to realizing the dynamic control of the robot in any state. Therefore, the error compensation of the robotic arm friction in the related technology often has low accuracy.
[0090] In order to enable those skilled in the art to better understand the solution of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the scope of protection of the present application.
[0091] It can be understood that the method provided in this application can be applied to a processing device, which is a processing device that can obtain the joint friction compensation data of a robot, such as a terminal device or a server that can obtain the joint friction compensation data of a robot. The method provided in this application can be independently executed by a terminal device or a server, or can be applied to a network scenario where a terminal device and a server communicate, and is executed in cooperation with the terminal device and the server. Among them, the terminal device can be a device such as a computer or a mobile phone. The server can be understood as an application server or a Web server. In actual deployment, the server can be an independent server or a cluster server.
[0092] Figure 1 The following is a flowchart of a method for compensating the friction error of a robotic arm provided in this application. The method includes the following steps:
[0093] S101: Obtain the joint friction compensation data of the robot and the standard compensation friction force corresponding to the joint friction compensation data.
[0094] The processing device obtains the joint friction compensation data of the robot and the standard compensation friction force corresponding to the joint friction compensation data. The joint friction compensation data includes joint curvature, joint output power, joint mass, and joint length;
[0095] Figure 2 The following is a schematic diagram of a robotic arm provided in an embodiment of this application. In Figure 2 Joint 1 and joint N are marked, Figure 2 The shown robotic arm includes multiple joints.
[0096] In a possible implementation manner, the processing device can obtain the joint curvatures of the N joints from joint 1 to joint N. Taking joint 1 as an example, joint 1 can change from -5° to 90°, so the joint curvature of joint 1 is (-5°, 90°).
[0097] The processing device can collect the output power of the motor corresponding to each joint of the robotic arm through the energy supply system of the robotic arm. Taking joint 1 as an example, the kinetic energy taken when the processing device moves only joint 1 while keeping other joints stationary is . Therefore, can be regarded as a series of points, and this value changes as the joint changes from -5° to 90°.
[0098] The processing device can obtain the joint mass of the joint rotation part in the robotic glove participating in the joint rotation through the properties of the robotic glove. At the same time, the joint length in the robotic glove can also be obtained.
[0099] S102: Perform feature extraction on the joint friction compensation data to obtain a feature extraction result.
[0100] The processing device extracts features from the joint friction compensation data to obtain a feature extraction result.
[0101] Feature extraction can be performed through the feature extraction layer of a pre-trained friction compensation model or through a separate feature extraction model.
[0102] S103: Perform layer normalization on the feature extraction result using the pre-trained friction compensation model to obtain a first normalization result.
[0103] The processing device performs layer normalization on the feature extraction result using the pre-trained friction compensation model to obtain a first normalization result.
[0104] Layer normalization is achieved by calculating the mean and variance of all feature values in a single sample to normalize the input data and can be directly applied to recurrent neural networks. After normalization, two learnable parameters, adaptive bias and gain, are also provided to enhance the model's expressive power. Layer normalization performs exactly the same calculations during training and testing.
[0105] S104: Multiply the first normalization result by a preset multiple to obtain a magnified result.
[0106] The processing device multiplies the first normalization result by a preset multiple to obtain a magnified result.
[0107] Since the friction data in the robotic arm is small, to facilitate model training and make subsequent use more accurate, the first normalization result can be multiplied by a preset multiple to obtain a magnified result. In one possible implementation, the preset multiple can be two.
[0108] S105: Process the magnified result through the Kolmogorov - Arnold network of the pre-trained friction compensation model to obtain a query vector, a key vector, and a reference vector.
[0109] The processing device processes the magnified result through the Kolmogorov - Arnold network of the pre-trained friction compensation model to obtain a query vector, a key vector, and a reference vector.
[0110] In one possible implementation, the Kolmogorov - Arnold network includes 1x4 convolution, 1x1 convolution, 4x1 convolution, a Kolmogorov - Arnold layer, a summation layer, and an activation function.
[0111] The Kolmogorov - Arnold layer processes each input element by applying a learnable non - linear activation function.
[0112] The processing device can obtain the first convolution result, the second convolution result, and the third convolution result through 1x4 convolution, 1x1 convolution, and 4x1 convolution of the amplification result respectively.
[0113] Sum the first convolution result, the second convolution result, and the third convolution result through a summation layer to obtain a summation result.
[0114] Input the summation result into the Kolmogorov - Arnold layer to obtain a non - linear learning result.
[0115] Fuse the non - linear learning result and the amplification result to obtain a non - linear fusion result.
[0116] Obtain a query vector, a key vector, and a reference vector from the non - linear fusion result by using an activation function.
[0117] In a possible implementation, the activation function is represented by the following formula:
[0118] LeakySigmoid(x)=x(Sigmoid(x)+αmax(0, - x));
[0119] Where, the LeakySigmoid(x) represents the activation function, α represents a constant, and x represents the input of the activation function. .
[0120] Figure 3 It is a schematic structural diagram of a Kolmogorov - Arnold network provided by an embodiment of the present application.
[0121] S106: Determine a value vector based on the amplification result.
[0122] The processing device determines a value vector based on the amplification result.
[0123] S107: Process the query vector, the key vector, and the value vector through the long - short - term memory network of the pre - trained friction compensation model under the guidance of the amplification result to obtain a first processing result.
[0124] The processing device processes the query vector, the key vector, and the value vector through the long - short - term memory network of the pre - trained friction compensation model under the guidance of the amplification result to obtain a first processing result.
[0125] The long - short - term memory network (LSTM) is a special recurrent neural network (RNN), aiming to solve the problems of gradient vanishing and gradient explosion encountered by traditional RNNs when processing long - sequence data. LSTM effectively captures and retains long - term dependence information by introducing memory cells and gating mechanisms.
[0126] When processing using a long short-term memory network, an attention mechanism is used. The query vector (Query), key vector (Key), and value vector (Value) are processed through the long short-term memory network under the guidance of the amplified result to obtain a first processing result.
[0127] In a possible implementation, the parameters of the long short-term memory network are represented by the following formula:
[0128] ;
[0129] where t represents time, represents the memory state at time t, represents the first intermediate quantity at time t, represents the memory state at time t - 1, represents the second intermediate quantity at time t, represents the value vector at time t, represents the key vector at time t;
[0130] ;
[0131] where t represents time and n represents the time series, represents the time series corresponding to time t, represents the first intermediate quantity at time t, represents the time series at time t - 1, represents the second intermediate quantity at time t, represents the key vector at time t;
[0132] ;
[0133] where t represents time, represents the measured value of the state quantity at time t, represents the state quantity at time t, represents the third intermediate quantity, which is related to the query vector at time t.
[0134] In a possible implementation, the error value of the state quantity at time t is represented by the following formula:
[0135] ;
[0136] where t represents time, represents the measured value of the state quantity at time t, represents the memory state at time t, represents the query vector at time t, represents the time series corresponding to time t.
[0137] In a possible implementation, the query vector, key vector, and reference vector are represented by the following formulas:
[0138] ;
[0139] where t represents time, represents the query vector at time t, represents the input value at time t, represents the first weight, represents the first component;
[0140] ;
[0141] where t represents time, indicates that the dimension of the query vector q is d, represents the key vector at time t, represents the input value at time t, represents the second weight, represents the second component;
[0142] ;
[0143] where t represents time, represents the value vector at time t, represents the input value at time t, represents the third weight, represents the third component.
[0144] In a possible implementation, the first intermediate quantity, second intermediate quantity, and third intermediate quantity are represented by the following formulas:
[0145] ;
[0146] where t represents time, represents the first intermediate quantity at time t, represents the measured value of the first intermediate quantity at time t;
[0147] ;
[0148] where, represents the first parameter corresponding to the first intermediate quantity, represents the second parameter corresponding to the first intermediate quantity, represents the parameter corresponding to time t;
[0149] ;
[0150] where t represents time, represents the second intermediate quantity at time t, represents the measured value of the second intermediate quantity at time t;
[0151] ;
[0152] wherein, represents the first parameter corresponding to the second intermediate quantity, represents the second parameter corresponding to the second intermediate quantity, represents the parameter corresponding to time t;
[0153] ;
[0154] wherein, t represents time, represents the third intermediate quantity at time t, represents the measured value of the third intermediate quantity at time t;
[0155] ;
[0156] wherein, represents the first parameter corresponding to the third intermediate quantity, represents the second parameter corresponding to the third intermediate quantity, represents the input value at time t.
[0157] Figure 4 is a schematic structural diagram of a long short-term memory network provided by an embodiment of the present application.
[0158] S108: Perform group normalization processing on the first processing result using a pre-trained friction compensation model to obtain a second normalization result.
[0159] The processing device performs group normalization processing on the first processing result using a pre-trained friction compensation model to obtain a second normalization result.
[0160] The main idea of group normalization (GN) is to divide the channels into several groups, and then perform normalization processing on the channels within each group. This can reduce the computational amount of the model while maintaining the normalization effect.
[0161] S109: Perform feature fusion on the second normalization result, the reference vector, and the amplification result to obtain a feature fusion result.
[0162] The processing device performs feature fusion on the second normalization result, the reference vector, and the amplification result to obtain a feature fusion result.
[0163] S110: Reduce the feature fusion result according to a preset ratio to obtain a reduction result.
[0164] The processing device reduces the feature fusion result according to a preset ratio to obtain a reduced result.
[0165] In a possible implementation, the preset ratio can correspond to the preset multiple mentioned above. For example, if the preset multiple is 2 times, the preset ratio can be 1 / 2.
[0166] S111: Process the reduced result through the Kolmogorov - Arnold layer to obtain a second processing result.
[0167] The processing device processes the reduced result through the Kolmogorov - Arnold layer to obtain a second processing result. The Kolmogorov - Arnold layer also performs non - linear prediction when the contact surface is unknown.
[0168] S112: Perform channel normalization processing on the second processing result using the pre - trained friction compensation model to obtain the predicted compensation friction force.
[0169] The processing device performs channel normalization processing on the second processing result using the pre - trained friction compensation model to obtain the predicted compensation friction force.
[0170] S113: Adjust the parameters of the pre - trained friction compensation model based on the difference between the standard compensation friction force and the predicted compensation friction force, and continuously train the pre - trained friction compensation model using the joint friction compensation data of the robot and the standard compensation friction force corresponding to the joint friction compensation data to obtain the manipulator friction compensation model.
[0171] The processing device adjusts the parameters of the pre - trained friction compensation model based on the difference between the standard compensation friction force and the predicted compensation friction force, and continuously trains the pre - trained friction compensation model using the joint friction compensation data of the robot and the standard compensation friction force corresponding to the joint friction compensation data to obtain the manipulator friction compensation model.
[0172] In a possible implementation, the adjustable parameters of the pre - trained friction compensation model can include those mentioned above etc.
[0173] S114: Compensate the friction error of the robot arm through the manipulator friction compensation model.
[0174] The processing device compensates the friction error of the robot arm through the manipulator friction compensation model.
[0175] Figure 5 This is a schematic diagram of the model structure of a pre - trained friction compensation model provided by an embodiment of the present application.
[0176] The method provided by this application can capture the variation law of friction force in a higher dimension by combining the Kolmogorov - Arnold network and the long - short - term memory network in deep learning, perform accurate modeling, and provide a more accurate friction force compensation effect. The present invention extracts multiple key features including joint bending degree, output power, joint mass, and joint length, and combines the feature fusion technology in deep learning to fully explore the potential relationships in the data, improving the accuracy of friction force compensation. In addition, through the processing of normalization and feature fusion, the differences between different data dimensions are effectively reduced, ensuring the robustness of the model under different environments and working conditions. In the situation where the contact surface is unknown, this application combines the Kolmogorov - Arnold network and the long - short - term memory network, considers contact surface conditions such as non - local memory effect, critical friction, and viscous friction, introduces non - local memory effect, critical friction, and viscous friction non - linear activation functions, and based on data - driven identification of the optimal estimated state of the contact interface, selects supplementary strategies considering the contact interface situation, which can maximize the reflection of the friction state of the contact surface, thereby compensating the friction force error of the robotic arm more precisely.
[0177] This application also provides a structural schematic diagram of a compensation device for the friction force error of a robotic arm as shown in Figure 6 Figure, and the compensation device 600 for the friction force error of the robotic arm includes:
[0178] An acquisition module 601, configured to acquire the joint friction force compensation data of the robot and the standard compensation friction force corresponding to the joint friction force compensation data, where the joint friction force compensation data includes joint bending degree, joint output power, joint mass, and joint length;
[0179] A feature extraction module 602, configured to perform feature extraction on the joint friction force compensation data to obtain a feature extraction result;
[0180] A first normalization module 603, configured to perform layer normalization processing on the feature extraction result using a pre - trained friction force compensation model to obtain a first normalization result;
[0181] An up - projection module 604, configured to magnify the first normalization result by a preset multiple to obtain a magnification result;
[0182] A non - linear learning module 605, configured to process the magnification result through the Kolmogorov - Arnold network of the pre - trained friction force compensation model to obtain a query vector, a key vector, and a reference vector;
[0183] A determination module 606, configured to determine a value vector based on the magnification result;
[0184] The first processing module 607 is configured to process the query vector, the key vector, and the value vector through the long short-term memory network of the pre-trained friction compensation model under the guidance of the amplification result, so as to obtain a first processing result;
[0185] The second normalization module 608 is configured to perform group normalization processing on the first processing result by using the pre-trained friction compensation model to obtain a second normalization result;
[0186] The fusion module 609 is configured to perform feature fusion on the second normalization result, the reference vector, and the amplification result to obtain a feature fusion result;
[0187] The down-projection module 610 is configured to reduce the feature fusion result according to a preset ratio to obtain a reduction result;
[0188] The second processing module 611 is configured to process the reduction result through a Kolmogorov-Arnold layer to obtain a second processing result;
[0189] The third normalization module 612 is configured to perform channel normalization processing on the second processing result by using the pre-trained friction compensation model to obtain a predicted compensated friction force;
[0190] The training module 613 is configured to adjust the parameters of the pre-trained friction compensation model based on the difference between the standard compensated friction force and the predicted compensated friction force, and continuously train the pre-trained friction compensation model by using the joint friction compensation data of the robot and the standard compensated friction force corresponding to the joint friction compensation data to obtain a manipulator friction compensation model;
[0191] The compensation module 614 is configured to compensate for the friction error of the manipulator through the manipulator friction compensation model.
[0192] The device provided by this application can capture the variation law of friction force in a higher dimension by combining the Kolmogorov - Arnold network and the long - short - term memory network in deep learning, perform accurate modeling, and provide a more accurate friction force compensation effect. The present invention extracts multiple key features including joint bending degree, output power, joint mass, and joint length, and combines the feature fusion technology in deep learning to fully explore the potential relationships in the data, improving the accuracy of friction force compensation. In addition, through the processing of normalization and feature fusion, the differences between different data dimensions are effectively reduced, ensuring the robustness of the model under different environments and working conditions. In the case where the contact surface is unknown, this application combines the Kolmogorov - Arnold network and the long - short - term memory network, considers contact surface conditions such as non - local memory effect, critical friction, and viscous friction, introduces non - local memory effect, critical friction, and viscous friction non - linear activation functions, identifies the optimal estimated state of the contact interface based on data - driven, and selects a supplementary strategy considering the situation of the contact interface, which can maximize the reflection of the friction state of the contact surface, thereby compensating the friction force error of the robotic arm more precisely.
[0193] The embodiment of this application also provides a compensation device for the friction force error of a robotic arm. Among them, the device includes a memory and a processor. The memory is used to store instructions or codes, and the processor is used to execute the instructions or codes so that the device executes the steps of the method for compensating the friction force error of the robotic arm according to any embodiment of this application.
[0194] In practical applications, the computer - readable storage medium can adopt 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.
[0195] The computer - readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples (non - exhaustive list) of the computer - readable storage medium include: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read - only memory (ROM), an erasable programmable read - only memory (EPROM or flash memory), an optical fiber, a portable compact disk read - only memory (CD - ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer - readable storage medium can be any tangible medium that contains or stores a program, and this program can be used by or combined with an instruction execution system, apparatus, or device.
[0196] A computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which computer-readable program code is carried. Such a propagated data signal may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0197] The program code contained on a computer-readable medium can be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0198] The computer program code for performing the operations of the present invention can be written in one or more programming languages or combinations thereof. The programming languages include object-oriented programming languages such as Java, Smalltalk, C++, and also include conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, executed as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through 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., through the Internet using an Internet service provider).
[0199] It should be noted that the various embodiments in this specification are described in a progressive manner. For the same or similar parts among the various embodiments, reference can be made to each other. Each embodiment focuses on the differences from other embodiments. In particular, for the device embodiments, since they are basically similar to the method embodiments, the description is relatively simple. For the relevant parts, reference can be made to the partial description of the method embodiments. The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, and the components referred to as units may or may not be physical units, i.e., they may be located in one place or distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. A person of ordinary skill in the art can understand and implement it without creative effort.
[0200] As described above, it is only a specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions that can be easily thought of by those skilled in the art within the technical scope disclosed in the present application should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
Claims
1. A method for compensating friction error of a robot arm, characterized in that: include: Acquire joint friction force compensation data of the robot and standard compensation friction force corresponding to the joint friction force compensation data, wherein the joint friction force compensation data includes joint curvature, joint output power, joint mass and joint length; Performing feature extraction on the joint friction force compensation data to obtain a feature extraction result; Performing layer normalization processing on the feature extraction result using a pre-trained friction compensation model to obtain a first normalized result; Amplifying the first normalized result by a preset multiple to obtain an amplified result; Processing the amplified result through the Kolmogorov-Arnold network of the pre-trained friction compensation model to obtain a query vector, a key vector and a reference vector; determining a value vector based on the amplification result; Processing the query vector, the key vector, and the value vector through a long short-term memory network of the pre-trained friction compensation model under the guidance of the amplification result to obtain a first processing result; Performing group normalization processing on the first processing result using a pre-trained friction compensation model to obtain a second normalized result; Performing feature fusion on the second normalization result, the reference vector, and the magnification result to obtain a feature fusion result; Reducing the feature fusion result according to a preset ratio to obtain a reduced result; Processing the reduced result through a Kolmogorov-Arnold layer to obtain a second processed result; Performing channel normalization processing on the second processing result using a pre-trained friction compensation model to obtain a predicted compensation friction force; The manipulator friction compensation model is obtained by adjusting the parameters of the pre-trained friction compensation model based on the difference between the standard compensation friction force and the predicted compensation friction force, and continuously training the pre-trained friction compensation model using the joint friction compensation data of the robot and the standard compensation friction force corresponding to the joint friction compensation data; The friction error of the robot is compensated by the robot friction compensation model.
2. The method according to claim 1, characterized in that The Kolmogorov-Arnold network includes a 1x4 convolution, a 1x1 convolution, a 4x1 convolution, a Kolmogorov-Arnold layer, a summation layer and an activation function, and the amplification result is processed through the Kolmogorov-Arnold network of the pre-trained friction compensation model to obtain a query vector, a key vector and a reference vector, including: The amplified result is respectively subjected to the 1x4 convolution, the 1x1 convolution and the 4x1 convolution to obtain a first convolution result, a second convolution result and a third convolution result; Summing the first convolution result, the second convolution result and the third convolution result through the summation layer to obtain a summation result; Inputting the summation result into the Kolmogorov-Arnold layer to obtain a nonlinear learning result; Fusing the nonlinear learning result and the amplification result to obtain a nonlinear fusion result; The nonlinear fusion result is obtained by using an activation function to obtain the query vector, the key vector and the reference vector.
3. The method according to claim 2, characterized in that The activation function is expressed by the following formula: LeakySigmoid(x)=x(Sigmoid(x)+αmax(0,-x)); Wherein, LeakySigmoid(x) represents an activation function, α represents a constant, and x represents the input of the activation function. .
4. The method according to claim 1, characterized in that The parameters of the long short-term memory network are expressed by the following formula: ; Where t represents time, represents the memory state at time t, represents the first intermediate quantity at time t, represents the memory state at time t-1, represents the second intermediate quantity at time t, represents the value vector at time t, represents the key vector at time t; ; Among them, t represents time, n represents time series, represents the time series corresponding to time t, represents the first intermediate quantity at time t, represents the time series at time t-1, represents the second intermediate quantity at time t, represents the key vector at time t; ; Where t represents time, represents the measured value of the state quantity at time t, represents the state quantity at time t, represents the third intermediate quantity, Related to the query vector at time t.
5. The method according to claim 4, characterized in that The error value of the state quantity at time t is expressed by the following formula: ; Where t represents time, represents the measured value of the state quantity at time t, represents the memory state at time t, represents the query vector at time t, Represents the time series corresponding to time t.
6. The method according to claim 5, characterized in that The query vector, key vector and reference vector are expressed by the following formula: ; Where t represents time, represents the query vector at time t, represents the input value at time t, represents the first weight, represents the first component; ; Where t represents time, Indicates that the dimension of the query vector q is d, represents the key vector at time t, represents the input value at time t, represents the second weight, represents the second component; ; Where t represents time, represents the value vector at time t, represents the input value at time t, represents the third weight, Represents the third component.
7. The method according to claim 6, characterized in that The first intermediate amount, the second intermediate amount and the third intermediate amount are expressed by the following formula: ; Where t represents time, represents the first intermediate quantity at time t, represents the measured value of the first intermediate quantity at time t; ; in, represents the first parameter corresponding to the first intermediate quantity, represents the second parameter corresponding to the first intermediate quantity, represents the parameter corresponding to time t; ; Where t represents time, represents the second intermediate quantity at time t, represents the measured value of the second intermediate quantity at time t; ; in, represents the first parameter corresponding to the second intermediate quantity, represents the second parameter corresponding to the second intermediate quantity, represents the parameter corresponding to time t; ; Where t represents time, represents the third intermediate quantity at time t, represents the measured value of the third intermediate quantity at time t; ; in, represents the first parameter corresponding to the third intermediate quantity, represents the second parameter corresponding to the third intermediate quantity, Represents the input value at time t.
8. A device for compensating friction error of a robot arm, characterized in that: include: An acquisition module, used for acquiring joint friction force compensation data of the robot and a standard compensation friction force corresponding to the joint friction force compensation data, wherein the joint friction force compensation data includes joint curvature, joint output power, joint mass and joint length; A feature extraction module, used for performing feature extraction on the joint friction force compensation data to obtain a feature extraction result; A first normalization module, used to perform layer normalization processing on the feature extraction result using a pre-trained friction compensation model to obtain a first normalized result; An upper projection module, used for magnifying the first normalized result by a preset multiple to obtain a magnified result; A nonlinear learning module, used for processing the amplification result through the Kolmogorov-Arnold network of the pre-trained friction compensation model to obtain a query vector, a key vector and a reference vector; A determination module, configured to determine a value vector based on the amplification result; A first processing module, configured to process the query vector, the key vector and the value vector through a long short-term memory network of the pre-trained friction compensation model under the guidance of the amplification result to obtain a first processing result; A second normalization module, used for performing group normalization processing on the first processing result using a pre-trained friction compensation model to obtain a second normalized result; A fusion module, used for performing feature fusion on the second normalization result, the reference vector, and the amplification result to obtain a feature fusion result; A lower projection module, used for reducing the feature fusion result according to a preset ratio to obtain a reduced result; A second processing module, used for processing the reduction result through a Kolmogorov-Arnold layer to obtain a second processing result; a third normalization module, configured to perform channel normalization processing on the second processing result using a pre-trained friction compensation model to obtain a predicted compensation friction force; A training module, configured to adjust the parameters of the pre-trained friction compensation model based on the difference between the standard compensation friction force and the predicted compensation friction force, and continuously train the pre-trained friction compensation model using the joint friction compensation data of the robot and the standard compensation friction force corresponding to the joint friction compensation data to obtain a manipulator friction compensation model; The compensation module is used to compensate the friction error of the robot arm through the robot arm friction compensation model.
9. An electronic device, characterized in that: comprising a memory and a processor, wherein: The memory is used to store the computer program; The processor is used to execute the computer program to implement the method for compensating the friction error of the robot arm as described in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that: Used to store a computer program, wherein when the computer program is executed by a processor, the method for compensating the friction error of a robot arm as described in any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Joint friction force torque compensation method and device and robot
CN111216120A
Dynamics identification method and device based on iterative optimization
CN115903522A