A multi-motor synchronization control method based on neural network prediction compensation
By constructing a multi-motor state fusion model and fractional-order memory characteristics, and combining it with radial basis function neural networks for disturbance prediction and compensation control, the problems of difficult characterization of coupling relationships and insufficient adaptive updates in multi-motor synchronous control are solved, achieving efficient adaptation and accurate compensation for complex working conditions.
Patent Information
- Application Number
- CN202610709715.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-05-22
- Publication Date
- 2026-08-25
AI Technical Summary
Existing multi-motor synchronous control technology is difficult to fully characterize the coupling relationship under complex working conditions and lacks the ability to remember the dynamic changes of the system, resulting in amplified synchronization error and decreased stability. Furthermore, existing neural network control methods lack online adaptive update mechanisms and have limited prediction accuracy.
A multi-motor state fusion model and topology coupling error representation mechanism are constructed. Fractional memory characteristics are introduced and combined with radial basis function neural network for disturbance prediction and compensation control. A parameter adaptive update mechanism is established, and coupling mapping and fractional adaptive synchronization control are performed through Laplace matrix.
It enhances the dynamic adaptability to non-stationary disturbances and load fluctuations, reduces the compensation lag problem in the synchronous control process, improves disturbance prediction and error compensation capabilities, and enhances control accuracy and response performance.
Smart Images

