Industrial robot end load recognition method and system based on neural network

By constructing an FPCNN model for end-effector load identification in industrial robots, the problems of poor flexibility and low accuracy in existing technologies are solved, achieving efficient and accurate load identification and reducing experimental costs.

CN116834010BActive Publication Date: 2025-12-16GUANGZHOU UNIVERSITY
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310904801.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-07-21
Publication Date
2025-12-16
Estimated Expiration
2043-07-21

AI Technical Summary

Technical Problem

Existing methods for identifying end-effector loads in industrial robots are inflexible, time-consuming, and inaccurate. Dynamic models cannot fully capture nonlinear factors, leading to a decrease in control precision.

Method used

A neural network-based approach was adopted to construct an FPCNN model that integrates Fourier neural networks, principal component analysis, and convolutional neural networks. By collecting robot joint feature data, training and testing were performed to establish a load identification neural network model, thereby achieving accurate identification of end-effector load quality.

Benefits of technology

It improves computational efficiency and accuracy, reduces experimental costs, does not rely on additional sensors, and enhances the model's generalization ability and computational accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116834010B_ABST
    Figure CN116834010B_ABST
Patent Text Reader

Abstract

The embodiment of the specification provides a kind of industrial robot end load identification method and system based on neural network, wherein, method includes: S1.in the process of robot motion, the feature data of all joints of robot is collected according to sampling period;S2.feature data is preprocessed, and is divided into training set and test set;S3.load identification neural network FPCNN is constructed, and load identification neural network is iteratively trained using training set, to obtain load identification neural network model;S4.load identification neural network model is tested using test set, if test accuracy reaches preset threshold, then step S5 is carried out, if test error value is greater than preset threshold, then repeat step S3;S5.load identification neural network model is identified to robot end load by well-trained, and end load mass is obtained.The model generalization ability of the present application is improved, and the calculation efficiency and the calculation accuracy are improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present document relates to the technical field of robot control, and in particular to an industrial robot end load identification method and system based on a neural network. BACKGROUND

[0002] With the rapid development of science and technology, industrial robots play an increasingly important role in manufacturing. Industrial robots are generally used in fields such as transportation, welding, and spraying. The load held by the end gripper of an industrial robot changes as work progresses. Since the change in the end load can cause the control accuracy to decrease, it is necessary to identify the end load and then adjust the robot control parameters.

[0003] Currently, the load identification method for industrial robots is mostly based on robot dynamics algorithms. This method obtains the corresponding parameters by combining the robot's own control system to perform dynamics calculations to obtain the load size after the robot completes a specific action. This method has poor flexibility and cannot be adjusted locally, resulting in long calculation times and low accuracy. Since the robot system is a highly nonlinear system, the dynamics model cannot import all nonlinear factors into the model, resulting in large calculation errors. SUMMARY

[0004] One or more embodiments of the present specification provide an industrial robot end load identification method based on a neural network, comprising:

[0005] S1. During movement of a robot along a preset motion trajectory, feature data of all joints of the robot during movement is collected according to a preset sampling period;

[0006] S2. The feature data is preprocessed, and the preprocessed feature data is divided into a training set and a test set according to a certain proportion;

[0007] S3. A load identification neural network FPCNN is constructed, and the training set is used to iteratively train the load identification neural network to obtain a load identification neural network model;

[0008] S4. The load identification neural network model is tested using the test set. If the test accuracy reaches a preset threshold, step S5 is performed. If the test error value is greater than the preset threshold, step S3 is repeated;

[0009] S5. The end load of the robot is identified by the trained load identification neural network model to obtain the end load mass.

[0010] One or more embodiments of the present specification provide an industrial robot end load identification system based on a neural network, comprising:

[0011] The data acquisition module is configured to acquire feature data of all joints of the robot during movement of the robot based on the motion trajectory according to a preset sampling period.

[0012] The data processing module is configured to pre-process the feature data and divide the pre-processed feature data into a training set and a test set according to a certain proportion.

[0013] The model training module is configured to construct a load recognition neural network FPCNN, iteratively train the load recognition neural network using the training set, and obtain a load recognition neural network model.

