Robot fault data generation method and system based on sample simulation transfer learning

By building a system transformation network, the failure samples of the experimental robot are converted into the virtual failure data set of the target robot, which solves the problem of industrial robots lacking failure samples and realizes efficient fault diagnosis data generation and algorithm deployment.

CN119782802APending Publication Date: 2025-04-08SHANGHAI PLATFORM FOR SMART MFG CO LTD +1
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202411750352.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-02
Publication Date
2025-04-08

AI Technical Summary

Technical Problem

The prior art is difficult to generate effective fault diagnosis data sets for industrial robots, especially in the absence of fault samples, which leads to the inability to fit or converge of the model.

Method used

Using a method based on sample simulation transfer learning, a system transformation network is constructed, and the fault samples of the experimental robot are converted into a virtual fault data set of the target robot, and data is generated for training the fault diagnosis algorithm.

Benefits of technology

It realizes the generation of high-quality fault data sets for robots without fault samples, supports arbitrary fault diagnosis algorithms, and reduces the time cost of digital twin fault diagnosis algorithm deployment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119782802A_ABST
    Figure CN119782802A_ABST
Patent Text Reader

Abstract

The invention provides a robot fault data generation method and system based on sample simulation transfer learning, and the method comprises the steps: evaluating the similarity between experiment action curves of two robots through KL divergence based on source domain data and target domain data, selecting a next action most likely to enable the motion response curves of the two robots to be similar for each current pose; a system transformation network is constructed and trained, fault sample currents obtained by an experimental robot are all converted into fault samples of a target robot based on the trained system transformation network, and a virtual fault data set of a target domain is generated to train a fault diagnosis algorithm. Aiming at the difficulty that a fault sample cannot be prepared for a deployed normal fault-free robot in the field of industrial robots, sample data can be obtained for a robot which is in service but has no fault sample by utilizing abundant healthy samples, so that any fault diagnosis algorithm is supported.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical fields of artificial intelligence and the Internet of Things, and in particular to a method and system for generating robot fault data based on sample simulation transfer learning. Background Art

[0002] There are a large number of industrial robot objects in the digital twin scene, and it is a common application to establish fault detection algorithms for them through deep learning. However, due to the high reliability of industrial robots and the large number of mechanical parts, in addition to the professional knowledge of robot maintenance of different manufacturers, existing companies do not attach importance to the collection of fault samples, so there is no mainstream fault diagnosis data set in the field of robots. Therefore, when engineers need to deploy a fault diagnosis algorithm for a new robot, the model often cannot fit or converge due to lack of samples.

[0003] The existing robot fault data generation under the premise of small samples usually adopts three strategies: the first type is virtual sample enhancement technology, that is, using simulation methods to simulate fault defects to generate training data. This type of technology is limited by the accuracy of dynamics and system modeling technology. If the gap between the virtual model and the real one is too large, then the generated virtual fault samples have no practical value. The second type is simulation experiment technology, that is, creating an experimental device similar to the target equipment, and simulating faults through faulty parts experiments. This technology is widely used in shield machines or other large equipment. Its limitation is that the test bench must be specially designed for a certain type of equipment and cannot fully simulate the actual working conditions, so the actual application effect is not ideal. The third type is fault feature extraction, that is, using autoencoders or generative adversarial networks to learn the deep features of real fault data, so that the intelligent agent learns how to generate new fault samples. However, this method is essentially only for the equipment itself, and cannot generate fault data for an object that has never had a fault and has different working conditions and models. In addition, the fault experiment method also has difficulties in the field of robotics. Due to the great differences in the shape and weight of industrial robot actuators, the samples obtained from the faulty parts replacement experiment conducted under experimental load conditions cannot be used for fault diagnosis of robots equipped with another type of actuator. Summary of the invention

[0004] In view of the defects in the prior art, the object of the present invention is to provide a method and system for generating robot fault data based on sample simulation transfer learning.

[0005] According to one aspect of the present invention, a robot fault experiment system is provided, which is used to generate a virtual fault data set for a target robot without faults, comprising:

[0006] An experimental robot with the same configuration as the target robot;

[0007] The experimental faulty part is a part of the experimental robot, and each of the experimental faulty parts corresponds to a fault type;

[0008] The data acquisition module inputs the same joint angle signal as that of the target robot to the experimental robot, controls the experimental robot and the target robot to perform the same action, and collects the joint angle signal and current signal at this time to obtain source domain data and target domain data.

[0009] Optionally, there are one or more experimental fault parts, and source domain data corresponding to different fault types are obtained by replacing experimental fault parts with different fault types.

[0010] Optionally, the data acquisition module collects the joint angle signals and current signals of the experimental robot input and the target robot multiple times to obtain a source domain data set and a target domain data set of corresponding fault types.

[0011] According to a second aspect of the present invention, a method for generating robot fault data based on sample simulation transfer learning is provided, comprising:

[0012] Generate optimal robot data samples: Based on the source domain data and the target domain data, use KL divergence to evaluate the similarity between the experimental motion curves of the two robots, select the next action that is most likely to make the motion response curves of the two robots similar for each current posture, and form a set of actions with the most similar motion response curves;

[0013] Constructing a system transformation network: using the action set that is most similar to the motion response curve obtained, training a sample transformation network, and simulating a target fault-free robot on an experimental robot that can perform fault experiments; wherein the motion signal and torque signal of the robot in a motion task form a signal pair, and using the signal pair under the same action of the experimental robot and the target robot, obtain network input and output of the same dimension;

[0014] Fault sample generation based on system simulation: Based on the trained system transformation network, all fault sample currents obtained by the experimental robot are converted into fault samples of the target robot, and a virtual fault data set of the target domain is generated to train the fault diagnosis algorithm.

[0015] Optionally, generating an optimal robot data sample includes:

[0016] A series of motion instructions are randomly generated and inputted into the experimental robot to obtain a first data set of several groups of "joint angle signals and current signals", and a first probability distribution function is obtained by using a combination of features under all actions;

[0017] Obtain a second data set of a new digital twin task, randomly generate a series of motion instructions and input them to the experimental robot, obtain several sets of second data sets of "joint angle signals and current signals", and obtain a second probability distribution function by using the feature combination under all actions;

[0018] The KL divergence is calculated using the first probability distribution function and the second probability distribution function, and the samples in the first data set collected by the experimental robot are continuously deleted or added using Q learning to obtain the first probability distribution function with the minimum KL divergence;

[0019] The first data set corresponding to the first probability distribution function with the smallest KL divergence is output as the source domain data set, and this data set is the first data set corresponding to the experimental robot; the second data set corresponding to the second probability distribution function is output as the target domain data set, and this data set is the second data set corresponding to the target robot.

[0020] Optionally, the construction system transforms the network, including:

[0021] The movement and current of the robot at the same time are represented as row vector A and column vector B. The row vector A and column vector B are transformed by a system transformation matrix T. The experimental robot system transformation matrix T and the target robot system transformation matrix at different times are transformed according to the action. One-to-one correspondence and combination are performed to obtain the input and output of the system transformation network;

[0022] Select the hidden layer structure to design an autoencoder, which finds the essential features of the signal by learning the reconstruction process of the target domain and the source domain signal, and serves as the backbone between the convolution layer and the deconvolution layer to undertake the tasks of feature mining and feature transformation;

[0023] A feature extraction layer composed of mixed convolutions is used, where the convolution layer converts the original time series into the input features of the autoencoder, and the deconvolution layer restores the latent vector output by the autoencoder into the time series of the target space;

[0024] The signal reconstruction difference is used to form the loss function of this round, and the weight is adjusted for the next round of iteration, continuously narrowing the causal structure difference between the original domain data set and the target domain data set to obtain the final system transformation network.

[0025] Optionally, obtaining the input and output of the neural network includes:

[0026] The robot's motion and current at the same moment can be represented as a row vector A and a column vector B;

[0027] The row vector A and the column vector B are converted using a 6×6 system transformation matrix T. The system transformation matrix T represents the system model when performing this movement. Using data at different times, many groups of A and B can be obtained. According to the matrix principle, a corresponding system transformation matrix T can be calculated for every six groups of A and B.

[0028] Expand the 6×6 matrix T into a 36×1 form to obtain the corresponding system eigenvector at each moment;

[0029] According to the action, the experimental robot system transformation matrix T and the target robot system transformation matrix at different times are By one-to-one correspondence and combination, we can obtain the input and output of the neural network respectively;

[0030] The input is an N*36 multi-dimensional system feature vector sequence, and the output is also an N*36 multi-dimensional system feature vector sequence, where N represents the total number of sample lengths of all motion data in the data set.

[0031] Optionally, the loss function of this round composed of signal reconstruction differences specifically includes:

[0032] The loss calculated using the system feature vector sequence is as follows:

[0033]

[0034] The above formula calculates the difference between the input system feature vector sequence and the output system feature vector sequence at all times. The neural network trained using this loss function can transform the system mapping characteristics between the motion and current of the experimental robot at a certain moment into that of the target robot, thereby obtaining the mapping relationship between motion and current under the new robot digital twin.

[0035] Optionally, the generation of fault samples based on system simulation includes:

[0036] The experimental robot moves along the working trajectory of the target robot and replaces the faulty parts for sampling;

[0037] Using the obtained system transformation network, all the system transformation matrices T of the experimental robot with faults are transformed into the system transformation matrices of the target robot

[0038] Using the system transformation matrix at each moment Convert the motion vector at that moment into a current vector;

[0039] Using the time series B(t) obtained under different fault labels, the sequences of possible different faults of the target robot are generated;

[0040] A neural network for time series classification is trained using different current sequences Bi(t) to develop a fault diagnosis algorithm for a target robot without any fault samples.

[0041] According to a third aspect of the present invention, there is provided a robot fault data generation system based on sample simulation transfer learning, comprising:

[0042] Data sample generation module: Based on the source domain data and target domain data obtained above, the KL divergence is used to evaluate the similarity between the experimental motion curves of the two robots, and the next action that is most likely to make the motion response curves of the two robots similar is selected for each current posture, forming a set of actions with the most similar motion response curves;

[0043] System transformation network module: using the action set most similar to the motion response curve obtained, the sample transformation network is trained, and the target fault-free robot is simulated on the experimental robot that can perform fault experiments; wherein the motion signal and torque signal of the robot in a motion task form a signal pair, and the signal pair under the same action of the experimental robot and the target robot is used to obtain the neural network input and output of the same dimension, and the neural network is trained to obtain a trained system transformation network;

[0044] Fault sample generation module: Based on the trained system transformation network, all fault sample currents obtained by the experimental robot are converted into fault samples of the target robot, and a virtual fault data set of the target domain is generated to train the fault diagnosis algorithm.

[0045] Compared with the prior art, the embodiments of the present invention have at least one of the following beneficial effects:

[0046] The fault data generation method of the embodiment of the present invention addresses the difficulty in preparing fault samples for deployed normal and fault-free robots in the field of industrial robots. It can use abundant healthy samples to obtain sample data for robots that are already in service but have no fault samples, thereby supporting any fault diagnosis algorithm. The fault data generation method can generate fault samples for any homogeneous robot without any additional debugging skills, which is not involved in other current small sample learning or transfer learning fault diagnosis methods.

[0047] The fault data generation method of the embodiment of the present invention provides sufficient high-quality data for new digital twin tasks in the early stage when samples are insufficient. The use of healthy data overcomes the problem that the existing fault diagnosis algorithm is overly dependent on the fault data set and has poor effect on zero-sample objects.