Figure CN122639746A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of motor control technology, and in particular to a multi-motor synchronous control method based on neural network predictive compensation. Background Technology
[0002] With the development of industrial automation and high-end equipment manufacturing, multi-motor cooperative drive systems are widely used in CNC machine tools, robots, and precision transmission equipment. Multi-motor synchronous control has become one of the key technologies to ensure the accuracy and stability of system operation. Currently, multi-motor systems typically construct synchronous control strategies by collecting speed and position signals, and combine them with centralized or distributed control structures to achieve coordinated operation between motors.
[0003] Existing multi-motor synchronous control technologies still have significant shortcomings in complex operating conditions and environments with strong disturbances. On the one hand, traditional synchronous control methods are mostly based on proportional-integral regulation or simple error feedback mechanisms, which are insufficient to fully characterize the coupling relationship and dynamic topology between multiple motors. This leads to amplified synchronization errors and decreased system stability under load fluctuations or parameter inconsistencies. On the other hand, existing methods do not make sufficient use of historical error information and lack the ability to remember dynamic changes in the system, making it difficult to effectively compensate for non-stationary disturbances. Furthermore, control strategies based on conventional neural networks often rely on static parameters or offline training results, lacking online adaptive update mechanisms. Under complex operating conditions, their prediction accuracy is limited, and they are prone to compensation lag or overcompensation. In addition, existing control methods typically employ fixed-order or single-update strategies during control parameter adjustment, failing to dynamically adjust according to system errors and control states, resulting in a trade-off between control accuracy and response performance.
[0004] Therefore, how to provide a multi-motor synchronous control method based on neural network predictive compensation is a problem that urgently needs to be solved by those skilled in the art. Summary of the Invention
[0005] This invention proposes a multi-motor synchronous control method based on neural network prediction and compensation. By constructing a multi-motor state fusion model and a topology coupling error representation mechanism, fractional memory characteristics are introduced to model the error dynamics. Furthermore, a radial basis function neural network is combined to realize disturbance prediction and compensation control. At the same time, a parameter adaptive update mechanism is established to achieve dynamic optimization of the control strategy.
[0006] A multi-motor synchronous control method based on neural network prediction compensation according to an embodiment of the present invention includes the following steps:
[0007] S1. Collect the speed signal, position feedback signal, current signal and bus voltage signal of each motor to form a set of motor state vectors, and construct a synchronization reference quantity based on the set of motor state vectors;
[0008] S2. Calculate the synchronization error vector of each motor based on the synchronization reference quantity, construct the adjacency matrix according to the topological connection relationship of the multi-motor and generate the Laplace matrix, and use the Laplace matrix to perform coupling mapping on the synchronization error vector to obtain the coupling error feature vector.
[0009] S3. Apply a fractional-order calculus operator to the coupling error feature vector to generate a memory error feature vector, and then merge the coupling error feature vector, the memory error feature vector, and the operating condition feature vector into a unified input vector.
[0010] S4. Input the unified input vector into the radial basis function neural network, calculate the hidden layer response based on the radial basis function and output the perturbation prediction vector, and output the prediction compensation vector with the same dimension as the coupling error feature vector.
[0011] S5. Construct a fractional-order adaptive synchronization control law based on the coupling error feature vector, memory error feature vector and prediction compensation vector, calculate the synchronization control vector, and map the synchronization control vector to the control increment of each motor according to the motor channel.
[0012] S6. Based on the coupling error feature vector and the motor channel control increment, construct the weight update amount and order update amount, update the radial basis function neural network weight parameters and fractional order operator order parameters respectively, and generate each motor drive control command under the updated parameter constraints and send it to the corresponding driver.
[0013] Optionally, S1 includes:
[0014] Under a unified sampling period, the speed signal, position feedback signal, current signal and bus voltage signal of each motor are sampled, and the sampling time corresponding to each sampling period is used as the alignment reference time of the whole system.
[0015] Based on the alignment reference time, the four types of sampled values of each motor at the time are matched, and the sampled values with time deviations not exceeding the preset time threshold are written into the same sampling frame; for the sampled values with time deviations exceeding the preset time threshold, the values of the corresponding signals of the previous sampling period are used to replace them, forming time-aligned motor sampled data.
[0016] The time-aligned sampling data of each motor is constructed into a motor state vector according to the motor number. The motor state vector includes the speed component, position component, current component and bus voltage component within the sampling period. All motor state vectors are combined into a motor state vector set.
[0017] Continuity verification is performed on the speed and position components in the motor state vector set. When the speed change in the current sampling period exceeds the preset speed change threshold, the speed value of the previous sampling period is used to replace the current speed value; when the position change exceeds the preset position change threshold, the position value of the previous sampling period is used to replace the current position value, thus obtaining the corrected motor state vector set.
[0018] The weights of each motor are calculated based on the corrected set of motor state vectors. The weight of each motor is determined by the proportion of the product of the motor bus voltage and current amplitude in the sum of the corresponding products of all motors. The weights of each motor are then normalized so that the sum of all weights equals one.
[0019] The synchronization reference value is obtained by weighting and summing the speed values of each motor according to their corresponding weights, and then establishing a correlation between the synchronization reference value and the corresponding sampling period.
[0020] Optionally, S2 includes:
[0021] S21. Read the synchronization reference value and the speed value of each motor in each sampling period, calculate the synchronization error component in sequence according to the motor number, and write each synchronization error component into the same column vector in the same number order to form a synchronization error vector.
[0022] S22. Establish a topology node table and a connection edge table based on the multi-motor topology connection relationship. The topology node table records the motor number, and the connection edge table records the connected motor pairs and connection weights. The connection weights are read from the preset connection weight table according to the motor pair index, and the bidirectional connections of the same motor pair are assigned the same value.
[0023] S23. Generate an adjacency matrix based on the topology node table and the connection edge table, where the row and column indices of the adjacency matrix correspond one-to-one with the motor numbers; when there are motor pairs in the connection edge table... When, the adjacency matrix is... Line 1 Column elements and the first Line 1 The column elements are assigned the corresponding connection weights; when the connection edge table does not contain motor pairs... When the adjacency matrix is empty, the corresponding element is set to zero, and the diagonal elements of the adjacency matrix are also set to zero.
[0024] S24. Generate a degree matrix based on the adjacency matrix. The degree matrix adopts a diagonal structure. The diagonal elements are taken from the adjacency matrix. The sum of all elements in a row, with off-diagonal elements set to zero;
[0025] S25. Generate the Laplace matrix based on the degree matrix and the adjacency matrix. The Laplace matrix is determined by the following formula: ,in For degree matrix, It is an adjacency matrix;
[0026] S26. Perform matrix multiplication on the synchronization error vector using the Laplace matrix to obtain the coupling error eigenvector, and write the coupling error eigenvector into the sampling frame in the order of motor number to establish a correspondence with the current sampling period.
[0027] Optionally, S3 includes:
[0028] S31. Read the coupling error feature vector in each sampling period, and establish an error history sequence buffer according to the sampling period order. The buffer stores the most recent errors in chronological order. The coupling error feature vector for each sampling period;
[0029] S32. Set the fractional order parameter ,in And according to the sampling period Calculate the discrete fractional integral weight coefficient sequence, where the weight coefficients are calculated according to:
[0030] ;
[0031] in, For historical sequence index, It is the Gamma function;
[0032] S33. Weight and accumulate the historical coupled error feature vectors in the error history sequence buffer according to their corresponding weight coefficients, and then combine each historical vector with its corresponding... After multiplying and summing, the memory error feature vector of the current sampling period is obtained, and the memory error feature vector is aligned with the current coupling error feature vector in the same numbering order;
[0033] S34. Read the operating condition feature vector of the current sampling period. The operating condition feature vector consists of the estimated load torque and the average bus voltage, and is arranged in a fixed dimension order.
[0034] S35. The coupling error feature vector, memory error feature vector and operating condition feature vector are vertically spliced according to a preset arrangement rule to form a unified input vector, and the unified input vector is associated with the current sampling period.
[0035] Optionally, S4 includes:
[0036] S41. During the controller initialization phase, set the dimension order of the input vector and the dimension order of the output vector. The output vector is arranged with the disturbance prediction vector first and the prediction compensation vector last. The component order of the prediction compensation vector is consistent with the component order of the coupling error feature vector. A central library, a width library, a weight library and an index table are established in the parameter storage area respectively.
[0037] S42. During the initialization phase, a sample buffer is established, and a unified input vector and the coupling error feature vector of the corresponding sampling period are written according to the sampling period. For each sample record, a coupling signature corresponding to the multi-motor topology is written. The coupling signature is determined by concatenating the sign sequence of each component of the coupling error feature vector with the absolute value sorting sequence.
[0038] S43. Group the sample buffer according to the coupling signature to obtain multiple sample groups; determine the set of center vectors in each sample group according to the "sequential selection - distance exclusion" method: take the unified input vector of the first sample in the group as the first center vector, traverse the unified input vectors of the remaining samples in the order of sampling time, and write the unified input vector into the set of center vectors when the Euclidean distance between the unified input vector and any determined center vector is greater than the preset exclusion radius, until the traversal is completed;
[0039] S44. For each sample group's set of center vectors, determine the set of width parameters. The set of width parameters is generated using the "neighborhood distance to determine width" method: For any center vector, calculate its Euclidean distance to the other center vectors in the same group's set of center vectors, take the smallest distance as the neighborhood distance, and write the neighborhood distance into the width parameter corresponding to the center vector; establish an index relationship between the center vector and the width parameter according to the sample group number and write it into the center library and the width library;
[0040] S45. In the output structure of the radial basis function neural network: the hidden layer is divided into a shared radial base layer and a channel radial base layer; the shared radial base layer calls all sample group center vector sets to form a shared center subset; the channel radial base layer establishes component subsets according to the component numbers of the coupling error feature vectors; the component subsets are formed by merging the sample group center vector sets corresponding to the components; and the center index ranges corresponding to the shared center subset and each component subset are recorded in the index table.
[0041] S46. In the output structure of the radial basis function neural network: a "coupling consistency constraint mapping" computation chain is introduced to generate the prediction compensation vector. The shared radial basis function output is first transformed into an intermediate compensation vector with the same dimension as the synchronization error vector. Then, the reference compensation vector with the same dimension as the coupling error feature vector is obtained through the coupling mapping corresponding to the Laplace matrix. The channel radial basis function output is used as the residual compensation vector and added to the reference compensation vector to obtain the prediction compensation vector. The coupling mapping adopts the form of Laplace matrix and vector multiplication.
[0042] S47. Read the uniform input vector in each sampling period, and read the center vector and width parameter corresponding to the shared center subset and each component subset according to the index table. Calculate the hidden layer response for each radial basis node. The hidden layer response is determined according to the Gaussian radial basis function.
[0043] ;
[0044] in, To unify the input vector, For the first One central vector, For the corresponding width parameter;
[0045] S48. Write the hidden layer response of the shared radial base layer into the shared response vector according to the center index range, and write the hidden layer response of each component subset into the component response vector group according to the component number, and maintain the index consistency between the shared response vector and the component response vector group within the same sampling period.
[0046] S49. Multiply the shared response vector by the perturbation prediction weight to obtain the perturbation prediction vector; multiply the shared response vector by the intermediate compensation weight to obtain the intermediate compensation vector; perform a Laplace matrix coupling mapping on the intermediate compensation vector to obtain the baseline compensation vector; multiply each component response vector by the corresponding component residual weight to obtain each component of the residual compensation vector and concatenate them according to the component number to form the residual compensation vector; add the baseline compensation vector and the residual compensation vector according to the components to obtain the prediction compensation vector; and concatenate the perturbation prediction vector and the prediction compensation vector according to the preset output order to form the network output vector.
[0047] S410. Write the network output vector into the current sampling period data frame and keep it at the same sampling period index as the unified input vector.
[0048] Optionally, S5 includes:
[0049] S51. Read the coupling error feature vector, memory error feature vector and prediction compensation vector in each sampling period, align the three types of vector components according to the motor number order, subtract the coupling error feature vector from the prediction compensation vector to obtain the compensated error vector, and write the compensated error vector and memory error feature vector into the same sampling period data frame.
[0050] S52. During the controller initialization phase, the eigenvector matrix is calculated based on the Laplace matrix and written into the parameter storage area. During the current sampling period, the eigenvector matrix is used to perform coordinate transformation on the compensated error vector and the memory error eigenvector respectively to obtain the modal error vector and the modal memory error vector.
[0051] S53. Construct intermediate variables for the synchronization control law within the modal domain. Linearly combine the modal error vector and the modal memory error vector according to their component correspondences to form the sliding mode variable vector. Establish a historical buffer for the sliding mode variable vector, storing the most recent data in chronological order. A vector of sliding mode variables for each sampling period;
[0052] S54. In the process of constructing the sliding mode variable vector: establish a segmented order table for the sliding mode variable vector according to the modal components, and establish a correspondence between the fractional order of each modal component and its amplitude range; read the amplitude of each modal component in the current sampling period and query the segmented order table to obtain the fractional order of the corresponding modal component.
[0053] S55. Perform fractional difference operations on the sliding mode variable vector according to the fractional order of each modal component. The fractional difference is determined according to the discrete Grünwald-Letnikov form:
[0054] ;
[0055] in, For the first in the historical cache The sliding mode variable vector components for each sampling period For the fractional order of the corresponding modal components, The coefficients are fractional binomial coefficients;
[0056] S56. In the process of constructing the sliding mode variable vector: the control quantity of the modal domain is generated only for the non-uniform modal components. The control quantity of the modal component corresponding to the zero eigenvalue of the Laplace matrix is set to zero, and the modal synchronization control quantity is calculated for the remaining modal components in the same numbering order.
[0057] S57. The sliding mode variable vector and the fractional-order difference result vector are linearly combined according to the one-to-one correspondence of modal components to obtain the modal synchronization control vector. The synchronization control vector is then obtained by performing an inverse transformation based on the eigenvector matrix. The synchronization control vector is determined by the following formula:
[0058] ;
[0059] in, The eigenvector matrix, and This is the diagonal gain matrix that corresponds one-to-one with each modal component. For synchronization control vectors;
[0060] S58. Establish a control channel mapping table based on the motor number, allocate each component of the synchronous control vector to the control increment of each motor according to the mapping table, and write each motor control increment into the current sampling period data frame as the input quantity for the generation of drive control commands.
[0061] Optionally, S6 includes:
[0062] S61. In each sampling period, read the coupling error feature vector and the control increment of each motor, and read the shared response vector and component response vector group. Divide the coupling error feature vector into component error sequence according to component number, and divide the control increment of each motor into channel control increment sequence according to motor number.
[0063] S62. Construct a residual weight update amount using the component error sequence and the component response vector group. Multiply and accumulate the component response vector corresponding to each component number with the component error to obtain the weight update vector corresponding to the component number. Write the weight update vector into the weight library at the weight address corresponding to the component number.
[0064] S63. Construct an intermediate compensation weight update quantity using the channel control increment sequence and the shared response vector. Multiply and sum the shared response vector and the channel control increment sequence according to the time index to obtain the shared weight update vector. Write the shared weight update vector into the weight library and the weight address corresponding to the shared center subset.
[0065] S64. Perform magnitude constraint processing on the weight update vector to limit the updated weights to between a preset upper limit and a preset lower limit, and establish an association between the updated weights and the corresponding sampling period for storage.
[0066] S65. Based on the coupling error feature vector and the motor channel control increment, the order update is calculated. First, the error amplitude index is calculated from the coupling error feature vector, and the control amplitude index is calculated from the motor channel control increment. Then, the two types of amplitude indices are constructed into an order adjustment index:
[0067] ;
[0068] in, This is the coupling error eigenvector. This is the incremental vector for motor channel control. The order adjustment index is set to a non-zero constant; the order adjustment index is compared with the segmented threshold table to determine the order update direction and order update step size, and the updated fractional order is limited to the preset order interval before being written into the order parameter area.
[0069] S66. Read the updated weight parameters and the updated fractional order parameters within the current sampling period, generate motor drive control commands based on the synchronous control vector calculation results, perform amplitude limiting and slope constraint processing on each motor drive control command, write it into the drive distribution queue according to the motor number, and distribute the commands in the drive distribution queue to the corresponding drivers.
[0070] The beneficial effects of this invention are:
[0071] This invention generates a memory error feature vector with historical error accumulation characteristics by applying a fractional-order calculus operator to the coupling error feature vector. It also integrates the coupling error, memory error, and operating condition characteristics into a unified input vector, enabling the control method to simultaneously utilize operating condition information such as current error, historical error, and load voltage. This enhances the dynamic adaptability to non-stationary disturbances, load fluctuations, and parameter changes, and reduces the compensation lag problem in the synchronous control process.
[0072] This invention inputs a unified input vector into a radial basis function neural network, and uses shared radial base layers, channel radial base layers, and coupling consistency constraints to generate disturbance prediction vectors and prediction compensation vectors. This enables the neural network compensation results to match the multi-motor coupling error structure, avoiding the problem of insufficient prediction accuracy of a single offline network or static compensation method under complex working conditions, and improving the disturbance prediction, error compensation, and channel-differentiated adjustment capabilities. Attached Figure Description
[0073] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used in conjunction with embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings:
[0074] Figure 1 This is a flowchart of a multi-motor synchronous control method based on neural network prediction compensation proposed in this invention. Detailed Implementation
[0075] The present invention will now be described in further detail with reference to the accompanying drawings. These drawings are simplified schematic diagrams, illustrating only the basic structure of the invention, and therefore only show the components relevant to the invention.
[0076] refer to Figure 1 A multi-motor synchronous control method based on neural network prediction and compensation includes the following steps:
[0077] S1. Collect the speed signal, position feedback signal, current signal and bus voltage signal of each motor, perform unified sampling time alignment processing on the collected signals to form a set of motor state vectors, and construct a synchronization reference quantity based on the set of motor state vectors;
[0078] S2. Calculate the synchronization error vector of each motor based on the synchronization reference quantity, construct the adjacency matrix according to the topological connection relationship of the multi-motor and generate the Laplace matrix, and use the Laplace matrix to perform coupling mapping on the synchronization error vector to obtain the coupling error feature vector.
[0079] S3. Apply a fractional-order calculus operator to the coupling error feature vector to generate a memory error feature vector, and then merge the coupling error feature vector, the memory error feature vector, and the operating condition feature vector into a unified input vector.
[0080] S4. Input the unified input vector into the radial basis function neural network, calculate the hidden layer response based on the radial basis function and output the perturbation prediction vector, and output the prediction compensation vector with the same dimension as the coupling error feature vector.
[0081] S5. Construct a fractional-order adaptive synchronization control law based on the coupling error feature vector, memory error feature vector and prediction compensation vector, calculate the synchronization control vector, and map the synchronization control vector to the control increment of each motor according to the motor channel.
[0082] S6. Based on the coupling error feature vector and the motor channel control increment, construct the weight update amount and order update amount, update the radial basis function neural network weight parameters and fractional order operator order parameters respectively, and generate each motor drive control command under the updated parameter constraints and send it to the corresponding driver.
[0083] In this embodiment, S1 includes:
[0084] Under a unified sampling period, the speed signal, position feedback signal, current signal and bus voltage signal of each motor are sampled, and the sampling time corresponding to each sampling period is used as the alignment reference time of the whole system.
[0085] Based on the alignment reference time, the four types of sampled values of each motor at that time are matched. Sampled values with time deviations not exceeding the preset time threshold are written into the same sampling frame. For sampled values with time deviations exceeding the preset time threshold, the value of the corresponding signal in the previous sampling period is used to replace them, forming time-aligned motor sampled data.
[0086] The time-aligned sampling data of each motor is constructed into a motor state vector according to the motor number. The motor state vector contains the speed component, position component, current component and bus voltage component within the sampling period. All motor state vectors are combined into a set of motor state vectors.
[0087] Continuity verification is performed on the speed and position components in the motor state vector set. When the speed change in the current sampling period exceeds the preset speed change threshold, the speed value of the previous sampling period is used to replace the current speed value; when the position change exceeds the preset position change threshold, the position value of the previous sampling period is used to replace the current position value, thus obtaining the corrected motor state vector set.
[0088] The weights of each motor are calculated based on the corrected set of motor state vectors. The weight of each motor is determined by the proportion of the product of the motor's bus voltage and current amplitude in the sum of the corresponding products of all motors. The weights of each motor are then normalized so that the sum of all weights equals one.
[0089] The synchronization reference value is obtained by weighting and summing the speed values of each motor according to their corresponding weights, and then establishing a correlation between the synchronization reference value and the corresponding sampling period.
[0090] In this embodiment, S2 includes:
[0091] S21. Read the synchronization reference value and the speed value of each motor in each sampling period, calculate the synchronization error component in sequence according to the motor number, and write each synchronization error component into the same column vector in the same number order to form a synchronization error vector.
[0092] S22. Establish a topology node table and a connection edge table based on the multi-motor topology connection relationship. The topology node table records the motor number, and the connection edge table records the connected motor pairs and connection weights. The connection weights are read from the preset connection weight table according to the motor pair index, and the bidirectional connections of the same motor pair are assigned the same value.
[0093] S23. Generate an adjacency matrix based on the topology node table and the connection edge table, where the row and column indices of the adjacency matrix correspond one-to-one with the motor numbers; when there are motor pairs in the connection edge table... When, the adjacency matrix is... Line 1 Column elements and the first Line 1 The column elements are assigned the corresponding connection weights; when the connection edge table does not contain motor pairs... When the adjacency matrix is empty, the corresponding element is set to zero, and the diagonal elements of the adjacency matrix are also set to zero.
[0094] S24. Generate a degree matrix based on the adjacency matrix. The degree matrix adopts a diagonal structure. The diagonal elements are taken from the adjacency matrix. The sum of all elements in a row, with off-diagonal elements set to zero;
[0095] S25. Generate the Laplace matrix based on the degree matrix and the adjacency matrix. The Laplace matrix is determined by the following formula:
[0096] ;
[0097] in, For degree matrix, It is an adjacency matrix;
[0098] S26. Perform matrix multiplication on the synchronization error vector using the Laplace matrix to obtain the coupling error eigenvector, and write the coupling error eigenvector into the sampling frame in the order of motor number to establish a correspondence with the current sampling period.
[0099] In this embodiment, S3 includes:
[0100] S31. Read the coupling error feature vector in each sampling period, and establish an error history sequence buffer according to the sampling period order. The buffer stores the most recent errors in chronological order. The coupling error feature vector for each sampling period;
[0101] S32. Set the fractional order parameter ,in And according to the sampling period Calculate the discrete fractional integral weight coefficient sequence, where the weight coefficients are calculated according to:
[0102] ;
[0103] in, For historical sequence index, It is the Gamma function;
[0104] S33. Weight and accumulate the historical coupled error feature vectors in the error history sequence buffer according to their corresponding weight coefficients, and then combine each historical vector with its corresponding... After multiplying and summing, the memory error feature vector of the current sampling period is obtained, and this memory error feature vector is aligned with the current coupling error feature vector in the same numbering order;
[0105] S34. Read the operating condition feature vector of the current sampling period. The operating condition feature vector consists of the estimated load torque and the average bus voltage, and is arranged in a fixed dimension order.
[0106] S35. The coupling error feature vector, memory error feature vector and operating condition feature vector are vertically spliced according to a preset arrangement rule to form a unified input vector, and the unified input vector is associated with the current sampling period.
[0107] In this embodiment, S4 includes:
[0108] S41. During the controller initialization phase, set the dimension order of the input vector and the dimension order of the output vector. The output vector is arranged with the disturbance prediction vector first and the prediction compensation vector last. The component order of the prediction compensation vector is consistent with the component order of the coupling error feature vector. A central library, a width library, a weight library and an index table are established in the parameter storage area respectively.
[0109] S42. During the initialization phase, a sample buffer is established, and a unified input vector and the coupling error feature vector of the corresponding sampling period are written according to the sampling period. For each sample record, a coupling signature corresponding to the multi-motor topology is written. The coupling signature is determined by concatenating the sign sequence of each component of the coupling error feature vector with the absolute value sorting sequence.
[0110] S43. Group the sample buffer according to the coupling signature to obtain multiple sample groups; determine the set of center vectors in each sample group according to the "sequential selection - distance exclusion" method: take the unified input vector of the first sample in the group as the first center vector, and then traverse the unified input vectors of the remaining samples in the order of sampling time. When the Euclidean distance between the unified input vector and any determined center vector is greater than the preset exclusion radius, write the unified input vector into the set of center vectors until the traversal is completed.
[0111] S44. For each sample group's set of center vectors, determine the set of width parameters. The set of width parameters is generated using the "neighborhood distance to determine width" method: For any center vector, calculate its Euclidean distance to the other center vectors in the same group's set of center vectors, take the smallest distance as the neighborhood distance, and write this neighborhood distance into the width parameter corresponding to the center vector; establish an index relationship between the center vector and the width parameter according to the sample group number and write it into the center database and the width database;
[0112] S45. In the output structure of the radial basis function neural network: the hidden layer is divided into a shared radial base layer and a channel radial base layer; the shared radial base layer calls the set of center vectors of all sample groups to form a shared center subset; the channel radial base layer establishes a component subset according to the component number of the coupling error feature vector; the component subset is formed by merging the set of center vectors of the sample group corresponding to the component; and the center index range corresponding to the shared center subset and each component subset is recorded in the index table.
[0113] S46. In the output structure of the radial basis function neural network: a "coupling consistency constraint mapping" computation chain is introduced to generate the prediction compensation vector. The shared radial basis function output is first transformed into an intermediate compensation vector with the same dimension as the synchronization error vector. Then, the reference compensation vector with the same dimension as the coupling error feature vector is obtained through the coupling mapping corresponding to the Laplace matrix. The channel radial basis function output is used as the residual compensation vector and added to the reference compensation vector to obtain the prediction compensation vector. The coupling mapping adopts the form of Laplace matrix and vector multiplication.
[0114] S47. Read the uniform input vector in each sampling period, and read the center vector and width parameter corresponding to the shared center subset and each component subset according to the index table. Calculate the hidden layer response for each radial basis node. The hidden layer response is determined according to the Gaussian radial basis function.
[0115] ;
[0116] in, To unify the input vector, For the first One central vector, For the corresponding width parameter;
[0117] S48. Write the hidden layer response of the shared radial base layer into the shared response vector according to the center index range, and write the hidden layer response of each component subset into the component response vector group according to the component number, and maintain the index consistency between the shared response vector and the component response vector group within the same sampling period.
[0118] S49. Multiply the shared response vector by the perturbation prediction weight to obtain the perturbation prediction vector; multiply the shared response vector by the intermediate compensation weight to obtain the intermediate compensation vector; perform a Laplace matrix coupling mapping on the intermediate compensation vector to obtain the baseline compensation vector; multiply each component response vector by the corresponding component residual weight to obtain each component of the residual compensation vector and concatenate them according to the component number to form the residual compensation vector; add the baseline compensation vector and the residual compensation vector according to the components to obtain the prediction compensation vector; and concatenate the perturbation prediction vector and the prediction compensation vector according to the preset output order to form the network output vector.
[0119] S410. Write the network output vector into the current sampling period data frame and keep it at the same sampling period index as the unified input vector.
[0120] In this embodiment, S5 includes:
[0121] S51. Read the coupling error feature vector, memory error feature vector and prediction compensation vector in each sampling period, align the three types of vector components according to the motor number order, subtract the coupling error feature vector from the prediction compensation vector to obtain the compensated error vector, and write the compensated error vector and memory error feature vector into the same sampling period data frame.
[0122] S52. During the controller initialization phase, the eigenvector matrix is calculated based on the Laplace matrix and written into the parameter storage area. During the current sampling period, the eigenvector matrix is used to perform coordinate transformation on the compensated error vector and the memory error eigenvector respectively to obtain the modal error vector and the modal memory error vector.
[0123] S53. Construct intermediate variables for the synchronization control law within the modal domain. Linearly combine the modal error vector and the modal memory error vector according to their component correspondences to form the sliding mode variable vector. Establish a historical buffer for the sliding mode variable vector, storing the most recent data in chronological order. A vector of sliding mode variables for each sampling period;
[0124] S54. In the process of constructing the sliding mode variable vector: establish a segmented order table for the sliding mode variable vector according to the modal components, and establish a correspondence between the fractional order of each modal component and its amplitude range; read the amplitude of each modal component in the current sampling period and query the segmented order table to obtain the fractional order of the corresponding modal component.
[0125] S55. Perform fractional difference operations on the sliding mode variable vector according to the fractional order of each modal component. The fractional difference is determined according to the discrete Grünwald-Letnikov form:
[0126] ;
[0127] in For the first in the historical cache The sliding mode variable vector components for each sampling period For the fractional order of the corresponding modal components, The coefficients are fractional binomial coefficients;
[0128] S56. In the process of constructing the sliding mode variable vector: the control quantity of the modal domain is generated only for the non-uniform modal components. The control quantity of the modal component corresponding to the zero eigenvalue of the Laplace matrix is set to zero, and the modal synchronization control quantity is calculated for the remaining modal components in the same numbering order.
[0129] S57. The sliding mode variable vector and the fractional-order difference result vector are linearly combined according to the one-to-one correspondence of modal components to obtain the modal synchronization control vector. The synchronization control vector is then obtained by performing an inverse transformation based on the eigenvector matrix. The synchronization control vector is determined by the following formula:
[0130] ;
[0131] in, The eigenvector matrix, and This is the diagonal gain matrix that corresponds one-to-one with each modal component. For synchronization control vectors;
[0132] S58. Establish a control channel mapping table based on the motor number, allocate each component of the synchronous control vector to the control increment of each motor according to the mapping table, and write each motor control increment into the current sampling period data frame as the input quantity for the generation of drive control commands.
[0133] In this embodiment, S6 includes:
[0134] S61. In each sampling period, read the coupling error feature vector and the control increment of each motor, and read the shared response vector and component response vector group. Divide the coupling error feature vector into component error sequence according to component number, and divide the control increment of each motor into channel control increment sequence according to motor number.
[0135] S62. Construct residual weight update amount using component error sequence and component response vector group. Multiply and accumulate the component response vector corresponding to each component number with the component error to obtain the weight update vector corresponding to the component number. Write the weight update vector into the weight library corresponding to the weight address of the component number.
[0136] S63. Construct an intermediate compensation weight update quantity using the channel control increment sequence and the shared response vector. Multiply and sum the shared response vector and the channel control increment sequence according to the time index to obtain the shared weight update vector. Write the shared weight update vector into the weight library and the weight address corresponding to the shared center subset.
[0137] S64. Perform magnitude constraint processing on the weight update vector to limit the updated weights to between a preset upper limit and a preset lower limit, and establish an association between the updated weights and the corresponding sampling period for storage.
[0138] S65. Based on the coupling error feature vector and the motor channel control increment, the order update is calculated. First, the error amplitude index is calculated from the coupling error feature vector, and the control amplitude index is calculated from the motor channel control increment. Then, the two types of amplitude indices are constructed into an order adjustment index:
[0139] ;
[0140] in, This is the coupling error eigenvector. This is the incremental vector for motor channel control. The order adjustment index is set to a non-zero constant; the order adjustment index is compared with the segmented threshold table to determine the order update direction and order update step size, and the updated fractional order is limited to the preset order interval before being written into the order parameter area.
[0141] S66. Read the updated weight parameters and the updated fractional order parameters within the current sampling period, generate motor drive control commands based on the synchronous control vector calculation results, perform amplitude limiting and slope constraint processing on each motor drive control command, write it into the drive distribution queue according to the motor number, and distribute the commands in the drive distribution queue to the corresponding drivers.
[0142] Example:
[0143] To verify the feasibility of this invention, it was applied to a high-speed precision conveying and slitting production line with multi-motor synchronous drive. The production line includes an unwinding motor, a traction motor, a tension regulating motor, a slitting spindle motor, a winding motor, and auxiliary pressure roller motors. Each motor is connected to a corresponding driver and is uniformly scheduled by a production line controller. The production line processes flexible sheets, which sequentially pass through unwinding, traction, tension regulating, slitting, and winding stations during continuous conveying. Due to the flexibility and continuity of the sheet, speed fluctuations in one motor channel are transmitted to other motor channels via sheet tension. When the winding diameter changes, the cutter cuts into the material, or the material joint experiences voltage fluctuations via the traction roller or busbar, problems such as increased multi-motor synchronization error, instantaneous tension impact, slitting length deviation, and uneven winding end faces can easily occur. Traditional control methods typically employ master-slave speed following or fixed proportional-integral control, treating errors between motor channels independently. This makes it difficult to express the actual coupling relationship between multiple motors and to compensate in advance based on historical error trends. Therefore, under high-speed continuous operation, adjustment lag and control oscillations are prone to occur.
[0144] When implementing this invention in the production line, the controller is connected to each driver, encoder, current acquisition module, and voltage acquisition module. Each motor is equipped with a speed acquisition channel, a position feedback acquisition channel, a current acquisition channel, and a bus voltage acquisition channel. The controller triggers sampling in each channel within a unified sampling period, writing the speed, position feedback, current, and bus voltage values of the unwinding motor, traction motor, tension regulating motor, slitting spindle motor, winding motor, and auxiliary pressure roller motor within the same sampling period into the same sampling frame. For data with sampling time deviations exceeding a preset time threshold, the controller replaces it with the value of the same signal from the previous sampling period, avoiding false synchronization errors caused by inconsistent sampling times between different motor channels. The controller also performs continuity verification on the speed and position components. When the speed or position change of a motor in adjacent sampling periods exceeds a set threshold, it is identified as abnormal jump data and replaced with the corresponding value from the previous sampling period, thereby forming a set of motor state vectors that have undergone time alignment and continuity correction.
[0145] After forming the motor state vector set, the controller calculates the channel weights based on the product of the bus voltage and current amplitude of each motor, and normalizes all channel weights. The controller then sums the speed values of each motor according to their corresponding weights to obtain the synchronization reference value for the current sampling period. This synchronization reference value is not a fixed selection of the speed of a single master motor, but rather a combination of the operating states of all motors, reflecting the differences in load distribution and drive states of different motors in the current production line. Taking high-speed slitting operation as an example, when the current of the winding motor increases due to the increased winding diameter, its corresponding weight changes. The controller uses the weighted synchronization reference value to reflect the impact of the winding end on the overall line synchronization state, reducing the reference bias caused by a single master-slave reference during load migration.
[0146] The controller further calculates the synchronization error of each motor based on the synchronization reference value, and writes the synchronization errors of the unwinding motor, traction motor, tension regulating motor, slitting spindle motor, winding motor, and auxiliary pressure roller motor into the synchronization error vector according to the motor number. A multi-motor topology node table and a connection edge table are pre-established in the production line controller. The topology node table records the motor numbers, and the connection edge table records motor pairs with mechanical or tension coupling relationships. Connection edges are established between the unwinding motor and the traction motor, between the traction motor and the tension regulating motor, between the tension regulating motor and the slitting spindle motor, between the slitting spindle motor and the winding motor, and between the winding motor and the auxiliary pressure roller motor, with connection weights configured according to the coupling strength. The controller generates an adjacency matrix based on the topology structure, and then generates a degree matrix and a Laplace matrix from the adjacency matrix. After mapping the synchronization error vector through the Laplace matrix, a coupling error feature vector is obtained. This coupling error feature vector is used to describe the impact of a motor error on adjacent or associated motors, rather than simply describing the deviation between a single motor and the synchronization reference value.
[0147] During continuous production, the controller establishes a historical sequence buffer for the coupling error feature vector, storing the coupling error feature vectors of the most recent several periods in the order of the sampling period. The controller calculates discrete fractional-order weighting coefficients based on set fractional-order parameters and weights and accumulates the coupling error feature vectors in the historical buffer according to these coefficients to generate a memory error feature vector for the current sampling period. This memory error feature vector is aligned with the current coupling error feature vector in motor number order to reflect the continuous change trend of synchronization error over a period of time. For example, when the winding diameter slowly increases, the load change of the winding motor is not an instantaneous disturbance within a single sampling period, but a continuous process. The memory error feature vector can transmit this continuous error change to subsequent control calculations. The controller also reads the operating condition feature vector for the current sampling period, which consists of the estimated load torque and the average bus voltage. This operating condition feature vector is then concatenated with the coupling error feature vector and the memory error feature vector according to a fixed arrangement rule to form a unified input vector.
[0148] In the neural network prediction and compensation stage, the controller establishes a center library, width library, weight library, and index table for the radial basis function neural network. During initialization and operation, the system writes a unified input vector and its corresponding coupling error feature vector into the sample buffer, and forms a coupling signature based on the sign sequence and absolute value sorting sequence of each component of the coupling error feature vector. The controller groups the samples according to the coupling signature, and within each sample group, it determines the center vector set using sequential selection and distance exclusion methods, and determines the width parameter corresponding to the center vector according to the neighborhood distance. The hidden layers of the radial basis function neural network are divided into a shared radial base layer and a channel radial base layer. The shared radial base layer calls the center vector set of all sample groups to characterize the common disturbance characteristics of the entire production line; the channel radial base layer establishes component subsets according to the coupling error component numbers to characterize the differentiated disturbance characteristics of different motor channels such as unwinding, traction, tension adjustment, slitting, winding, and pressure rollers.
[0149] In each sampling period, the controller inputs a unified input vector into the radial basis function neural network to calculate the hidden layer responses of the shared radial base layer and each channel's radial base layer. The response of the shared radial base layer is multiplied by the disturbance prediction weights to obtain the disturbance prediction vector; the response of the shared radial base layer is multiplied by the intermediate compensation weights to obtain the intermediate compensation vector. The controller performs a Laplace matrix-based coupling mapping on the intermediate compensation vector to form a baseline compensation vector. The response of each channel's radial base layer is multiplied by the corresponding channel's residual weights to obtain the residual compensation components for each motor channel. The baseline compensation vector and the residual compensation vector are added component by component to form a prediction compensation vector with the same dimension as the coupling error feature vector. Through this structure, the compensation result output by the neural network includes both the overall disturbance trend of the production line and the differentiated compensation amount of each motor channel, while maintaining consistency between the compensation result and the multi-motor topology coupling relationship.
[0150] During the generation of synchronous control inputs, the controller reads the coupling error eigenvector, memory error eigenvector, and predicted compensation vector, and aligns the vector components according to the motor number. The controller subtracts the coupling error eigenvector from the predicted compensation vector to obtain the compensated error vector. Then, based on the eigenvector matrix corresponding to the Laplace matrix, it performs coordinate transformation on the compensated error vector and the memory error eigenvector to obtain the modal error vector and the modal memory error vector. In the modal domain, the controller linearly combines the modal error vector and the modal memory error vector to form the sliding mode variable vector and establishes a historical buffer for the sliding mode variable vector. The controller queries the piecewise order table based on the amplitude of each modal component of the sliding mode variable to determine the fractional order corresponding to different modal components, and calculates the fractional order difference result according to the discrete fractional order difference method. For consistent modal components corresponding to the zero eigenvalue of the Laplace matrix, the controller sets their control input to zero; for other non-consistent modal components, the controller generates modal synchronous control inputs and obtains the synchronous control vector through the inverse transformation of the eigenvector matrix. The synchronous control vector is then mapped to the control increments of each motor according to the motor number, which are used to correct the drive commands of the unwinding motor, traction motor, tension adjustment motor, slitting spindle motor, winding motor and auxiliary pressure roller motor respectively.
[0151] During parameter updates and drive command generation, the controller constructs weight update quantities based on the coupling error feature vector and the control increments of each motor. For channel residual weights, the controller multiplies and sums the corresponding component error with the corresponding channel radial base response to obtain the residual weight update vector for each channel; for shared intermediate compensation weights, the controller multiplies and sums the shared response vector with the control increments of each channel to obtain the shared weight update vector. The updated weights are limited to a preset upper and lower limit to prevent excessive neural network output from causing drive command impact. The controller also calculates the error amplitude index based on the coupling error feature vector and the control amplitude index based on the motor channel control increments, forming an order adjustment index from these two types of indices. After comparing the order adjustment index with the segmented threshold table, the update direction and update step size of the fractional order are determined, and the updated order parameters are limited to a preset order interval. The controller generates drive control commands for each motor based on the updated neural network weight parameters and fractional order parameters, performs amplitude limiting and slope constraint processing on the drive control commands, and finally writes them into the drive distribution queue according to the motor number and sends them to the corresponding driver.
[0152] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present invention, based on the technical solution and inventive concept of the present invention, should be covered within the scope of protection of the present invention.
Claims
1. A multi-motor synchronous control method based on neural network predictive compensation, characterized in that, include: S1. Collect the speed signal, position feedback signal, current signal and bus voltage signal of each motor to form a set of motor state vectors, and construct a synchronization reference quantity based on the set of motor state vectors; S2. Calculate the synchronization error vector of each motor based on the synchronization reference quantity, construct the adjacency matrix according to the topological connection relationship of the multi-motor and generate the Laplace matrix, and use the Laplace matrix to perform coupling mapping on the synchronization error vector to obtain the coupling error feature vector. S3. Apply a fractional-order calculus operator to the coupling error feature vector to generate a memory error feature vector, and then merge the coupling error feature vector, the memory error feature vector, and the operating condition feature vector into a unified input vector. S4. Input the unified input vector into the radial basis function neural network, calculate the hidden layer response based on the radial basis function and output the perturbation prediction vector, and output the prediction compensation vector with the same dimension as the coupling error feature vector. S5. Construct a fractional-order adaptive synchronization control law based on the coupling error feature vector, memory error feature vector and prediction compensation vector, calculate the synchronization control vector, and map the synchronization control vector to the control increment of each motor according to the motor channel. S6. Based on the coupling error feature vector and the motor channel control increment, construct the weight update amount and order update amount, update the radial basis function neural network weight parameters and fractional order operator order parameters respectively, and generate each motor drive control command under the updated parameter constraints and send it to the corresponding driver.
2. The multi-motor synchronous control method based on neural network prediction compensation according to claim 1, characterized in that, S1 includes: Under a unified sampling period, the speed signal, position feedback signal, current signal and bus voltage signal of each motor are sampled, and the sampling time corresponding to each sampling period is used as the alignment reference time of the whole system. Based on the alignment reference time, the four types of sampled values of each motor at the time are matched, and the sampled values with time deviations not exceeding the preset time threshold are written into the same sampling frame; for the sampled values with time deviations exceeding the preset time threshold, the values of the corresponding signals of the previous sampling period are used to replace them, forming time-aligned motor sampled data. The time-aligned sampling data of each motor is constructed into a motor state vector according to the motor number. The motor state vector includes the speed component, position component, current component and bus voltage component within the sampling period. All motor state vectors are combined into a motor state vector set. Continuity verification is performed on the speed and position components in the motor state vector set. When the speed change in the current sampling period exceeds the preset speed change threshold, the speed value of the previous sampling period is used to replace the current speed value; when the position change exceeds the preset position change threshold, the position value of the previous sampling period is used to replace the current position value, thus obtaining the corrected motor state vector set. The weights of each motor are calculated based on the corrected set of motor state vectors. The weight of each motor is determined by the proportion of the product of the motor bus voltage and current amplitude in the sum of the corresponding products of all motors, and the weights of each motor are normalized. The synchronization reference value is obtained by weighting and summing the speed values of each motor according to their corresponding weights, and then the synchronization reference value is associated with the corresponding sampling period.
3. The multi-motor synchronous control method based on neural network predictive compensation according to claim 1, characterized in that, S2 includes: S21. Read the synchronization reference value and the speed value of each motor in each sampling period, calculate the synchronization error component in sequence according to the motor number, and write each synchronization error component into the same column vector in the same number order to form a synchronization error vector. S22. Establish a topology node table and a connection edge table based on the multi-motor topology connection relationship. The topology node table records the motor number, and the connection edge table records the connected motor pairs and connection weights. The connection weights are read from the preset connection weight table according to the motor pair index, and the bidirectional connections of the same motor pair are assigned the same value. S23. Generate an adjacency matrix based on the topology node table and the connection edge table, where the row and column indices of the adjacency matrix correspond one-to-one with the motor numbers; when there are motor pairs in the connection edge table... When, the adjacency matrix is... Line 1 Column elements and the first Line 1 The column elements are assigned the corresponding connection weights; when the connection edge table does not contain motor pairs... When the adjacency matrix is empty, the corresponding element is set to zero, and the diagonal elements of the adjacency matrix are also set to zero. S24. Generate a degree matrix based on the adjacency matrix. The degree matrix adopts a diagonal structure. The diagonal elements are taken from the adjacency matrix. The sum of all elements in a row, with off-diagonal elements set to zero; S25. Generate the Laplace matrix based on the degree matrix and the adjacency matrix. The Laplace matrix is determined by the following formula: ,in For degree matrix, It is an adjacency matrix; S26. Perform matrix multiplication on the synchronization error vector using the Laplace matrix to obtain the coupling error eigenvector, and write the coupling error eigenvector into the sampling frame in the order of motor number to establish a correspondence with the current sampling period.
4. The multi-motor synchronous control method based on neural network prediction compensation according to claim 1, characterized in that, S3 includes: S31. Read the coupling error feature vector in each sampling period, and establish an error history sequence buffer according to the sampling period order. The buffer stores the most recent errors in chronological order. The coupling error feature vector for each sampling period; S32. Set the fractional order parameter ,in And according to the sampling period Calculate the discrete fractional integral weight coefficient sequence, where the weight coefficients are calculated according to: ; in, For historical sequence index, It is the Gamma function; S33. Weight and accumulate the historical coupled error feature vectors in the error history sequence buffer according to their corresponding weight coefficients, and then combine each historical vector with its corresponding... After multiplying and summing, the memory error feature vector of the current sampling period is obtained, and the memory error feature vector is aligned with the current coupling error feature vector in the same numbering order; S34. Read the operating condition feature vector of the current sampling period. The operating condition feature vector consists of the estimated load torque and the average bus voltage, and is arranged in a fixed dimension order. S35. The coupling error feature vector, memory error feature vector and operating condition feature vector are vertically spliced according to a preset arrangement rule to form a unified input vector, and the unified input vector is associated with the current sampling period.
5. The multi-motor synchronous control method based on neural network predictive compensation according to claim 1, characterized in that, S4 includes: S41. During the controller initialization phase, set the dimension order of the input vector and the dimension order of the output vector. The output vector is arranged with the disturbance prediction vector first and the prediction compensation vector last. The component order of the prediction compensation vector is consistent with the component order of the coupling error feature vector. A central library, a width library, a weight library and an index table are established in the parameter storage area respectively. S42. During the initialization phase, a sample buffer is established, and a unified input vector and the coupling error feature vector of the corresponding sampling period are written according to the sampling period. For each sample record, a coupling signature corresponding to the multi-motor topology is written. The coupling signature is determined by concatenating the sign sequence of each component of the coupling error feature vector with the absolute value sorting sequence. S43. Group the sample buffer according to the coupling signature to obtain multiple sample groups; determine the set of center vectors in each sample group according to the "sequential selection - distance exclusion" method: take the unified input vector of the first sample in the group as the first center vector, traverse the unified input vectors of the remaining samples in the order of sampling time, and write the unified input vector into the set of center vectors when the Euclidean distance between the unified input vector and any determined center vector is greater than the preset exclusion radius, until the traversal is completed; S44. For each sample group's set of center vectors, determine the set of width parameters. The set of width parameters is generated using the "neighborhood distance to determine width" method: For any center vector, calculate its Euclidean distance to the other center vectors in the same set of center vectors, take the smallest distance as the neighborhood distance, and write the neighborhood distance into the width parameter corresponding to the center vector; establish an index relationship between the center vector and the width parameter according to the sample group number and write it into the center library and the width library; S45. In the output structure of the radial basis function neural network: the hidden layer is divided into a shared radial base layer and a channel radial base layer; the shared radial base layer calls all sample group center vector sets to form a shared center subset; the channel radial base layer establishes component subsets according to the component numbers of the coupling error feature vectors; the component subsets are formed by merging the sample group center vector sets corresponding to the components; and the center index ranges corresponding to the shared center subset and each component subset are recorded in the index table. S46. In the output structure of the radial basis function neural network: a "coupling consistency constraint mapping" calculation chain is introduced to generate the prediction compensation vector. The shared radial basis function output is first transformed into an intermediate compensation vector with the same dimension as the synchronization error vector. Then, the reference compensation vector with the same dimension as the coupling error feature vector is obtained through the coupling mapping corresponding to the Laplacian matrix. The channel radial basis function output is added to the reference compensation vector as the residual compensation vector to obtain the prediction compensation vector. S47. Read the uniform input vector in each sampling period, and read the center vector and width parameter corresponding to the shared center subset and each component subset according to the index table. Calculate the hidden layer response for each radial basis node. The hidden layer response is determined according to the Gaussian radial basis function. ; in, To unify the input vector, For the first One central vector, For the corresponding width parameter; S48. Write the hidden layer response of the shared radial base layer into the shared response vector according to the center index range, and write the hidden layer response of each component subset into the component response vector group according to the component number, and maintain the index consistency between the shared response vector and the component response vector group within the same sampling period. S49. Multiply the shared response vector by the perturbation prediction weight to obtain the perturbation prediction vector; multiply the shared response vector by the intermediate compensation weight to obtain the intermediate compensation vector; perform a Laplace matrix coupling mapping on the intermediate compensation vector to obtain the baseline compensation vector; multiply each component response vector by the corresponding component residual weight to obtain each component of the residual compensation vector and concatenate them according to the component number to form the residual compensation vector; add the baseline compensation vector and the residual compensation vector according to the components to obtain the prediction compensation vector; and concatenate the perturbation prediction vector and the prediction compensation vector according to the preset output order to form the network output vector. S410. Write the network output vector into the current sampling period data frame and keep it at the same sampling period index as the unified input vector.
6. The multi-motor synchronous control method based on neural network predictive compensation according to claim 1, characterized in that, S5 includes: S51. Read the coupling error feature vector, memory error feature vector and prediction compensation vector in each sampling period, align the three types of vector components according to the motor number order, subtract the coupling error feature vector from the prediction compensation vector to obtain the compensated error vector, and write the compensated error vector and memory error feature vector into the same sampling period data frame. S52. During the controller initialization phase, the eigenvector matrix is calculated based on the Laplace matrix and written into the parameter storage area. During the current sampling period, the eigenvector matrix is used to perform coordinate transformation on the compensated error vector and the memory error eigenvector respectively to obtain the modal error vector and the modal memory error vector. S53. Construct intermediate variables for the synchronization control law within the modal domain. Linearly combine the modal error vector and the modal memory error vector according to their component correspondences to form the sliding mode variable vector. Establish a historical buffer for the sliding mode variable vector, storing the most recent data in chronological order. A vector of sliding mode variables for each sampling period; S54. In the process of constructing the sliding mode variable vector: establish a segmented order table for the sliding mode variable vector according to the modal components, and establish a correspondence between the fractional order of each modal component and its amplitude range; read the amplitude of each modal component in the current sampling period and query the segmented order table to obtain the fractional order of the corresponding modal component. S55. Perform fractional difference operations on the sliding mode variable vector according to the fractional order of each modal component. The fractional difference is determined according to the discrete Grünwald-Letnikov form: ; in, For the first in the historical cache The sliding mode variable vector components for each sampling period For the fractional order of the corresponding modal components, The coefficients are fractional binomial coefficients; S56. In the process of constructing the sliding mode variable vector: the control quantity of the modal domain is generated only for the non-uniform modal components. The control quantity of the modal component corresponding to the zero eigenvalue of the Laplace matrix is set to zero, and the modal synchronization control quantity is calculated for the remaining modal components in the same numbering order. S57. The sliding mode variable vector and the fractional-order difference result vector are linearly combined according to the one-to-one correspondence of modal components to obtain the modal synchronization control vector. The synchronization control vector is then obtained by performing an inverse transformation based on the eigenvector matrix. The synchronization control vector is determined by the following formula: ; in, The eigenvector matrix, and This is the diagonal gain matrix that corresponds one-to-one with each modal component. For synchronization control vectors; S58. Establish a control channel mapping table based on the motor number, allocate each component of the synchronous control vector to the control increment of each motor according to the mapping table, and write each motor control increment into the current sampling period data frame as the input quantity for the generation of drive control commands.
7. The multi-motor synchronous control method based on neural network predictive compensation according to claim 1, characterized in that, S6 includes: S61. In each sampling period, read the coupling error feature vector and the control increment of each motor, and read the shared response vector and component response vector group. Divide the coupling error feature vector into component error sequence according to component number, and divide the control increment of each motor into channel control increment sequence according to motor number. S62. Construct a residual weight update amount using the component error sequence and the component response vector group. Multiply and accumulate the component response vector corresponding to each component number with the component error to obtain the weight update vector corresponding to the component number. Write the weight update vector into the weight library at the weight address corresponding to the component number. S63. Construct an intermediate compensation weight update quantity using the channel control increment sequence and the shared response vector. Multiply and sum the shared response vector and the channel control increment sequence according to the time index to obtain the shared weight update vector. Write the shared weight update vector into the weight library and the weight address corresponding to the shared center subset. S64. Perform magnitude constraint processing on the weight update vector to limit the updated weights to between a preset upper limit and a preset lower limit, and establish an association between the updated weights and the corresponding sampling period for storage. S65. Based on the coupling error feature vector and the motor channel control increment, the order update is calculated. First, the error amplitude index is calculated from the coupling error feature vector, and the control amplitude index is calculated from the motor channel control increment. Then, the two types of amplitude indices are constructed into an order adjustment index: ; in, This is the coupling error eigenvector. This is the incremental vector for motor channel control. The order adjustment index is set to a non-zero constant; the order adjustment index is compared with the segmented threshold table to determine the order update direction and order update step size, and the updated fractional order is limited to the preset order interval before being written into the order parameter area. S66. Read the updated weight parameters and the updated fractional order parameters within the current sampling period, generate motor drive control commands based on the synchronous control vector calculation results, perform amplitude limiting and slope constraint processing on each motor drive control command, write it into the drive distribution queue according to the motor number, and distribute the commands in the drive distribution queue to the corresponding drivers.