[0014] The model testing module is configured to test the load recognition neural network model using the test set, enter a load recognition module if a test accuracy rate reaches a preset threshold, and return to the model training module for repeated model training if a test error value is greater than the preset threshold.

[0015] The load recognition module is configured to recognize an end load of the robot using the trained load recognition neural network model and obtain an end load quality.

[0016] One or more embodiments of the present specification provide an electronic device, comprising:

[0017] a processor; and

[0018] a memory arranged to store computer executable instructions that, when executed, cause the processor to implement the steps of the above-described neural network-based end load recognition method for an industrial robot.

[0019] One or more embodiments of the present specification provide a storage medium for storing computer executable instructions that, when executed, implement the steps of the above-described neural network-based end load recognition method for an industrial robot.

[0020] The present application has the following advantages:

[0021] The present application constructs a model FPCNN that fuses a Fourier neural network FNO, a principal component analysis PCA, and a convolutional neural network CNN to recognize an end load quality of a robot. The Fourier network is used to perform multiple low-frequency signal preservation processing on data, thereby improving the generalization ability of the model. The PCA algorithm is applied to the network model to preserve main useful components in the input data, thereby improving the generalization ability of the model. The present application does not need to rely on additional sensors to collect relevant data, thereby reducing experimental costs. Compared with a traditional dynamics calculation method, the model constructed by the present application has higher calculation efficiency and calculation accuracy.

[0022] The above description is only a summary of the technical solutions of the present application. In order to enable one skilled in the art to better understand the technical means of the present application, the contents of the specification can be implemented, and in order to make the above and other purposes, characteristics and advantages of the present application more obvious and easy to understand, the specific embodiments of the present application are described below. BRIEF DESCRIPTION OF DRAWINGS

[0023] In order to more clearly illustrate the technical solutions in the one or more embodiments of the present application or the prior art, the drawings needed in the embodiment or prior art description will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments described in the present specification, and those skilled in the art can obtain other drawings without creative labor under the premise of the drawings.

[0024] Figure 1 A flowchart of a neural network-based industrial robot end load identification method provided for one or more embodiments of the present specification;

[0025] Figure 2 A load identification neural network model structure diagram of a neural network-based industrial robot end load identification method provided for one or more embodiments of the present specification;

[0026] Figure 3 A composition diagram of a neural network-based industrial robot end load identification system provided for one or more embodiments of the present specification;

[0027] Figure 4 A structure diagram of an electronic device provided for one or more embodiments of the present specification. DETAILED DESCRIPTION

[0028] In order to make those skilled in the art better understand the technical solutions in the one or more embodiments of the present specification, the technical solutions in the one or more embodiments of the present specification will be described clearly and completely below in conjunction with the drawings in the one or more embodiments of the present specification. Obviously, the described embodiments are only some embodiments of the present specification, not all embodiments. Based on the one or more embodiments of the present specification, all other embodiments obtained by those skilled in the art without creative labor should belong to the protection scope of the present document.

[0029] Method embodiment

[0030] According to the embodiments of the present application, a neural network-based industrial robot end load identification method is provided, Figure 1 A flowchart of a neural network-based industrial robot end load identification method provided for one or more embodiments of the present specification, as shown in Figure 1As shown, the neural network-based industrial robot end-effector load identification method according to an embodiment of the present invention specifically includes:

[0031] S1. During the robot's movement along a preset motion trajectory, feature data of all joints of the robot during the movement are collected according to a preset sampling period.

[0032] The robot trajectory planning settings are as follows:

[0033] First, select an empty program in the robot teach pendant, select the motion type according to the teach pendant, and set its maximum motion speed and maximum acceleration;

[0034] Next, add waypoint poses. These waypoint poses can be set manually by inputting numbers or by manually controlling the robot to move to a specific point.

[0035] The above operations allow the industrial robot to move continuously, reaching multiple waypoints until it reaches the desired waypoint, thus obtaining the robot's trajectory to the desired waypoint.

[0036] When collecting data during robot movement, the industrial robot's own sensors are used to sample joint angular displacement, joint angular velocity, joint acceleration, joint current, and joint torque according to a preset sampling period T. The sampling frequency is then determined. ,