[0048] The fault data generation method of the embodiment of the present invention reduces the time cost of deploying a digital twin fault diagnosis algorithm on a zero-fault industrial robot. It is only necessary to obtain a faulty part once on the experimental robot to generate a fault data set for a new zero-fault robot. It is no longer necessary to conduct fault or wear experiments for several days to several months for the new robot object, thus saving experimental time costs and faulty part processing costs. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] Other features, objects and advantages of the present invention will become more apparent from the detailed description of non-limiting embodiments made with reference to the following drawings:

[0050] Figure 1 This is a flow chart of a method for generating fault data in one embodiment of the present invention;

[0051] Figure 2 A flow chart of a method for generating an optimal robot data sample in one embodiment of the present invention;

[0052] Figure 3 The sample transformation principle based on the multi-channel convolutional autoencoder in one embodiment of the present invention;

[0053] Figure 4 is a training flow chart of an autoencoder in one embodiment of the present invention; DETAILED DESCRIPTION

[0054] The present invention is described in detail below in conjunction with specific embodiments. The following embodiments will help those skilled in the art to further understand the present invention, but are not intended to limit the present invention in any form. It should be noted that, for those of ordinary skill in the art, several variations and improvements may be made without departing from the concept of the present invention. These all belong to the protection scope of the present invention.

[0055] In the algorithm generation technology of the digital twin platform, the problem of scarcity of effective samples in the industrial field is involved. It is necessary to rely on AI engineers to use various strategies and utilize existing digital twin algorithms to generate corresponding various industrial big data algorithms for new digital twins. However, the existing methods cannot support arbitrary fault diagnosis.

[0056] The method proposed in the present invention is to solve the problem of using one or a few robots that can be used for experiments in a digital twin platform to batch generate personalized fault diagnosis algorithms for a large number of heterogeneous industrial robot twin clusters equipped with different actuators and auxiliary mechanisms. This is described in detail in the following embodiments.

[0057] Definitions and explanations of terms involved in the embodiments:

[0058] Chinese Complete English statement English abbreviations Transfer Learning Transferlearning TL Algorithm training algorithmictraining AT Digital Twin digitaltwins DT

[0059] In one embodiment, in order to complete the generation of robot fault data, a robot fault experiment system is provided, which is used to generate a virtual fault data set for a target robot without faults. The robot fault experiment system includes: an experimental robot with the same configuration as the target robot; an experimental fault component, which is a component in the experimental robot, and each experimental fault component corresponds to a fault type; a data acquisition module, which inputs the same joint angle signal as the target robot to the experimental robot, controls the experimental robot and the target robot to perform the same action, and collects the joint angle signal and current signal at this time to obtain source domain data and target domain data. The source domain data and target domain data will serve as the basis for the subsequent generation of robot fault data.

[0060] Generally speaking, a robot fault experiment system includes an experimental robot with the same configuration as the target robot, in which the experimental fault parts can be determined according to the actual simulated fault type, such as faulty motors, faulty bearings, faulty reducers, faulty synchronous belts and other experimental fault parts. The experimental robot must be of the same configuration as the target robot, such as both are collaborative robots or both are SCARA robots, or both are multi-joint robots. The specific type of fault parts depends on the fault type that the company to which the target robot belongs is concerned about. The data acquisition module needs to be able to collect the joint angle signals and joint current signals of the target robot and the experimental robot during movement, and align the start time of the target robot and the experimental robot through IO interruption. By inputting the same joint angle signal as the target robot to the experimental robot, controlling the experimental robot and the motion robot to perform the same action and collecting the joint angle signal and current signal at this time, the source domain data and the target domain data can be obtained. By replacing parts of different fault types, the source domain fault data set can be obtained.

[0061] Reference Figure 1 As shown, this embodiment provides a method for generating robot fault data based on sample simulation transfer learning, and the method steps include:

[0062] S1, Generate optimal robot data samples: Based on the robot fault experiment system, obtain source domain data and target domain data, use KL divergence to evaluate the similarity between the experimental action curves of the two robots, select the next action that is most likely to make the motion response curves of the two robots similar for each current posture, and form the action set with the most similar motion response curves;

[0063] S2, build a system transformation network: use the action set with the most similar motion response curve to train the sample transformation network, and simulate the target fault-free robot on the experimental robot that can do fault experiments; the motion signal and torque signal of the robot in a motion task form a signal pair, and use the signal pair of the experimental robot and the target robot under the same action to obtain the network input and output of the same dimension;

[0064] S3, fault sample generation process based on system simulation: Based on the trained system transformation network, all fault sample currents obtained by the experimental robot are converted into fault samples of the target robot, and a virtual fault data set of the target domain is generated to train the fault diagnosis algorithm.

[0065] In the above embodiment of the present invention, by learning the differences between the normal system model mapping matrices of different robots, the system mapping matrix of the robot that has undergone the fault experiment is transformed into the system mapping matrix of the new robot through a neural network, thereby generating a data set for the new robot without faults. This generation method constructs a sample transformation neural network based on the principle of robot power system transformation, and is based on a fault experiment scheme of twin robots, which is different from the experimental method of current small sample fault diagnosis technology. Other methods can only use data at the time of failure for detection or classification, while the present invention can also use richer data at the time of health, which is simpler to implement.

[0066] In the above embodiment, S1 generates the optimal robot data sample, which is an optimal sample generation strategy based on causal similarity. In theory, the experimental robot and the target domain robot should be able to perform exactly the same movements, but due to hardware differences such as configuration, friction, torque, and servo controller strategy, the two robots will produce different time domain trajectory curves when executing the same joint angle command. For example, the speed change process of the experimental robot may be smoother, and the swing response speed of the target robot may be faster. Although these detailed differences are difficult to observe with the naked eye, they will show subtle differences in the actual motion curve. This difference is related to the inherent characteristics of the equipment and cannot be eliminated, which means that the actual trajectory difference between the two robots will be smaller under some action instructions, and the difference under some actions will be larger. Therefore, S1 must first implement a motion selection strategy that minimizes the actual trajectory difference between the experimental robot and the target robot.

