Method for eliminating motor speed fluctuation and related product

By constructing a speed prediction model using a recurrent neural network model, the problem of speed fluctuation caused by component aging in servo motors was solved, thereby improving speed accuracy and extending motor life.

CN116111911BActive Publication Date: 2026-02-10BEIJING INST OF RADIO MEASUREMENT
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310118220.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-10
Publication Date
2026-02-10
Estimated Expiration
2043-02-10

AI Technical Summary

Technical Problem

After a period of use, the servo motor's speed fluctuates periodically due to component aging. Existing compensation methods cannot accurately compensate for this, affecting the speed accuracy.

Method used

A recurrent neural network model is used to construct a speed prediction model. By calculating the mean square error between the speed and the input speed command, an LSTM model is trained, and the motor speed is adjusted to compensate for fluctuations.

Benefits of technology

It achieves precise compensation for motor speed fluctuations, improves speed accuracy, and extends the service life of the motor.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116111911B_ABST
    Figure CN116111911B_ABST
Patent Text Reader

Abstract

The motor speed fluctuation elimination method and the related product are disclosed, wherein the steps of the method comprise: calculating the mean square error between the motor speed and the input speed instruction according to the collected motor speed data; constructing a motor speed prediction model when the mean square error is greater than a predetermined threshold; and adjusting the motor speed based on the motor speed prediction model. The scheme can predict and compensate the fluctuation of the motor speed according to the relationship between the servo motor speed and the angle, reduce the motor speed fluctuation caused by the aging of components, improve the speed accuracy of the motor, and prolong the service life of the motor.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This solution relates to the field of computer processing technology. More specifically, it relates to a method for eliminating periodic fluctuations in the speed of a servo motor based on a recurrent neural network model. Background Technology

[0002] The latest developments in precision manufacturing and nanoscale scientific research have created a huge demand for high-precision positioning systems with long stroke ranges. In recent years, the continuous improvement in the performance of ultra-precision positioning systems has made it imperative to resolve the contradiction between the accuracy and speed of actuators and their long stroke range.

[0003] After a period of use, servo motors may experience periodic fluctuations in speed due to the aging of their internal components, depending on the mechanical angle. Without speed compensation, the motor will not meet the usage requirements. This phenomenon is particularly noticeable on precision measurement and control turntables where high speed accuracy is required.

[0004] Motor speed fluctuations caused by component aging can be considered as the motor speed loop being affected by external disturbances. All practical control systems are susceptible to external disturbances. If these disturbances can be measured, they can be used to generate control inputs to eliminate their impact on the output. In control systems with external disturbances, the controller should be divided into two parts: one to counteract the disturbance, and the other to implement tracking control, ensuring the system state changes according to a given pattern. Feedforward control based on the external disturbance signal is called disturbance control. Based on the invariance principle, it is theoretically possible to completely eliminate the influence of the main disturbance on the system output. A feedback-feedforward control system, composed of open-loop control based on input or disturbance signals and closed-loop control based on deviation, is a common control method for eliminating disturbance effects. The conventional compensation method involves adding speed feedforward compensation to the speed loop based on the motor's current speed. However, due to lag in speed measurement, this method cannot accurately compensate for disturbances and cannot adjust the compensation value according to the motor's characteristics. Summary of the Invention

[0005] The purpose of this invention is to provide a method for eliminating motor speed fluctuations and related products, so as to solve the problem of motor speed fluctuations caused by component aging.

[0006] To achieve the above objectives, the following technical solution is adopted:

[0007] Firstly, this solution provides a method for eliminating motor speed fluctuations, the steps of which include:

[0008] Based on the collected motor speed data, calculate the mean square error between the speed and the input speed command;

[0009] If the mean square error is greater than a predetermined threshold, a speed prediction model is constructed.

[0010] The motor speed is adjusted based on the speed prediction model.

[0011] In a preferred embodiment, the step of calculating the mean square error between the motor speed and the input speed command based on the collected motor speed data includes:

[0012] Speed ​​commands are input to the servo motor using a pre-built speed closed-loop controller without feedforward compensation;

[0013] Record the input speed command and the actual motor speed.

[0014] In a preferred embodiment, the step of constructing a speed prediction model when the mean square error is greater than a predetermined threshold includes:

[0015] Input multiple sets of constant speed commands sequentially;

[0016] Make the servo motor rotate 10 revolutions according to each speed command;

[0017] The angle data of the servo motor is collected under each speed command, and a total of N+1 angle values ​​are collected, from which N speed values ​​are calculated.