[0037] The sampling data is as follows:

[0038] ;

[0039] Where t represents the time variable, q(t) represents the joint angular displacement of the industrial robot at each time, dq(t) represents the joint angular velocity of the industrial robot at each time, and ddq(t) represents the joint acceleration of the industrial robot at each time. This represents the joint current of the industrial robot at various times. This represents the joint torque of the industrial robot at various times.

[0040] Since the end-effector load of industrial robots varies when performing tasks such as spraying and welding, this embodiment selected multiple sets of end-effector loads with masses of 0.5kg, 1kg, 1.5kg, 2kg, 2.5kg, 3kg, 3.5kg, 4kg, and no end-effector load, for a total of 9 experiments. The industrial robot used in this experiment is an UR5 robot with a maximum effective load of 5kg. To avoid the randomness of robot experiments, the load was installed on the robot's end-effector and multiple tests were conducted. The data was saved using the data acquisition method described above and defined as feature data; the corresponding load mass was defined as tag data.

[0041] S2. Preprocess the feature data, and divide the preprocessed feature data into a training set and a test set according to a certain ratio.

[0042] In neural network learning, there is often a large numerical difference between feature data, and if the data is directly brought into network training, it will affect the result of data analysis. Therefore, in order to eliminate the dimensional influence between feature data and solve the comparability problem between feature data indicators, the collected data is standardized in this embodiment, and the specific method is:

[0043] The feature data is standardized using the Min-Max Normalization method, as follows:

[0044] ;

[0045] Where x represents the feature data, min(x) represents the minimum value in the corresponding row or column of feature data, max(x) represents the maximum value in the corresponding row or column of feature data, and x' represents the standardized data, which is kept between [0-1].

[0046] The standardized feature data is divided into a training set and a test set according to a ratio of 8:2.

[0047] S3. Construct a load recognition neural network FPCNN, use the training set to iteratively train the load recognition neural network, and obtain a load recognition neural network model.

[0048] The load recognition neural network process table is shown in Table 1:

[0049] Table 1

[0050]

[0051] Figure 2 ​The load identification neural network model structure constructed in this embodiment is shown below. a(x) represents the input feature data, which contains 54 features, including the target position of each joint of the robot, target velocity, target acceleration, target current, torque, actual position, actual velocity, actual current and control current; p(x) represents the first linear layer (Linear-1) in Table 1 and the position exchange function permute(), which increases the number of channels and exchanges the second and third dimensions of the data after increasing the number of channels; Q(x) represents Linear-21, Flatten-22 and Linear-23 in Table 1, which decrease the number of channels of the data to realize the output of the network model; the "+" before Q(x) indicates that the results are fused.

[0052] like Figure 2 As shown, the Load Identification Neural Network (FPCNN) processes the input data using a Fourier neural network, Principal Component Analysis (PCA), and a Convolutional Neural Network. Specifically:

[0053] The top section illustrates the application of Principal Component Analysis (PCA) to neural networks. PCA is used to process the input data, preserving valuable features. PCA is used to explore high-dimensional data structures, primarily for dimensionality reduction. By reducing dimensionality, it reveals features that are easier for humans to understand, accelerating the processing of valuable information from samples. The algorithm is as follows:

[0054] Step 1: Calculate the average value of each column of the input data (p(x)) and subtract the average value from the input data;

[0055] Step 2: Calculate the covariance matrix and eigenvectors;

[0056] Step 3: Sort the eigenvectors in descending order of eigenvalues;

[0057] Step 4: Truncate the feature vector and retain the desired number of feature data points; in this example, 40 feature data points were selected.

[0058] Step 5: Multiply the data obtained in step 1 with the data in step 4 to obtain the PCA dimensionality reduction data;

[0059] Step 6: Use a linear layer (Linear(40,54)) to increase the channel dimension to 54, laying the groundwork for subsequent calculations.

[0060] The middle section is a model based on a Fourier neural network. The specific processing method for the input data is as follows:

[0061] The input data is processed multiple times using a Fourier neural network to transform it from the physical space to the frequency domain. Then, a linear transformation is used to truncate the high-frequency information and retain the low-frequency information. Finally, an inverse Fourier transform is used to transform the data back to the physical space. In this embodiment, the transformation is performed four times.

[0062] Feature extraction is performed on the input data, which is then added to the data obtained based on Fourier transform, and the ReLU activation function is added to prevent the network from overfitting.

[0063] The following section utilizes a Convolutional Neural Network (CNN). Table 1 shows Conved-10 to Maxpool1d-18, representing... Figure 2 The CNN part of the structure includes three one-dimensional convolutional layers, three normalized layers (BatchNorm1d()), and three pooling layers.

[0064] The training set data is shuffled and then input into the FPCNN model. The convolutional neural network is iteratively trained based on the number of input samples, optimizer learning rate, number of training iterations, and loss function set for each iteration. After reaching the preset number of training iterations, the model of the last iteration is saved. The model is tested using the test set. If the test error value is less than the preset threshold, the model of the last iteration is the load identification neural network model; otherwise, iterative training continues.

[0065] The number of input samples is 20, the learner rate is set to 0.001, and the Adam optimizer is selected. This optimizer is simple to implement, computationally efficient, and requires little memory; parameter updates are unaffected by gradient scaling; it is well-suited for large-scale data and parameter scenarios; and it is applicable to problems with sparse gradients or gradients with significant noise. The Adam optimizer's weight and bias update rules for the neural network compensation model are as follows:

[0066]

[0067] Where W represents the weights calculated through forward propagation of the neural network. The learning rate determines whether and when the objective function can converge to a local minimum. The weights are updated for backpropagation in the neural network;

[0068]

[0069] Where b is the weight calculated by the forward propagation of the neural network. The weights are updated for backpropagation in the neural network;

[0070] The loss function chosen is the root mean square error (MSE) function, and its formula is as follows:

[0071] ;

[0072] )=load-t_load;

[0073] Wherein, t represents a time variable, load represents a neural network predicted load quality, t load represents a load true value (label value); n represents a number of discrete points of training data; represents a corresponding discrete time vector; e(t) represents a residual value.

[0074] S4. The load identification neural network model is tested using the test set, if the test accuracy reaches a preset threshold, step S5 is performed, and if the test error value is greater than the preset threshold, step S3 is repeated.

[0075] The threshold value set in the embodiment is 0.1, that is, if the predicted load quality of the FPCNN model minus the true load quality is less than 0.1, the prediction is accurate.

[0076] S5. The end load of the robot is identified through the trained load identification neural network model, and the end load quality is obtained.

[0077] The present application has the following advantages:

[0078] The present application constructs a model FPCNN which fuses a Fourier neural network FNO, a principal component analysis PCA and a convolutional neural network CNN to identify the end load quality of a robot; the Fourier network is used to perform low-frequency signal preservation processing on data multiple times, so that the generalization ability of the model is improved; the PCA algorithm is applied to the network model, so that the main useful components in the input data are retained, and the generalization ability of the model is improved; the present application does not need to rely on additional sensors to collect relevant data, so that the experimental cost is reduced; compared with a traditional dynamics calculation method, the model established by the present application has higher calculation efficiency and calculation accuracy.

[0079] System embodiment

[0080] According to the embodiment of the present application, a neural network-based industrial robot end load identification system is provided, Figure 3 A neural network-based industrial robot end load identification system according to one or more embodiments of the present application is provided. Figure 3 As shown in the figure, the neural network-based industrial robot end load identification system according to the embodiment of the present application specifically comprises:

[0081] The data acquisition module 30 is used to acquire the feature data of all joints of the robot in a preset sampling period during the movement of the robot based on the motion trajectory.

[0082] Data processing module 32: used to preprocess the feature data and divide the preprocessed feature data into training set and test set according to a certain ratio;

[0083] Model training module 34: used to construct the load identification neural network FPCNN, and to iteratively train the load identification neural network using the training set to obtain the load identification neural network model;

[0084] Model testing module 36: Used to test the load identification neural network model using the test set. If the test accuracy reaches a preset threshold, it enters the load identification module. If the test error value is greater than the preset threshold, it returns to the model training module to repeat model training.