[0067] In some preferred embodiments, reference Figure 2 As shown in S1, the optimal sample generation strategy based on causal similarity specifically includes the following steps:

[0068] Step 1.1: Randomly generate a series of motion instructions and input them into the experimental robot to obtain several groups of "joint angle signals and current signals" as data set 1, and use the feature combination under all actions to obtain a probability distribution function p.

[0069] The total number of samples is N, and the total number of samples in the i-th group obtained by clustering the signal characteristics is n i , the probability distribution function p is calculated as follows:

[0070]

[0071] Among them, p(i) represents the probability distribution function p, and N1 represents the total number of samples screened from the source domain dataset this time.

[0072] In this embodiment, the screening is to first select healthy samples from the source domain and the target domain to obtain source domain samples with the closest feature distribution. The feature distribution is analyzed by a clustering method. For example, the target domain is clustered to obtain three categories with a ratio of 3:2:1. It is hoped that the source domain data can be screened to achieve a clustering ratio of 3:2:1. Therefore, N1 represents the total number of samples of the source domain data screened this time.

[0073] Step 1.2: Obtain data set 2 of the new digital twin task, randomly generate a series of motion instructions and input them into the experimental robot, obtain several sets of data sets 2 of "joint angle signals and current signals", and use the feature combination under all actions to obtain the second probability distribution function.

[0074] Specifically, the trajectory of the experimental robot is input to the target robot, and slight adjustments are made according to the spatial constraints of the target robot to obtain several sets of "joint angle signals and current signals" as data set 2. A probability distribution function q is obtained by combining the features of all actions. The calculation method of the distribution function q is as follows:

[0075]

[0076] Among them, q(k) represents the probability distribution function q, n k is the total number of samples in the kth group obtained by clustering, and N2 represents the total number of samples screened from the target domain dataset this time.

[0077] Step 1.3: Use the distribution functions p and q to calculate the KL divergence, and use "Q learning" to continuously delete or add samples in the experimental robot's data set 1 to obtain the distribution function p with the smallest KL divergence.

[0078] In order to better obtain the distribution function p with the minimum KL divergence, in a preferred embodiment, the following steps may be specifically included:

[0079] Step 1.3.1: Calculate the KL divergence of q and p:

[0080]

[0081] Step 1.3.2: Use the inverse of KL divergence as a reward and adjust the sample composition through reinforcement learning:

[0082]

[0083] Q(s,a)←Q(s,a)+α*(R+γ*max(Q(s′,a′))-Q(s,a))

[0084] Q(s,a) is the probability of adopting sample adjustment strategy a when state s is P. Sample adjustment strategy a can be arbitrarily designed as a set of optional operation sets {a1, a2, a3, a4…} according to the situation.

[0085] Step 1.4: Output the dataset 1 corresponding to p as the source domain dataset, and output the target domain dataset 2 corresponding to q as the target domain dataset.

[0086] In the above embodiment of the present invention, an optimal action selection strategy based on causal similarity is adopted. The strategy uses KL divergence to evaluate the similarity between the experimental action curves of the two robots to screen out irrelevant experimental motion trajectories, thereby avoiding non-convergence or poor transformation effects caused by the complete lack of transferability of the actions of the two devices.

[0087] In some preferred embodiments, in S2, in order to construct the required neural network for transforming the system state of the original robot into the target service robot, the system state is an abstract concept. In this embodiment, it is proposed to regard the transient "motion sequence-current sequence" as two vectors to obtain a transformation matrix, and use this to construct a new feature for training the neural network.

[0088] Specifically, refer to Figure 3 As shown in Figure 1, in S2, based on the datasets 1 and 2 generated by S1, a "signal pair" transformation network is trained. This transformation method uses a different principle from the existing transfer learning feature transformation method, and combines the knowledge of the robot power system to perform specific transformations in the field of industrial robot digital twins. The robot system is usually described by the dynamic equation, which is a set of functional equations between the motion signals of the six axes of the robot and the joint torque signals. The motion signal and torque signal of the robot in a motion task constitute a "signal pair". Using the signal pairs under the same action of the experimental robot and the target robot, the network input and output of the same dimension can be obtained. Using the action set with the most similar motion response curve obtained by the same S1 to train this sample transformation network, the target fault-free robot can be simulated on the experimental robot that can perform fault experiments.

[0089] In one embodiment, referring to Figure 3 As shown in the figure, a system transformation network is implemented based on a multi-channel convolutional autoencoder, which includes the following steps:

[0090] Step 2.1: Provide a neural network and use a transformation pair to obtain the input and output of the neural network.

[0091] The robot's motion and current at the same time can be expressed as a row vector A and a column vector B:

[0092] A=[A1,A2,A3,A4,A5,A6]

[0093] B=[I1,I2,I3,I4,I5,I6]

[0094] The row vector A and the column vector B can be converted using a 6×6 transformation matrix T:

[0095] AT=B

[0096] This unique transformation matrix T represents the system model when performing this movement. Using data at different times, we can obtain many groups of A and B. According to the matrix principle, a corresponding group of T can be calculated for every six groups of A and B.

[0097] By expanding the 6×6 matrix T into a 36×1 form, we can get the corresponding system eigenvector at each moment:

[0098] SFV=[T 11 ,T 12 ,T 13 ,T 14 ,T 15 …,T 64 ,T 64 ,T 65 ,T 66 ]

[0099] According to the action, transform the experimental robot T and the target robot T at different times By one-to-one correspondence and combination, we can obtain the input and output of the neural network respectively.

[0100] SFV_1=[T 11 ,T 12 ,T 13 ,T 14 ,T 15 …,T 64 ,T 64 ,T 65 ,T 66 ]