[0018] In a preferred embodiment, the step of constructing a speed prediction model when the mean square error is greater than a predetermined threshold includes:

[0019] The original rotational speed data is normalized to form a training set.

[0020] In a preferred embodiment, the step of constructing a speed prediction model when the mean square error is greater than a predetermined threshold includes:

[0021] Based on the LSTM model, a rotational speed prediction model is obtained through multiple training iterations using the training set.

[0022] In a preferred embodiment, the step of adjusting the motor speed based on the speed prediction model includes:

[0023] Input multiple angle data into the speed prediction model to obtain the model's output;

[0024] Using the model's output, calculate the rotational speed without feedforward and determine the control input for feedforward control.

[0025] In a preferred embodiment, the step of adjusting the motor speed based on the speed prediction model includes:

[0026] By adding a feedforward control quantity to the output of the speed closed loop, the motor speed can be adjusted.

[0027] Secondly, this solution provides a motor speed fluctuation elimination system, which includes:

[0028] The calculation module calculates the mean square error between the motor speed and the input speed command based on the collected motor speed data.

[0029] The module constructs a speed prediction model when the mean square error is greater than a predetermined threshold.

[0030] The adjustment module adjusts the motor speed based on a speed prediction model.

[0031] Thirdly, this solution provides a computer storage medium, characterized in that it stores a computer program thereon, which, when executed by a processor, implements the method described in any of the preceding claims.

[0032] Fourthly, this solution provides a motor speed fluctuation elimination device, including: a processor; and a memory for storing executable instructions of the processor;

[0033] The processor is configured to execute the method described in any of the preceding methods by executing the executable instructions.

[0034] The beneficial effects of this invention are as follows:

[0035] The solution described in this application can predict and compensate for fluctuations in motor speed based on the relationship between servo motor speed and angle, reduce motor speed fluctuations caused by component aging, improve motor speed accuracy, and extend motor life. Attached Figure Description

[0036] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0037] Figure 1 A schematic diagram illustrating an example of the motor speed fluctuation elimination method described in this solution;

[0038] Figure 2 A schematic diagram of the speed closed-loop controller described in this solution is shown;

[0039] Figure 3 A schematic diagram illustrating another example of the motor speed fluctuation elimination method described in this scheme;

[0040] Figure 4 A schematic diagram illustrating an example of the motor speed fluctuation elimination system described in this solution is shown.

[0041] Figure 5 This diagram illustrates an example of the motor speed fluctuation elimination device described in this solution. Detailed Implementation

[0042] To make the present invention, its technical solutions, and advantages clearer, the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not an exhaustive list of all embodiments. It should be noted that, unless otherwise specified, the embodiments and features in the embodiments of this application can be combined with each other.

[0043] Analysis and research of existing technologies have shown that motor speed fluctuations caused by component aging can be considered as the motor speed circuit being affected by external disturbances. All practical control systems are susceptible to external disturbances. The relationship between speed fluctuations caused by component aging and the motor's mechanical angle exhibits a periodic variation. Sequence data prediction technology can be used to predict motor speed fluctuations, thereby achieving precise speed compensation.

[0044] Therefore, this solution aims to provide a method for eliminating motor speed fluctuations. This method first trains and corrects the speed prediction model, and then compensates for speed fluctuations based on the speed prediction model.

[0045] Recurrent Neural Networks (RNNs) are a type of recursive neural network that takes sequential data as input, recursively operates in the direction of sequence evolution, and all nodes (recurrent units) are connected in a chain-like manner. Bidirectional RNNs (Bi-RNNs) and Long Short-Term Memory (LSTM) networks are common RNNs. Gated Recurrent Unit Networks (GRUs) are another RNN gating architecture that has gained attention after LSTMs. RNNs possess memory, parameter sharing, and Turing completeness, thus offering advantages in learning the nonlinear features of sequences. RNNs have applications in natural language processing, such as speech recognition, language modeling, and machine translation, and are also used for various time series forecasting applications. Based on these advantages, this scheme will utilize RNNs to construct a speed prediction model.

[0046] The method for eliminating motor speed fluctuations proposed in this solution will be described in detail below with reference to the accompanying drawings. Figure 1 As shown, specifically, the method includes:

[0047] Step S1: Calculate the mean square error between the motor speed and the input speed command based on the collected motor speed data;

[0048] Step S2: If the mean square error is greater than a predetermined threshold, construct a speed prediction model;

[0049] Step S3: Adjust the motor speed based on the speed prediction model.

[0050] like Figure 2 As shown, in order to ensure the stability of the given command, this solution can pre-determine the motor's condition and involve a speed closed-loop controller without feedforward compensation, so that the servo motor can rotate according to the given speed command.