[0085] Load identification module 38: used to identify the end load of the robot through a trained load identification neural network model to obtain the end load quality.

[0086] The embodiments of the present invention are system embodiments corresponding to the above method embodiments. The specific operation of each module can be understood by referring to the description of the method embodiments, and will not be repeated here.

[0087] Device Example 1

[0088] This invention provides an electronic device, such as... Figure 4 As shown, it includes: a memory 40, a processor 42, and a computer program stored in the memory 40 and executable on the processor 42. When the computer program is executed by the processor 42, it performs the following method steps:

[0089] S1. During the robot's movement along a preset motion trajectory, feature data of all joints of the robot during the movement are collected according to a preset sampling period;

[0090] S2. The feature data is preprocessed, and the preprocessed feature data is divided into a training set and a test set according to a certain ratio;

[0091] S3. Construct a load identification neural network FPCNN, and use the training set to iteratively train the load identification neural network to obtain a load identification neural network model;

[0092] S4. Test the load identification neural network model using the test set. If the test accuracy reaches a preset threshold, proceed to step S5. If the test error value is greater than the preset threshold, repeat step S3.

[0093] S5. The end-effector load of the robot is identified by the trained load identification neural network model to obtain the end-effector load quality.

[0094] Device embodiment two

[0095] The embodiment of the present application provides a computer readable storage medium, and information transmission is stored on the computer readable storage medium. The program is executed by a processor 42 to realize the following method steps:

[0096] S1. In the process that the robot moves along the preset motion trajectory, the characteristic data of all joints of the robot during movement is collected according to a preset sampling period;

[0097] S2. The characteristic data is preprocessed, and the preprocessed characteristic data is divided into a training set and a test set according to a certain proportion;

[0098] S3. A load recognition neural network FPCNN is constructed, the training set is used to iteratively train the load recognition neural network, and a load recognition neural network model is obtained;

[0099] S4. The load recognition neural network model is tested using the test set, if the test accuracy reaches a preset threshold, step S5 is performed, and if the test error value is greater than the preset threshold, step S3 is repeated;

[0100] S5. The end load of the robot is recognized by the trained load recognition neural network model, and the end load quality is obtained.

[0101] The computer readable storage medium of the embodiment includes but is not limited to ROM, RAM, magnetic disk or optical disk and the like.

[0102] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: it can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement to part or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.

Claims

1. A neural network-based method for end-of-arm load recognition of an industrial robot, characterized by, The method comprises the following steps: S1. During the movement of the robot along a preset motion trajectory, collect characteristic data of all joints of the robot during movement at a preset sampling period; S2. Preprocess the characteristic data, and divide the preprocessed characteristic data into a training set and a test set according to a certain ratio; S3. Construct a load recognition neural network FPCNN, iteratively train the load recognition neural network using the training set, and obtain a load recognition neural network model; The load recognition neural network FPCNN processes input data through a Fourier neural network, principal component analysis PCA, and a convolutional neural network, specifically: The input data is processed by principal component analysis PCA to retain effective characteristic data in the characteristic data; The Fourier neural network is used to convert the input data from a physical space to a frequency domain, then high-frequency information is truncated through linear transformation, low-frequency information is retained, and finally the data is converted to a physical space through inverse Fourier transformation to extract features from the input data. Add the data obtained based on the Fourier transform and add the activation function relu; The convolutional neural network includes three one-dimensional convolutional layers, three normalization layers and three pooling layers; The training set is input into the FPCNN model, and the convolutional neural network is iteratively trained based on the input sample number, optimizer learning rate, training number and loss function of each iteration, and the model of the last iteration is saved after the preset training number is reached. Test the model through the test set. If the test error value is less than the preset threshold, the model of the last iteration is the load recognition neural network model, otherwise continue to iteratively train; Wherein, the input sample number is 20, the optimizer learning rate is set to 0.001, the optimizer is selected as Adam optimizer, and the loss function is selected as root mean square error function; S4. Test the load recognition neural network model using the test set. If the test accuracy reaches the preset threshold, proceed to step S5. If the test error value is greater than the preset threshold, repeat step S3; S5. Identify the end-of-arm load of the robot through the trained load recognition neural network model to obtain the end-of-arm load quality.