[0101]

[0102] The input is an N*36 multi-dimensional system feature vector sequence, and the output is also an N*36 multi-dimensional system feature vector sequence, where N represents the total number of sample lengths of all motion data in the data set.

[0103] Step 2.2: Use a feature extraction layer composed of mixed convolutions, where the convolution layer converts the original time series into the input features of the autoencoder, and the deconvolution layer restores the latent vector output by the autoencoder to the time series of the target space.

[0104] For example, design a feature extraction layer composed of mixed convolutions, where the input is an N*36-dimensional time series and the output is also an N*36-dimensional time series. A convolution layer and a deconvolution layer are set for the input and output respectively. The convolution layer converts the original time series into the input features of the autoencoder, and the deconvolution layer restores the latent vector output by the autoencoder to the time series of the target space.

[0105] Step 2.3: Select the hidden layer structure to design an autoencoder, which finds the essential features of the signal by learning the reconstruction process of the target domain and the source domain signal, and serves as the backbone between the convolution layer and the deconvolution layer to undertake the task of feature mining and feature transformation. Specifically, Figure 4 The working logic shown is that the autoencoder is used to select the most essential features. It consists of an encoder and a decoder. The encoder is a multi-layer perceptron network that converts the fixed-length sequence fragments extracted by the convolution layer into intermediate features, and then maps this essential feature to the feature sequence of the target domain through the decoder of the target domain. In this way, the convolutional source domain features are converted into the features of the target domain, and restored to the theoretical fault signal of the target domain through the deconvolution layer.

[0106] like Figure 4 As shown in the figure, in order to obtain the appropriate initial autoencoder weights, the autoencoder needs to be trained. The output of the autoencoder network is called the restoration signal, and the MSE loss value between it and the network input is called the restoration loss, which is used to evaluate whether the output of the autoencoder is the same as the input. Through dataset 1 and dataset 2, the sequences obtained through step 2.1 are called source domain sequences and target sequences respectively. The autoencoders trained using the source domain sequences and target sequences are called autoencoders 1 and 2.

[0107] Specifically, in a preferred embodiment, step 2.3 may include the following steps:

[0108] Step 2.3.1: Train the autoencoder using the restoration loss of the source domain signal, and denote the decoder and encoder as decoder1 and encoder1.

[0109] Step 2.3.2: Train the autoencoder using the restoration loss of the target domain signal, and record the decoder and encoder as Decoder2 and Encoder2.

[0110] Step 2.3.3: Use the structure of encoder 1 and decoder 2 to splice back and forth to form a new autoencoder. When performing sample transformation, use the trained weights of encoder 1 and decoder 2 as the initial weights of the autoencoder link during network training and participate in subsequent training.

[0111] Step 2.4: Use the signal reconstruction difference to form the loss function of this round, and adjust the weights for the next round of iteration, continuously narrowing the causal structure difference between the original domain dataset and the target domain dataset to obtain the final system transformation network.

[0112] Specifically, continue to refer to the embodiment of step 2.3 above, use the source domain signal and the target domain signal as the input and output of the network to train the complete network. During this stage of training, the autoencoder is updated through the migration loss. The migration loss refers to the loss value obtained through various features after the two output sequences obtained by transforming the source domain and target domain signals are subtracted from each other to obtain the residual sequence. The convolution layer directly uses the difference between the network output and the target domain signal to form this round of loss function, and adjusts the weights for the next round of iterations, continuously narrowing the causal structure differences between the original domain data set and the target domain data set. The loss calculated using the system feature vector sequence is as follows:

[0113]

[0114] SFV 1[i][j] Refers to the jth feature of the ith sample. According to step 2.1, the dynamic state of each moment is represented by a 6*6 matrix. For the sake of calculation simplicity, it is converted into a 36*1 vector. A complete action contains several moments, so it is N 36*1 vectors. The meaning of Loss is to calculate the difference between the input system feature vector sequence and the output system feature vector sequence at all times. Using this trained neural network as the final system transformation network, the system mapping characteristics between the motion and current of the experimental robot at a certain moment can be transformed into the target robot, thereby obtaining the mapping relationship between motion and current under the new robot digital twin.

[0115] In some specific implementations, S3 is to realize the generation of fault samples based on system simulation. The original fault data set is transformed into a new data set using the trained transfer neural network (system transformation network), and a virtual fault data set of the target domain is artificially generated to train the fault diagnosis algorithm.

[0116] Specifically, in one embodiment, S3 specifically includes the following steps:

[0117] Step 3.1: The experimental robot moves along the working trajectory of the target robot and replaces the faulty parts for sampling.

[0118] Step 3.2: Use the system transformation neural network obtained by S2 to transform all the system transformation matrices T of the experimental robot with faults into the system transformation matrices of the target robot

[0119] Step 3.3: Take advantage of every moment Convert the motion vector at this moment into the current vector:

[0120]

[0121] Step 3.4: Use the time series B(t) obtained under different fault labels to generate the sequences of different possible faults of the target robot

[0122] B_0(t)=[I1(t),I2(t),I3(t),i4(t),i5(t),I6(t)]

[0123] B_1(t)=[I1(t),I2(t),I3(t),i4(t),i5(t),I6(t)]

[0124] …

[0125] By training a neural network for time series classification using different current sequences Bi(t), a fault diagnosis algorithm is developed for a target robot without any fault samples.

[0126] The above-mentioned embodiment of the present invention utilizes the system simulation mode to generate fault samples, and can use a small number of fault test robots to batch create fault diagnosis algorithms for robots of different models, different actuators, and different working trajectories, without being limited by the fault type.

[0127] Based on the same technical concept, in another embodiment of the present invention, a robot fault data generation system based on sample simulation transfer learning is also provided, comprising:

[0128] Data sample generation module: Based on the obtained source domain data and target domain data, the KL divergence is used to evaluate the similarity between the experimental motion curves of the two robots, and the next action that is most likely to make the motion response curves of the two robots similar is selected for each current posture, forming a set of actions with the most similar motion response curves;

[0129] System transformation network module: Use the action set with the most similar motion response curve to train the sample transformation network, and simulate the target fault-free robot on the experimental robot that can perform fault experiments; the motion signal and torque signal of the robot in a motion task form a signal pair, and the signal pair under the same action of the experimental robot and the target robot is used to obtain the neural network input and output of the same dimension, and the neural network is trained to obtain a trained system transformation network;

[0130] Fault sample generation module: Based on the trained system transformation network, all fault sample currents obtained by the experimental robot are converted into fault samples of the target robot, and a virtual fault data set of the target domain is generated to train the fault diagnosis algorithm.

[0131] It should be understood that the modules in the above-mentioned embodiment of the robot fault data generation system based on sample simulation transfer learning of the present invention correspond to the steps in the embodiment of the robot fault data generation method based on sample simulation transfer learning, and the specific implementation technologies can refer to each other and will not be repeated here.

[0132] In order to better understand the above technical solution of the present invention, the specific implementation process of the present technology is described below by a specific example, but it should be understood that the following embodiment is not intended to limit the scope of the present invention:

[0133] First, prepare the fault experiment hardware system. In this embodiment, the target robot for monitoring and deploying the fault diagnosis algorithm is a certain model of UR collaborative robot, and the JAKA collaborative robot is selected as the fault experiment robot. According to the structure of the experimental robot, prepare motors, reducers, and bearings of different fault types for it. Use the JAKA and UR APIs and Raspberry Pi as data acquisition modules to issue motion instructions and collect response curves for the experimental robot and the target robot respectively.

[0134] Then, using the built fault experiment hardware system, follow the following three steps to generate a fault data set for the UR robot.

[0135] Step 1: Based on causal similarity, select the action set with the closest response curves between the experimental robot and the target robot. This step is specifically divided into the following steps:

[0136] Step 1.1: Randomly generate several groups of continuous motion control instruction sequences according to the rotation speed and rotation angle. For example, use a random function to generate a ternary action sequence {"joint 4 rotates 77 degrees forward at 15% speed", "joint 1 rotates 5 degrees forward at 30% speed", "joint 3 rotates 15 degrees forward at 40% speed", ...}, record these motion sequences as Action, and input the corresponding instructions to the experimental robot to generate motion curves and joint current curves to obtain several groups of "joint angle signals and current signals" data sets 1.

[0137] Use all actions to perform K-means automatic clustering, count the number of samples in each category, and use the clustered samples and the total number of samples to obtain a probability distribution function p. If the total number of action samples is 1000, and the number of clustered samples in the third category is 50, then the probability distribution function p(3) is equal to:

[0138]

[0139] By analogy, we can get P = {p(1), p(2), p(3), p(4), ...}

[0140] Step 1.2: For the data set 2 obtained by the target robot, obtain a probability distribution function Q = {q(1), q(2), q(3), q(4), ...} similar to step 1.1

[0141] Step 1.3: Use P and Q to calculate the kl divergence, and use "Q learning" to continuously delete or add instructions in the ternary action sequence Action, and finally obtain the action sequence with the minimum kl divergence. The specific process includes the following steps:

[0142] Step 1.3.1: Calculate the kl divergence of the current action:

[0143]

[0144] Step 1.3.2: Use the inverse of KL divergence as a reward and adjust the sample composition through reinforcement learning:

[0145]

[0146] In Q learning, Q(s,a) is the probability of taking sample adjustment strategy a when state s is P. Sample adjustment strategy a can be arbitrarily designed as a set of optional operations {a1,a2,a3,a4...} according to the situation. Specifically, if the iteration parameters of reinforcement learning are selected as α=0.1, γ=0.01, the actions in Action are executed sequentially.

[0147] For example, when executing the action "joint 3 rotates 15 degrees forward at 40% speed", the state s at this time can be selected as the current end effector position of the robot:

[0148] (1000mm,-1500mm,34.8mm,12°,10°,-3°)

[0149] At this time, action a can be selected to generate the triplet of the action sequence "joint 3 rotates 15 degrees forward at 40% speed":

[0150] (3,40,+15)

[0151] Then the strategy Q can be set to the possible benefits of taking this action. Then it can be iterated according to the following formula:

[0152] Q(s,a)←Q(s,a)+α*(R+γ*max(Q(s′,a′))-Q(s,a))

[0153] Since there are many combinations of s and a, we can get a set of Q(s,a), and thus get an action generation strategy: if the current end pose vector is s or close to s, what is the value of the next action instruction being a or close to a. Based on this strategy, the best next action can be taken for each current pose. Since the gain is obtained from the inverse of the KL divergence, the strategy can select the next action that is most likely to make the motion response curves of the two robots similar for each current pose.

[0154] Step 1.4: Output the data set 1 corresponding to the experimental robot under the Action sequence as the source domain data set, and output the target domain data set 2 corresponding to the target robot as the target domain data set.

[0155] Step 2: Implement a system transformation network based on a multi-channel convolutional autoencoder. This step specifically includes the following steps.

[0156] Step 2.1: Read the data in robot dataset 1 and dataset 2 at a certain moment, the motion row vector A and the current column vector B, for example:

[0157] A=[20°,36°,44°,0°,170°,-180°]

[0158] B=[145mA, 1420mA, 300mA, 400mA, 555mA, 632mA] T

[0159] Select data at 6 similar moments, form a matrix with row vectors, and then calculate a 6×6 matrix T:

[0160] AT=B

[0161] This unique matrix T represents the system model at this instant. Expanding the matrix T into a 36×1 form, we can get the system eigenvector corresponding to this instant:

[0162] SFV=[T 11 ,T 12 ,T 13 ,T 14 ,T 15 …,T 64 ,T 64 ,T 65 ,T 66 ]

[0163] According to the optimal action sequence generated in step one, the T between the "joint angle signals and current signals" of the JAKA robot and the UR robot at different times are matched one by one and combined to obtain the input and output of the neural network respectively.

[0164] SFV_1(t)=[T 11 (t),T 12 (t),T 13 (t),T 14 (t),T 15 (t)…,T 65 (t),T 66 (t)]

[0165]

[0166] Step 2.2: Select a suitable convolution structure to design a feature extraction layer composed of mixed convolutions. The convolution layer converts the original time series into the input features of the autoencoder, and the deconvolution layer restores the latent vector output by the autoencoder to the time series of the target space.

[0167] For example, the length of the SFV_1 sequence calculated each time is 20480 moments, that is, SFV includes 20480*36 values. The convolution layer can be composed of 36 convolution kernels of any type with a total scaling factor of 1024. The convolution of each channel will output 20 features at this time.

[0168] Step 2.3: Select the hidden layer structure to design an autoencoder. The first hidden layer can be designed to have 20*36=720 neurons, 5 hidden layers with 360 neurons can be set in the middle, and finally a hidden layer with 720 neurons can be set. Set 36 deconvolution kernels of any type with a total magnification of 1024 after the hidden layer, and finally output SFV_out with a length of 20480. Taking SFV_1 as the source domain sequence and SFV_2 as the target sequence, step 2.3 specifically includes the following steps:

[0169] Step 2.3.1: Use the restored signal of SFV_1 to calculate the restoration loss and train encoder 1 to obtain encoder 1 and decoder 1.

[0170] Step 2.3.2: Use the restored signal of SFV_2 to calculate the restoration loss and train the autoencoder 2 to obtain encoder 2 and decoder 2.

[0171] Step 2.3.3: Use the structure of encoder 1 and decoder 2 to splice back and forth to form a new autoencoder, which is used as the autoencoder during sample transformation network training.

[0172] Step 2.4: After the autoencoder is trained, use Figure 4 The process shown cross-combines two autoencoders and generates a residual sequence. The strength of the residual sequence is calculated using arbitrary features and used to update the weights of the autoencoder. The difference between SFV_out and SFV_2 is used to form the reconstruction loss function for this round, and the weights of the convolutional and deconvolutional layers are adjusted for the next round of iteration. At this time, the loss calculated using the system feature vector sequence is as follows:

[0173]

[0174] Step 3: Based on the trained system transformation neural network, all fault sample currents obtained by the experimental robot are converted into fault samples of the target robot. Specifically, it includes the following steps:

[0175] Step 3.1: The JAKA robot moves along the trajectory of the UR robot when it is working, replaces different faulty parts to sample and obtain "signal pair" data, and uses the method introduced in step 2.1 to obtain several sets of transformation matrices T and the corresponding expansion sequence SFV_1 in the form of every six moments as an instant.

[0176] Step 3.2: Use the obtained system transformation neural network to transform all the faulty expansion sequences SFV_1 of the experimental robot into the expansion sequence SFV_2 of the target robot, and then invert SFV_2 into several sets of transformation matrices

[0177] Step 3.3: For the target UR robot, use the Convert the motion vectors at these six moments into current vectors:

[0178]

[0179] Step 3.4: Use the time series B(t) obtained under different fault labels to generate the current series under different possible faults of the target robot:

[0180] B_0(t)=[I1(t),I2(t),I3(t),I4(t),I5(t),I6(t)]

[0181] B_1(t)=[I1(t),I2(t),I3(t),I4(t),I5(t),t6(t)]

[0182] …

[0183] Based on any CNN convolutional neural network, a time series classification network is trained with the current sequence B_i(t) under different faults, thus developing a fault diagnosis algorithm for a target UR robot without any fault samples.

[0184] The above-mentioned embodiment of the present invention does not directly take the current signal and motion signal of the experimental robot and the service robot as input and output, but takes the transformation matrix of the current signal and the motion signal as input and output, that is, the neural network is trained through the system state of the experimental robot and the service robot, so as to transform the system state at the time of fault to the target robot, thereby making the generated fault samples better.

[0185] The above describes the specific embodiments of the present invention. It should be understood that the present invention is not limited to the above specific embodiments, and those skilled in the art can make various modifications or variations within the scope of the claims, which does not affect the essence of the present invention. The above preferred features can be used in any combination without conflicting with each other.

Claims

1. A robot fault experiment system, used to generate a virtual fault data set for a target robot without faults, characterized in that: include: An experimental robot with the same configuration as the target robot; The experimental faulty part is a part of the experimental robot, and each of the experimental faulty parts corresponds to a fault type; The data acquisition module inputs the same joint angle signal as that of the target robot to the experimental robot, controls the experimental robot and the target robot to perform the same action, and collects the joint angle signal and current signal at this time to obtain source domain data and target domain data.

2. The robot fault experiment system according to claim 1, characterized in that: There are one or more experimental faulty parts, and source domain data corresponding to different fault types are obtained by replacing experimental faulty parts with different fault types.

3. The robot failure experiment system according to claim 2, characterized in that: The data acquisition module collects the input of the experimental robot and the joint angle signal and the current signal of the target robot for multiple times to obtain the source domain data set and the target domain data set of the corresponding fault type.

4. A robot fault data generation method based on sample simulation transfer learning, characterized in that: include: Generate optimal robot data samples: Based on any one of claims 1 to 3, obtain source domain data and target domain data, use KL divergence to evaluate the similarity between the experimental motion curves of the two robots, select the next action that is most likely to make the motion response curves of the two robots similar for each current posture, and form a set of actions with the most similar motion response curves; Constructing a system transformation network: using the action set that is most similar to the motion response curve obtained, training a sample transformation network, and simulating a target fault-free robot on an experimental robot that can perform fault experiments; wherein the motion signal and torque signal of the robot in a motion task form a signal pair, and using the signal pair under the same action of the experimental robot and the target robot, obtain network input and output of the same dimension; Fault sample generation based on system simulation: Based on the trained system transformation network, all fault sample currents obtained by the experimental robot are converted into fault samples of the target robot, and a virtual fault data set of the target domain is generated to train the fault diagnosis algorithm.