[0051] In step S2 of this scheme, the process of training and correcting the speed prediction model may include:

[0052] 1. Collect historical data on the desired speed, actual angle, and actual speed of the servo motor to establish the angle-speed relationship. As the angle changes periodically, the speed fluctuations also exhibit periodicity.

[0053] 2. When the rotational speed fluctuation exceeds the set threshold, the recurrent neural network model is retrained using historical data.

[0054] In step S3 of this scheme, the process of compensating for speed fluctuations using a speed prediction model may include:

[0055] 1. Input the motor angle data into the recurrent neural network model to obtain the predicted speed;

[0056] 2. Add feedforward compensation to the output of the motor speed loop controller based on the predicted speed value.

[0057] The following section will further explain this solution using the example of eliminating motor speed fluctuations.

[0058] like Figure 3 As shown, the speed prediction model is first trained and corrected, and then speed fluctuations are compensated based on the speed prediction model. Specifically,

[0059] Step 1: Based on the motor conditions, pre-design a speed closed-loop controller without feedforward compensation so that the servo motor can rotate according to the given speed command.

[0060] Step 2: Record the data of the input speed command and the actual rotational speed. Calculate the mean square error between the rotational speed and the input command. If the mean square error is greater than the threshold (10%*ω), proceed to Step 3 to retrain the prediction model; otherwise, proceed to Step 6 (i.e., directly use the mean square error as the control variable and add it to the feedforward).

[0061] Step 3: Using the speed closed-loop controller designed in Step 1 without feedforward compensation, input constant speed commands ω (±5° / s, ±10° / s, ±15° / s, ±20° / s, ±25° / s, ±30° / s) sequentially. The speed is positive for clockwise rotation and negative for counter-clockwise rotation. Friction is the main disturbance factor at low speeds, so low-speed data is not collected. Make the servo motor rotate 10 revolutions according to each speed command, and collect the angle data of the servo motor under each speed command (T is the sampling time period when the data sampling frequency is 100Hz). A total of N+1 angle values ​​are collected. N rotational speed values ​​were calculated. .

[0062]

[0063] Step 4: Normalize the raw rotational speed data. For all x... i The normalized data is ,in ω i For x i The corresponding input speed command. Each time, a continuous angle sequence of length 2000 is extracted. As a training data point, the corresponding expected output is: Corresponding normalized speed The complete training set is The corresponding tag is .

[0064] Step 5: Train the prediction model. Build a 2-layer LSTM model with an input data size of 2000, an output layer size of 1, and a hidden layer size of 32. Train the LSTM model using the training set from Step 4.

[0065] Step 6: Predict the rotational speed without feedforward. This involves processing 2000 consecutive angle data points. ( Input the most recently acquired angle into the LSTM model to obtain the model's output. Calculate the rotational speed without feedforward. : , where ω0 is the input speed command.

[0066] Step 7: Add a feedforward control variable f to the output of the speed closed loop. ,in .

[0067] This solution can predict and compensate for motor speed fluctuations based on the relationship between servo motor speed and angle, reducing motor speed fluctuations caused by component aging, thereby improving motor speed accuracy and extending motor life.

[0068] Based on the above-described method for eliminating motor speed fluctuations, this solution further provides a motor speed fluctuation elimination system 201. For example... Figure 4 As shown, the system includes a calculation module 202, a construction module 203, and an adjustment module 204. The calculation module 202 calculates the mean square error between the motor speed and the input speed command based on the collected motor speed data; the construction module 203 constructs a speed prediction model when the mean square error is greater than a predetermined threshold; and the adjustment module 204 adjusts the motor speed based on the speed prediction model.

[0069] Based on the above-described method for eliminating motor speed fluctuations, this solution further provides a computer-readable storage medium. This computer-readable storage medium is used to implement the program product of the above-described logistics sorting and scheduling method. It can be a portable compact disc read-only memory (CD-ROM) and include program code, and can run on a device such as a personal computer. However, the program product of this solution is not limited to this. In this document, the readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0070] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0071] Computer-readable storage media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0072] Program code contained on a computer-readable storage medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.

[0073] Program code for performing the operations of this solution can be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java and C++, and conventional procedural programming languages ​​such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing devices can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or they can be connected to external computing devices (e.g., via the Internet using an Internet service provider).

[0074] Based on the above-described method for eliminating motor speed fluctuations, this solution further provides an electronic device. For example... Figure 5 The electronic device shown is merely an example and should not impose any limitations on the functionality and scope of use of this embodiment.