2. The method of claim 1, wherein, The method for obtaining the motion trajectory is specifically: By setting the motion form and waypoint pose of the robot, the motion trajectory of the robot moving to the desired waypoint is planned.

3. The method of claim 1, wherein: The characteristic data includes joint angular displacement, joint angular velocity, joint acceleration, joint current and joint torque at each time during the movement of the robot; The characteristic data of all joints of the robot during movement is collected at a preset sampling period, specifically: The joint angle displacement, joint angular velocity, joint acceleration, joint current and joint torque are sampled in the process of robot motion according to a preset sampling period T, and the sampling frequency , The sampling data is as follows: ; where t represents a time variable, q(t) represents a joint angle displacement of the industrial robot at each time, dq(t) represents a joint angular velocity of the industrial robot at each time, ddq(t) represents a joint acceleration of the industrial robot at each time, represents a joint current of the industrial robot at each time, represents a joint torque of the industrial robot at each time.

4. The method of claim 1, wherein, The specific method for preprocessing the characteristic data is: The characteristic data is standardized by using the maximum and minimum value standardization Min-Max Normalization, as follows: ; wherein x represents the feature data, min(x) represents the minimum value in the feature data of a certain row or column, and max(x) represents the maximum value in the feature data of a certain row or column, represents the standardized data, and the value is kept between [0-1].

5. The method of claim 1, wherein, The ratio of the training set and the test set of the characteristic data is 8:

2.

6. A neural network-based industrial robot end-of-arm load recognition system, characterized by, ​ The data acquisition module is configured to acquire feature data of all joints of the robot during movement of the robot based on a motion trajectory according to a preset sampling period; The data processing module is configured to pre-process the feature data and divide the pre-processed feature data into a training set and a test set according to a certain proportion; The model training module is configured to construct a load recognition neural network FPCNN, iteratively train the load recognition neural network using the training set, and obtain a load recognition neural network model; The load recognition neural network FPCNN processes input data through a Fourier neural network, principal component analysis PCA, and a convolutional neural network, specifically: The input data is processed by principal component analysis PCA to retain effective feature data in the feature data; The Fourier neural network is used to convert the input data from a physical space to a frequency domain, then high-frequency information is truncated through linear transformation, low-frequency information is retained, and finally the data is converted to a physical space through inverse Fourier transformation to extract features of the input data, add data obtained based on Fourier transformation, and add an activation function relu; The convolutional neural network includes three one-dimensional convolutional layers, three normalization layers, and three pooling layers; The training set is input into the FPCNN model, and the convolutional neural network is iteratively trained based on a set number of input samples per iteration, an optimizer learning rate, a training number, and a loss function. After a preset training number is reached, the model of the last iteration is saved, the test set is used for model testing, if the test error value is less than a preset threshold, the model of the last iteration is the load recognition neural network model, otherwise iterative training is continued; The number of input samples is 20, the optimizer learning rate is set to 0.001, the optimizer is an Adam optimizer, and the loss function is a root mean square error function; The model testing module is configured to test the load recognition neural network model using the test set, if the test accuracy reaches a preset threshold, the load recognition module is entered, if the test error value is greater than the preset threshold, the model training module is returned to repeat model training; The load recognition module is configured to recognize the end-of-arm load of the robot through the trained load recognition neural network model to obtain an end-of-arm load mass.

7. An electronic device, comprising: comprise: a processor; and a memory arranged to store computer-executable instructions that, when executed, cause the processor to implement the steps of the neural network-based industrial robot end-of-arm load recognition method of any one of claims 1 to 5.

8. A storage medium, characterized by a memory arranged to store computer-executable instructions that, when executed, cause the processor to implement the steps of the neural network-based industrial robot end-of-arm load recognition method of any one of claims 1 to 5.

Citation Information

Patent Citations

  • Method and module for distinguishing load of six-axis robot

    CN106346477A

  • Load identification method, system and device based on extreme learning machine, and storage medium

    CN113610218A