5. The robot fault data generation method based on sample simulation transfer learning according to claim 4 is characterized in that: The generating of the optimal robot data sample comprises: A series of motion instructions are randomly generated and inputted into the experimental robot to obtain a first data set of several groups of "joint angle signals and current signals", and a first probability distribution function is obtained by using a combination of features under all actions; Obtain a second data set of a new digital twin task, randomly generate a series of motion instructions and input them to the experimental robot, obtain several sets of second data sets of "joint angle signals and current signals", and obtain a second probability distribution function by using the feature combination under all actions; The KL divergence is calculated using the first probability distribution function and the second probability distribution function, and the samples in the first data set collected by the experimental robot are continuously deleted or added using Q learning to obtain the first probability distribution function with the minimum KL divergence; The first data set corresponding to the first probability distribution function with the smallest KL divergence is output as the source domain data set, and this data set is the first data set corresponding to the experimental robot; the second data set corresponding to the second probability distribution function is output as the target domain data set, and this data set is the second data set corresponding to the target robot.

6. The robot fault data generation method based on sample simulation transfer learning according to claim 4 is characterized in that: The construction system transforms the network, including: The movement and current of the robot at the same time are represented as row vector A and column vector B. The row vector A and column vector B are transformed by a system transformation matrix T. The experimental robot system transformation matrix T and the target robot system transformation matrix at different times are transformed according to the action. One-to-one correspondence and combination are performed to obtain the input and output of the system transformation network; Select the hidden layer structure to design an autoencoder, which finds the essential features of the signal by learning the reconstruction process of the target domain and the source domain signal, and serves as the backbone between the convolution layer and the deconvolution layer to undertake the tasks of feature mining and feature transformation; A feature extraction layer composed of mixed convolutions is used, with a convolution layer and a deconvolution layer set at the input and output respectively. The convolution layer converts the original time series into the input features of the autoencoder, and the deconvolution layer restores the potential vector output by the autoencoder into the time series of the target space. The signal reconstruction difference is used to form the loss function of this round, and the weight is adjusted for the next round of iteration, continuously narrowing the causal structure difference between the original domain data set and the target domain data set to obtain the final system transformation network.

7. The robot fault data generation method based on sample simulation transfer learning according to claim 6 is characterized in that: The obtaining of the input and output of the neural network comprises: The robot's motion and current at the same moment are represented by row vector A and column vector B; The row vector A and the column vector B are converted using a 6×6 system transformation matrix T. The system transformation matrix T represents the system model when performing this movement. Using data at different times, many groups of A and B can be obtained. According to the matrix principle, a corresponding system transformation matrix T can be calculated for every six groups of A and B. Expand the 6×6 matrix T into a 36×1 form to obtain the corresponding system eigenvector at each moment; According to the action, the experimental robot system transformation matrix T and the target robot system transformation matrix at different times are By one-to-one correspondence and combination, we can obtain the input and output of the neural network respectively; The input is an N*36 multi-dimensional system feature vector sequence, and the output is also an N*36 multi-dimensional system feature vector sequence, where N represents the total number of sample lengths of all motion data in the data set.

8. The robot fault data generation method based on sample simulation transfer learning according to claim 7 is characterized in that: The loss function of this round composed of signal reconstruction differences specifically includes: The loss calculated using the system feature vector sequence is as follows: The above formula calculates the difference between the input system feature vector sequence and the output system feature vector sequence at all times. The neural network trained using this loss function can transform the system mapping characteristics between the motion and current of the experimental robot at a certain moment into that of the target robot, thereby obtaining the mapping relationship between motion and current under the new robot digital twin.

9. The robot fault data generation method based on sample simulation transfer learning according to claim 4 is characterized in that: The generation of fault samples based on system simulation includes: The experimental robot moves along the working trajectory of the target robot and replaces the faulty parts for sampling; Using the obtained system transformation network, all the system transformation matrices T of the experimental robot with faults are transformed into the system transformation matrices of the target robot Using the system transformation matrix at each moment Convert the motion vector at that moment into a current vector; Using the time series B(t) obtained under different fault labels, the sequences of possible different faults of the target robot are generated; A neural network for time series classification is trained using different current sequences Bi(t) to develop a fault diagnosis algorithm for a target robot without any fault samples.

10. A robot fault data generation system based on sample simulation transfer learning, characterized in that: include: Data sample generation module: based on any one of claims 1 to 3, source domain data and target domain data are obtained, KL divergence is used to evaluate the similarity between the experimental motion curves of the two robots, and the next action that is most likely to make the motion response curves of the two robots similar is selected for each current posture, so as to form a set of actions with the most similar motion response curves; System transformation network module: using the action set most similar to the motion response curve obtained, the sample transformation network is trained, and the target fault-free robot is simulated on the experimental robot that can perform fault experiments; wherein the motion signal and torque signal of the robot in a motion task form a signal pair, and the signal pair under the same action of the experimental robot and the target robot is used to obtain the neural network input and output of the same dimension, and the neural network is trained to obtain a trained system transformation network; Fault sample generation module: Based on the trained system transformation network, all fault sample currents obtained by the experimental robot are converted into fault samples of the target robot, and a virtual fault data set of the target domain is generated to train the fault diagnosis algorithm.

Citation Information

Cited By

  • Simulation training method and device for robot control strategy, medium and program product

    CN122194728A

  • Simulation training method, device, medium and program product for robot control strategy

    CN122194728B