[0075] like Figure 5 As shown, the motor speed fluctuation elimination device 301 is presented in the form of a general-purpose computing device. The components of the electronic device 301 may include, but are not limited to: at least one storage unit 302, at least one processing unit 303, a display unit 304, and a bus 305 for connecting different system components.

[0076] The storage unit 302 stores program code that can be executed by the processing unit 303, causing the processing unit 303 to perform the steps of the various exemplary embodiments described in the above-described method for eliminating motor speed fluctuations. For example, the processing unit 303 can perform actions such as... Figure 1 The steps are shown in the figure.

[0077] Storage unit 302 may include volatile storage units, such as random access memory (RAM) and / or cache storage units, and may further include read-only memory (ROM).

[0078] Storage unit 302 may also include programs / utilities with program modules, such program modules including but not limited to: operating system, one or more application programs, other program modules and program data, each or some combination of these examples may include an implementation of a network environment.

[0079] Bus 305 may include a data bus, an address bus, and a control bus.

[0080] Electronic device 301 can also communicate with one or more external devices 307 (e.g., keyboard, pointing device, Bluetooth device, etc.) via input / output (I / O) interface 306. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 301, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0081] Obviously, the above embodiments of the present invention are merely examples for clearly illustrating the present invention, and are not intended to limit the implementation of the present invention. For those skilled in the art, other variations or modifications can be made based on the above description. It is impossible to exhaustively list all the implementation methods here. All obvious variations or modifications derived from the technical solutions of the present invention are still within the protection scope of the present invention.

Claims

1. A method for eliminating motor speed fluctuations, characterized in that, The steps of this method include: Based on the collected motor speed data, calculate the mean square error between the speed and the input speed command; If the mean square error is greater than a predetermined threshold, a speed prediction model is constructed. Adjust the motor speed based on the speed prediction model; The steps for adjusting the motor speed based on the speed prediction model include: Input multiple angle data into the speed prediction model to obtain the model's output; the model's output is the normalized speed. Using the model's output, calculate the rotational speed without feedforward and determine the control input for feedforward control. The angle data is a position angle; By adding a feedforward control quantity to the output of the speed closed loop, the motor speed can be adjusted.

2. The method for eliminating motor speed fluctuations according to claim 1, characterized in that, The preceding step of calculating the mean square error between the motor speed and the input speed command based on the collected motor speed data includes: Speed ​​commands are input to the servo motor using a pre-built speed closed-loop controller without feedforward compensation; Record the input speed command and the actual motor speed.

3. The method for eliminating motor speed fluctuations according to claim 1 or 2, characterized in that, The step of constructing the speed prediction model when the mean square error is greater than a predetermined threshold includes: Input multiple sets of constant speed commands sequentially; Make the servo motor rotate 10 revolutions according to each speed command; The servo motor angle data is collected for each speed command, and a total of N+1 angle values ​​are collected. N speed values ​​are then calculated. The angle data is the position angle.

4. The method for eliminating motor speed fluctuations according to claim 3, characterized in that, The step of constructing the speed prediction model when the mean square error is greater than a predetermined threshold includes: The original rotational speed data is normalized to form a training set.

5. The method for eliminating motor speed fluctuations according to claim 4, characterized in that, The step of constructing the speed prediction model when the mean square error is greater than a predetermined threshold includes: Based on the LSTM model, a rotational speed prediction model is obtained through multiple training iterations using the training set.

6. A system for eliminating motor speed fluctuations, characterized in that, The system includes: The calculation module calculates the mean square error between the motor speed and the input speed command based on the collected motor speed data. The module constructs a speed prediction model when the mean square error is greater than a predetermined threshold. The adjustment module adjusts the motor speed based on a speed prediction model. The steps for adjusting the motor speed based on the speed prediction model include: Input multiple angle data into the speed prediction model to obtain the model's output; the model's output is the normalized speed. Using the model's output, calculate the rotational speed without feedforward and determine the control input for feedforward control. The angle data is a position angle; By adding a feedforward control quantity to the output of the speed closed loop, the motor speed can be adjusted.

7. A computer storage medium, characterized in that, It stores a computer program that, when executed by a processor, implements the method as described in any one of claims 1-5.

8. A device for eliminating motor speed fluctuations, characterized in that, include: processor; and memory for storing the executable instructions of the processor; The processor is configured to perform the method as described in any one of claims 1-5 by executing the executable instructions.

Citation Information

Patent Citations

  • Motor rotation speed control method

    CN103368474A

  • Rotor revolving speed and displacement soft measurement method of bearingless permanent magnet synchronous motor

    CN110504878A