Motor adaptive position feedforward compensation method with overshoot control

By introducing overshoot control and delay control into the fading memory recursive least squares method, and optimizing the adaptive feedforward gain, the problems of fast response and small overshoot in the synchronization region are solved, and high-precision tracking effect of the motor is achieved in high-speed engineering applications.

CN115800848BActive Publication Date: 2026-04-21WUXI XINJIE ELECTRICAL
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
WUXI XINJIE ELECTRICAL
Filing Date
2022-11-23
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

The existing fading memory recursive least squares method cannot meet the process requirements of fast response and small overshoot in the synchronization zone of high-speed engineering applications in feedforward compensation, thus limiting its application in electronic cam technology.

Method used

By optimizing the fading memory recursive least squares method, introducing overshoot control and delay control logic, and updating the adaptive speed and acceleration feedforward gain in real time, combined with the dynamic forgetting factor function, adaptive position feedforward compensation is achieved, improving the tracking accuracy of the slave axis and ensuring fast response and small overshoot.

Benefits of technology

In high-speed industrial applications, it shortens the stabilization time of the synchronization zone, reduces motor overshoot, meets the process requirements of improved accuracy and rapid response, and expands the application scenarios of adaptive algorithms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115800848B_ABST
    Figure CN115800848B_ABST
Patent Text Reader

Abstract

This invention relates to the field of servo control technology, specifically a motor adaptive position feedforward compensation method with overshoot control. The method includes: acquiring information on the given position, given speed, given acceleration, and feedback position of the slave axis via a PLC host computer; calculating the tracking error and establishing a dynamic forgetting factor function based on the tracking error; determining whether the motor is in a constant speed phase; judging the axis state; adjusting the adaptive feedforward gain during acceleration / deceleration; implementing overshoot control during acceleration / deceleration; and calculating the position feedforward compensation value. By reading the given position, given speed, given acceleration, and actual feedback position of the slave axis, the adaptive speed feedforward gain and adaptive acceleration feedforward gain are updated and adjusted in real time using an adaptive position feedforward compensation algorithm with overshoot control. This improves the tracking accuracy of the slave axis while ensuring the process requirements of fast motor response and small overshoot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of servo control technology, and in particular to a method for adaptive position feedforward compensation of a motor with overshoot control. Background Technology

[0002] The fading-memory recursive least squares method is developed based on the recursive least squares method. By introducing a forgetting factor, it overcomes the data saturation problem of the recursive least squares method, enabling the algorithm to have a dynamic correction effect in time-varying systems with increasing data volume. Due to its computational convenience and high accuracy, the fading-memory recursive least squares method is widely used in offline and online parameter estimation of nonlinear systems. Servo control systems can meet most application scenarios, but in situations requiring high accuracy, open-loop velocity and acceleration feedforward algorithms are often added to achieve stable, reliable, and high-precision target control. However, due to changes in mechanical characteristics and online fine-tuning of servo parameters after long-term operation, the feedforward control parameters usually need to be matched to satisfy the dynamic adjustment characteristics of the time-varying system, forming an adaptive feedforward compensation effect.

[0003] In high-speed engineering applications, electronic cam technology is used to achieve the expected motion patterns. Slave-axis tracking control generally requires the motor to maintain a certain tracking accuracy during acceleration / deceleration, with fast response in the synchronization zone, small overshoot, and high precision. Feedforward control, by incorporating the fading memory recursive least squares method, achieves adaptive feedforward compensation. However, electronic cams often use cubic or quintic curves to plan the acceleration / deceleration process. The recursive algorithm updates and adjusts the adaptive speed feedforward gain and adaptive acceleration feedforward gain in real time based on the tracking error for compensation. Although the parameter adjustment logic is correct at the algorithmic level, it cannot meet the process requirements of fast response in the synchronization zone and small overshoot, thus limiting the direct application of the fading memory recursive least squares method in feedforward compensation. Summary of the Invention

[0004] The purpose of this invention is to overcome the problems of the prior art and provide a motor adaptive position feedforward compensation method with overshoot control. By optimizing the fading memory recursive least squares method, adaptive position feedforward compensation is performed under the premise of considering overshoot control, improving the tracking accuracy of the driven shaft while ensuring the process requirements of fast response in the synchronization zone and small overshoot. This effectively solves the problem that electronic cams often use cubic or quintic curves to plan acceleration / deceleration, which cannot meet the process requirements of fast response in the synchronization zone and small overshoot, thus limiting the direct application of the fading memory recursive least squares method in feedforward compensation.

[0005] The above objectives are achieved through the following technical solutions:

[0006] An adaptive position feedforward compensation method for a motor with overshoot control includes the following steps:

[0007] Step (1) Obtain slave axis information: Obtain the slave axis given position, slave axis given speed, slave axis given acceleration, and slave axis feedback position information through the PLC host computer;

[0008] Step (2) Establish the dynamic forgetting factor function. Based on the information obtained in step (1), calculate the tracking error and establish the dynamic forgetting factor function based on the tracking error.

[0009] Step (3) Determine whether the speed is constant;

[0010] If it is determined to be a uniform speed stage, then the output is sent to step (7) after step (4);

[0011] If it is determined to be an acceleration / deceleration phase, then continue with steps (5) to (7);

[0012] Step (4) Determine whether it is in the delay control range and adjust the adaptive feedforward gain. The shaft state is judged according to the given speed of the slave shaft obtained in step (1).

[0013] If the current axis state is determined to be within the delay control range, the adaptive speed feedforward gain and the adaptive acceleration feedforward gain will remain unchanged from the previous cycle.

[0014] If the shaft state has exited the delay control range, the adaptive velocity feedforward gain and the adaptive acceleration feedforward gain are updated and adjusted according to the fading memory recursive least squares method.

[0015] Step (5) Adjust the adaptive feedforward gain to force the dynamic forgetting factor function value to be changed to a large value that is no more than 1 and close to 1. Re-establish the optimization target with this value and update the prediction adjustment of the adaptive velocity feedforward gain; the update prediction adjustment process for the adaptive acceleration feedforward gain remains unchanged.

[0016] Step (6) Overshoot control uses the number of speed segments of the overshoot control flag as the judgment boundary, and assigns the overshoot control flag to go through three stages, and makes an overshoot control judgment based on the number of speed segments of the overshoot control flag in the third stage.

[0017] If position overshoot is determined, the algorithm performs overshoot control, and the output of the adaptive algorithm is determined according to the overshoot control logic; if no position overshoot is determined, the algorithm does not perform overshoot control, and the output of the adaptive algorithm remains unchanged.

[0018] Step (7) Calculate the position feedforward compensation value.

[0019] Furthermore, in step (2), a dynamic forgetting factor function is established based on the tracking error, and the formula is as follows:

[0020] λ(t)=λ0+(1-λ0)exp(-|ρ|ex (t))

[0021] 0≤λ0≤1,λ0≤λ≤1

[0022] In the formula, λ(t) is the time-varying forgetting factor; ex(t) is the position tracking error; λ0 is the stable lower limit of the forgetting factor; and ρ is the approach rate of the time-varying forgetting factor.

[0023] The tracking error e x The formula for calculating (t) is as follows:

[0024] e x (t)=CompRx(t)-CompAx(t)

[0025] In the formula, CompRx represents the given position of the axis, and CompAx represents the feedback position of the axis.

[0026] Furthermore, the adjustment process of the gradual memory recursive least squares method described in step (4) is as follows:

[0027] Step (4-1) Calculate the tracking error e under the current environment based on the information in step (1). x (t), calculate the current forgetting factor function value λ based on the dynamic forgetting factor function in step (2);

[0028] Step (4-2) calculates the current time-varying adaptive gain matrix Γ(t) based on the dynamic forgetting factor function value λ(t), the real-time given velocity CompRv from the slave axis, the real-time given acceleration CompRa from the slave axis, and the covariance P(t-1) of the previous period system. The formula is as follows:

[0029] X T (t)=[CompRv(t)CompRa(t)] T

[0030] Γ(t)=P(t-1)X T [λ(t)+X T (t)P(t-1)X T ] -1

[0031] Step (4-3) is based on the adaptive feedforward gain predicted in the previous cycle. Tracking error e x The adaptive feedforward gain for the current period is calculated and updated using data from four sources: Γ(t), the time-varying adaptive gain matrix Γ(t), and Γ(t). Adaptive feedforward gain includes two categories: velocity and acceleration. The formula is as follows:

[0032]

[0033] Step (4-4) Adaptive Feedforward Gain After updating and adjusting the forecast, the current system covariance P(t) is calculated based on the current time-varying adaptive gain matrix Γ(t), the previous period system covariance P(t-1), and the dynamic forgetting factor function value λ(t), as shown in the following formula:

[0034]

[0035] Step (4-5) Obtain the estimated adaptive feedforward gain matrix The component values, namely the adaptive velocity feedforward gain AdapFFv(t) and the adaptive acceleration feedforward gain AdapFFa(t), are used to calculate the adaptive feedforward output value AdapOffset, as follows:

[0036] AdapOffset(t)=AdapFFv(t)·CompRv(t)+AdapFFa(t)·CompRa(t)

[0037] In the formula: the adaptive velocity feedforward gain AdapFFv(t) and the adaptive acceleration feedforward gain AdapFFa(t) are multiplied by the given velocity CompRv(t) and the given acceleration CompRa(t) of the slave axis, respectively, to calculate the final adaptive feedforward value.

[0038] Furthermore, in the next cycle of step (4-6), steps (4-1) to (4-5) are repeated. After accumulating multiple cycles, the adaptive velocity feedforward gain AdapFFv and the adaptive acceleration feedforward gain AdapFFa will eventually tend to a stable value and fluctuate up and down. That is, this value is the true value of the velocity feedforward and acceleration feedforward gains. When the machine is turned on again, steps (4-1) to (4-5) are repeated based on this value to achieve the purpose of continuously adapting to environmental changes.

[0039] Further, the calculation of the position feedforward compensation value in step (7) specifically involves:

[0040] Offset(t)=ConstFFv·CompRv(t)+ConstFFa·CompRa(t)+AdapOffset(t)

[0041] In the formula: Offset(t) represents the total value of position feedforward compensation; ConstFF_ represents the single-axis precision compensation feedforward gain, including the single-axis precision compensation speed feedforward gain ConstFFv and the single-axis precision compensation speed feedforward gain ConstFFa.

[0042] Beneficial effects

[0043] The present invention provides a motor adaptive position feedforward compensation method with overshoot control. By reading the given position, given speed, given acceleration of the slave shaft and feeding back the actual position, the adaptive speed feedforward gain and the adaptive acceleration feedforward gain are updated and adjusted in real time by an adaptive position feedforward compensation algorithm with overshoot control. This achieves the purpose of improving the tracking accuracy of the slave shaft and ensuring the process requirements of fast motor response and small overshoot.

[0044] Furthermore, this method is mainly applied to accuracy improvement applications. Based on the gradual disappearance memory recursive least squares method, it achieves real-time online dynamic adjustment of adaptive feedforward gain according to the position tracking error. The position tracking error can be gradually adjusted to fluctuate around 0, meeting the accuracy requirements of time-varying systems, including changes in mechanical characteristics after long-term operation and online fine-tuning of servo parameters. It has significant advantages over fixed-value position feedforward compensation, and the adjustment process is more intelligent.

[0045] At the algorithm application level, in order to further shorten the stabilization time of the synchronization zone and reduce the actual overshoot of the motor, the adaptive algorithm integrates overshoot control and delay control logic on the basis of the gradually diminishing memory recursive least squares method, which meets the process requirements of high-speed industrial application scenarios and expands the application scenarios of the adaptive algorithm. Attached Figure Description

[0046] Figure 1 This is a schematic diagram of a motor adaptive position feedforward compensation method with overshoot control according to the present invention.

[0047] Figure 2 This is a logic flowchart of a motor adaptive position feedforward compensation method with overshoot control as described in this invention.

[0048] Figure 3 This is an update flowchart of the adaptive position feedforward compensation method for a motor with overshoot control as described in this invention.

[0049] Figure 4 This is a schematic diagram of the overshoot control determination logic of the adaptive position feedforward compensation method for a motor with overshoot control described in this invention.

[0050] Figure 5 The relationship curve between key points of the CAM cam and the master-slave axis in the adaptive position feedforward compensation method for a motor with overshoot control described in this invention;

[0051] Figure 6 This is a schematic diagram of the operation of the XDH series PLC axis information register in the adaptive position feedforward compensation method for a motor with overshoot control described in this invention.

[0052] Figure 7 This is an experimental structural diagram of a motor adaptive position feedforward compensation method with overshoot control as described in this invention. Detailed Implementation

[0053] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments. The described embodiments are merely some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0054] This method reads the given position, given velocity, given acceleration from the slave axis and feeds back the actual position. Then, it uses an adaptive position feedforward compensation algorithm with overshoot control to update and adjust the adaptive velocity feedforward gain and adaptive acceleration feedforward gain in real time. The compensation scheme is as follows: Figure 1 As shown, single-axis precision compensation refers to position feedforward compensation using a fixed-value method; the logic flowchart of the adaptive position feedforward compensation algorithm with overshoot control is shown below. Figure 2 As shown.

[0055] like Figure 1 and 2 As shown, an adaptive position feedforward compensation method for motors with overshoot control is mainly applied to precision improvement applications. The algorithm is based on the fading memory recursive least squares method and realizes real-time online dynamic adjustment of adaptive feedforward gain according to the position tracking error. It can gradually adjust the position tracking error to fluctuate near 0, meeting the precision requirements of time-varying systems, including changes in mechanical characteristics after long-term operation and online fine-tuning of servo parameters. It has significant advantages over fixed-value position feedforward compensation, and the adjustment process is more intelligent.

[0056] Includes the following steps:

[0057] Step (1) Obtain slave axis information: Obtain the slave axis given position, slave axis given speed, slave axis given acceleration, and slave axis feedback position information through the PLC host computer;

[0058] Step (2) Establish the dynamic forgetting factor function. Based on the information obtained in step (1), calculate the tracking error and establish the dynamic forgetting factor function based on the tracking error.

[0059] Step (3) Determine whether the speed is constant;

[0060] If it is determined to be a uniform speed stage, then the output is sent to step (7) after step (4);

[0061] If it is determined to be an acceleration / deceleration phase, then continue with steps (5) to (7);

[0062] Step (4) Determine whether it is in the delay control range and adjust the adaptive feedforward gain. The shaft state is judged according to the given speed of the slave shaft obtained in step (1).

[0063] If the current axis state is determined to be within the delay control range, the adaptive speed feedforward gain and the adaptive acceleration feedforward gain will remain unchanged from the previous cycle.

[0064] If the shaft state has exited the delay control range, the adaptive velocity feedforward gain and the adaptive acceleration feedforward gain are updated and adjusted according to the fading memory recursive least squares method.

[0065] Step (5) Adjust the adaptive feedforward gain to force the dynamic forgetting factor function value to be changed to a large value that is no more than 1 and close to 1. Re-establish the optimization target with this value and update the prediction adjustment of the adaptive velocity feedforward gain; the update prediction adjustment process for the adaptive acceleration feedforward gain remains unchanged.

[0066] Step (6) Overshoot control uses the number of speed segments of the overshoot control flag as the judgment boundary, and assigns the overshoot control flag to go through three stages, and makes an overshoot control judgment based on the number of speed segments of the overshoot control flag in the third stage.

[0067] If position overshoot is determined, the algorithm performs overshoot control, and the output of the adaptive algorithm is determined according to the overshoot control logic; if no position overshoot is determined, the algorithm does not perform overshoot control, and the output of the adaptive algorithm remains unchanged.

[0068] Step (7) Calculate the position feedforward compensation value.

[0069] In this embodiment, step (1) specifically involves the following: In the application of electronic cams, the cam curve is generated by the control system based on the "key point" information in the cam table. On this basis, the real-time given information can be calculated by the underlying code function, and therefore the information that can be read from the PLC host computer includes: slave axis given position CompRx, slave axis given speed CompRv, slave axis given acceleration CompRa, and slave axis feedback position CompAx.

[0070] Step (2) in this embodiment is as follows: Since the magnitude of the forgetting factor determines the convergence speed of the algorithm, a dynamic forgetting factor function should be established. The forgetting factor is inversely proportional to the convergence speed; that is, a larger forgetting factor results in slower convergence and better stability, while a smaller forgetting factor results in faster convergence but is more sensitive to noise and has poor stability. Therefore, based on finding the lower limit λ0 of the stable value of the forgetting factor, the dynamic forgetting factor function should ensure that a smaller forgetting factor is used when the tracking error is large to improve the convergence speed of the algorithm, and a larger forgetting factor is used when the tracking error is small to ensure the accuracy of the algorithm.

[0071] Based on the above analysis and the information obtained in step 1, the tracking error e is calculated. x(t) = CompRx(t) - CompAx(t), and a dynamic forgetting factor function is established based on the tracking error. The function value λ is between the lower limit of the stable value of the forgetting factor λ0 and 1.

[0072] The forgetting factor function value λ is the basis for adaptive feedforward gain update adjustment.

[0073] The function is as follows:

[0074] λ(t)=λ0+(1-λ0)exp(-|ρ|e x (t))

[0075] 0≤λ0≤1,λ0≤λ≤1

[0076] In the formula: λ(t) is the time-varying forgetting factor; e x (t) represents the position tracking error, e x (t) = CompRx(t) - CompAx(t); λ0 is the stable lower limit of the forgetting factor; ρ is the approach rate of the variable forgetting factor; CompRx represents the given position from the axis, and CompAx represents the feedback position from the axis.

[0077] The above tracking error e x (t) is derived from the difference between the real-time given position CompRx of the slave axis and the real-time feedback position CompAx of the slave axis obtained in step 1.

[0078] In this embodiment, step (3) specifically means: considering that the adaptive speed feedforward gain in the uniform speed stage has been basically adjusted and is close to the true value, the adaptive speed feedforward gain in the acceleration / deceleration stage should not be adjusted in a large range.

[0079] Therefore, based on the above considerations, the algorithm update logic for the adaptive feedforward gain is divided into stages to ensure the correctness of the adaptive speed feedforward gain. The stage separation is as follows:

[0080] like Figure 3 As shown, step (4) of this embodiment is as follows: the overshoot mainly exists at the end of acceleration / deceleration to the early stage of uniform speed. Therefore, overshoot control should be performed during the overshoot period. Moreover, the overshoot should not interfere with the normal logic of adaptive feedforward gain adjustment. Therefore, delay control is added. The delay control starts timing from the first moment when the given speed CompRv of the slave axis obtained in step 1 enters the uniform speed zone, and executes a fixed time accumulation region Td.

[0081] The shaft state is determined based on the given shaft speed CompRv obtained in step 1.

[0082] If the current axis state is determined to be within the delay control range, i.e., the current time value is < Td, the adaptive speed feedforward gain AdapFFv and the adaptive acceleration feedforward gain AdapFFa remain unchanged from the previous cycle.

[0083] If the axis state has exited the delay control range, i.e., the axis state is not within the delay control range, and the current time value is ≥ Td, then the adaptive velocity feedforward gain AdapFFv and the adaptive acceleration feedforward gain AdapFFa are updated and adjusted according to the fading memory recursive least squares method.

[0084] The adjustment process of the gradually diminishing memory recursive least squares method is as follows:

[0085] Step (4-1) Calculate the tracking error e under the current environment based on the information in step (1). x (t), calculate the current forgetting factor function value λ based on the dynamic forgetting factor function in step (2);

[0086] Step (4-2) calculates the current time-varying adaptive gain matrix Γ(t) based on the dynamic forgetting factor function value λ(t), the real-time given velocity CompRv from the slave axis, the real-time given acceleration CompRa from the slave axis, and the covariance P(t-1) of the previous period system. The formula is as follows:

[0087] X T (t)=[CompRv(t)CompRa(t)] T

[0088] Γ(t)=P(t-1)X T [λ(t)+X T (t)P(t-1)X T ]-1

[0089] Step (4-3) is based on the adaptive feedforward gain predicted in the previous cycle. The adaptive feedforward gain for the current period is calculated and updated using data from the tracking error ex(t), the time-varying adaptive gain matrix v(t), and other parameters. Adaptive feedforward gain includes two categories: velocity and acceleration. The formula is as follows:

[0090]

[0091] Step (4-4) Adaptive Feedforward Gain After updating and adjusting the forecast, the current system covariance P(t) is calculated based on the current time-varying adaptive gain matrix Γ(t), the previous period system covariance P(t-1), and the dynamic forgetting factor function value λ(t), as shown in the following formula:

[0092]

[0093] Step (4-5) Obtain the estimated adaptive feedforward gain matrix The component values, namely the adaptive velocity feedforward gain AdapFFv(t) and the adaptive acceleration feedforward gain AdapFFa(t), are used to calculate the adaptive feedforward output value AdapOffset, as follows:

[0094] AdapOffset(t)=AdapFFv(t)·CompRv(t)+AdapFFa(t)·CompRa(t)

[0095] In the formula: the adaptive velocity feedforward gain AdapFFv(t) and the adaptive acceleration feedforward gain AdapFFa(t) are multiplied by the given velocity CompRv(t) and the given acceleration CompRa(t) of the slave axis, respectively, to calculate the final adaptive feedforward value.

[0096] In the next cycle of step (4-6), steps (4-1) to (4-5) are repeated. After accumulating multiple cycles, the adaptive velocity feedforward gain AdapFFv and the adaptive acceleration feedforward gain AdapFFa will eventually tend to a stable value and fluctuate up and down. This value is the true value of the velocity feedforward and acceleration feedforward gains. When the machine is turned on again, steps (4-1) to (4-5) are repeated based on this value to achieve the purpose of continuously adapting to changes in the environment.

[0097] In this embodiment, step (5) is specifically as follows: Based on the considerations in step (3) of this method, under the premise that the adaptive speed feedforward gain in the uniform speed stage has been basically adjusted and is close to the true value, the adaptive speed feedforward gain in the acceleration / deceleration stage should not have a large range of adjustment. The dynamic forgetting factor function value λ(t) is forcibly changed to a large value that does not exceed 1 and is close to 1 (the normally calculated dynamic forgetting factor function value λ(t) remains unchanged and is still retained). The optimization target is re-established with this value, and the adaptive speed feedforward gain AdapFFv is updated and estimated. In addition, the update and estimation adjustment process for the adaptive acceleration feedforward gain AdapFFa remains unchanged, that is, it is updated according to the normally calculated dynamic forgetting factor function value λ(t).

[0098] The specific parameter update process can be found in steps (4-1) to (4-5) of step 4.

[0099] In this embodiment, step (6) specifically refers to: an overshoot control determination diagram as shown below. Figure 4 As shown, speed curves can be divided into two categories: one is an initial acceleration followed by deceleration before reaching the uniform speed region, and the other is an initial deceleration followed by acceleration before reaching the uniform speed region. Regardless of the type of speed curve, the process only focuses on the overshoot before approaching the uniform speed region.

[0100] Therefore, the judgment logic is as follows:

[0101] (1) In the uniform speed region and non-delay control region, the overshoot control flag Mark is cleared to Mark=0 to initialize the overshoot control flag; the given speed value CompRv is recorded, that is, the overshoot control flag speed MarkRv=CompRv, so as to know the speed in the uniform speed region.

[0102] (2) Using the number of segments of MarkRv as the judgment boundary, and assigning an overshoot control flag Mark, the process goes through three stages (the first stage is the start, the second stage is the distance, and the third stage is the approach, as detailed below). Figure 4 As shown, overshoot control is determined in the third stage based on the number of MarkRv segments;

[0103] (3) If position overshoot is determined, the algorithm performs overshoot control, and the output of the adaptive algorithm is determined according to the overshoot control logic; if position overshoot is determined, the algorithm does not perform overshoot control, and the output of the adaptive algorithm remains unchanged.

[0104] In the overshoot control logic, an adjustable overshoot control gain is provided. This gain is freely input by the technician. The new adaptive feedforward output value AdapOffset is obtained by multiplying the overshoot control gain with the final adaptive feedforward output value.

[0105] The calculation of the position feedforward compensation value in step (7) of this embodiment is specifically as follows:

[0106] Offset(t)=ConstFFv·CompRv(t)+ConstFFa·CompRa(t)+AdapOffset(t)

[0107] In the formula: Offset(t) represents the total value of position feedforward compensation; ConstFF_ represents the single-axis precision compensation feedforward gain, including the single-axis precision compensation speed feedforward gain ConstFFv and the single-axis precision compensation speed feedforward gain ConstFFa.

[0108] As an application example of this method, the experimental equipment uses an XDH-60T4 PLC, in conjunction with a DS5C series motor to verify the algorithm. The CAM cam curve is planned using an XDPPro host computer. The curve includes a uniform speed segment and a quintic curve segment, and is executed cyclically using the CAMTBLSEL instruction on the XDH series PLC to achieve a simple rotary cutting process. The specific CAM cam key points and master-slave axis relationship curves are shown below. Figure 5 As shown. The master and slave axis information during operation is obtained from fixed registers provided by the XDPPro host computer, specifically as follows: Figure 6 As shown, N=0 is the principal axis and N=1 is the slave axis.

[0109] After steps (1) to (7) above, the experimental results are as follows: Figure 7 As shown, Figure 7 The tracking errors in the data all originate from e x The result is calculated as (t) = CompRx(t) - CompAx(t). As shown in the figure, after single-axis accuracy compensation, due to environmental changes, the tracking error in the synchronization zone does not fluctuate around 0. After adaptive feedforward compensation and single-axis accuracy compensation, the tracking error in the synchronization zone drops to fluctuating around 0, and the accuracy during acceleration / deceleration is also greatly improved. By adding overshoot control logic and delay control to the adaptive algorithm, the stabilization time in the synchronization zone is shortened by 30ms, and the overshoot during acceleration / deceleration is reduced by 57.19% compared to before.

[0110] The above experiments fully demonstrate that while the traditional method of gradual fading memory recursive least squares for adaptive feedforward compensation can improve the system's tracking accuracy, it cannot meet the needs of high-speed engineering applications. Based on this, a new adaptive compensation algorithm that introduces overshoot control logic and delay control logic has greater value for engineering applications.

[0111] The above description is merely illustrative of the embodiments of the present invention and is not intended to limit the present invention. For those skilled in the art, any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A method for adaptive position feedforward compensation of a motor with overshoot control, characterized in that, include: Step (1) Obtain information on the slave axis given position, slave axis given speed, slave axis given acceleration, and slave axis feedback position through the PLC host computer; Step (2) Calculate the tracking error based on the information obtained in step (1), and establish a dynamic forgetting factor function based on the tracking error; Step (3) Determine whether the speed is constant; If it is determined to be a uniform speed stage, then the output is sent to step (7) after step (4); If it is determined to be an acceleration / deceleration phase, then continue with steps (5) to (7); Step (4) Determine the shaft state based on the given shaft speed obtained in step (1); If the current axis state is determined to be within the delay control range, the adaptive speed feedforward gain and the adaptive acceleration feedforward gain will remain unchanged from the previous cycle. If the shaft state has exited the delay control range, the adaptive velocity feedforward gain and the adaptive acceleration feedforward gain are updated and adjusted according to the fading memory recursive least squares method. Step (5) forces the value of the dynamic forgetting factor function to be changed to a large value that is no more than 1 and close to 1. The optimization objective is re-established based on this value, and the adaptive velocity feedforward gain is updated and estimated. The update and estimation process for the adaptive acceleration feedforward gain remains unchanged. Step (6) uses the number of speed segments of the overshoot control flag as the judgment boundary, and assigns the overshoot control flag to go through three stages, and makes an overshoot control judgment based on the number of speed segments of the overshoot control flag in the third stage. If position overshoot is determined, the algorithm performs overshoot control, and the output of the adaptive algorithm is determined according to the overshoot control logic. If it is determined that there is no position overshoot, the algorithm will not perform overshoot control, and the output of the adaptive algorithm will remain unchanged. Step (7) Calculate the position feedforward compensation value.

2. The adaptive position feedforward compensation method for a motor with overshoot control according to claim 1, characterized in that, The dynamic forgetting factor function established in step (2) based on the tracking error is as follows: λ(t)=λ0+(1-λ0)exp(-|ρ|e x (t) 0≤λ0≤1,λ0≤λ≤1 In the formula, λ(t) is the time-varying forgetting factor; ex(t) is the position tracking error; and λ0 is the stable lower limit of the forgetting factor. ρ is the rate of approach of the variable forgetting factor; The tracking error e x The formula for calculating (t) is as follows: e x (t)=CompRx(t)-CompAx(t) In the formula, CompRx represents the given position of the axis, and CompAx represents the feedback position of the axis.

3. The adaptive position feedforward compensation method for a motor with overshoot control according to claim 1, characterized in that, The adjustment process of the gradual elimination memory recursive least squares method described in step (4) is as follows: Step (4-1) Calculate the tracking error e under the current environment based on the information in step (1). x (t), calculate the current forgetting factor function value λ based on the dynamic forgetting factor function in step (2); Step (4-2) calculates the current time-varying adaptive gain matrix Γ(t) based on the dynamic forgetting factor function value λ(t), the real-time given velocity CompRv from the slave axis, the real-time given acceleration CompRa from the slave axis, and the covariance P(t-1) of the previous period system. The formula is as follows: X T (t)=[CompRv(t)CompRa(t)] T Γ(t)=P(t-1)X T [λ(t)+X T (t)P(t-1)X T ] -1 Step (4-3) is based on the adaptive feedforward gain predicted in the previous cycle. Tracking error e x The adaptive feedforward gain for the current period is calculated and updated using data from four sources: Γ(t), the time-varying adaptive gain matrix Γ(t), and Γ(t). Adaptive feedforward gain includes two categories: velocity and acceleration. The formula is as follows: Step (4-4) Adaptive Feedforward Gain After updating and adjusting the forecast, the current system covariance P(t) is calculated based on the current time-varying adaptive gain matrix Γ(t), the previous period system covariance P(t-1), and the dynamic forgetting factor function value λ(t), as shown in the following formula: Step (4-5) Obtain the estimated adaptive feedforward gain matrix The component values, namely the adaptive velocity feedforward gain AdapFFv(t) and the adaptive acceleration feedforward gain AdapFFa(t), are used to calculate the adaptive feedforward output value AdapOffset, as follows: AdapOffset(t)=AdapFFv(t)·CompRv(t)+AdapFFa(t)·CompRa(t) In the formula: the adaptive velocity feedforward gain AdapFFv(t) and the adaptive acceleration feedforward gain AdapFFa(t) are multiplied by the given velocity CompRv(t) and the given acceleration CompRa(t) of the slave axis, respectively, to calculate the final adaptive feedforward value.

4. The adaptive position feedforward compensation method for a motor with overshoot control according to claim 3, characterized in that, It also includes the next cycle of step (4-6), repeating steps (4-1) to (4-5). After accumulating multiple cycles, the final adaptive velocity feedforward gain AdapFFv and adaptive acceleration feedforward gain AdapFFa will tend to a stable value and fluctuate up and down. That is, this value is the true value of the velocity feedforward and acceleration feedforward gains. After the machine is turned on again, steps (4-1) to (4-5) will be repeated based on this value to achieve the purpose of continuously adapting to environmental changes.

5. The adaptive position feedforward compensation method for a motor with overshoot control according to claim 1, characterized in that, The calculation of the position feedforward compensation value in step (7) specifically involves: Offset(t)=ConstFFv·CompRv(t)+ConstFFa·CompRa(t)+AdapOffset(t) In the formula: Offset(t) represents the total value of position feedforward compensation; ConstFF- represents the single-axis precision compensation feedforward gain, including the single-axis precision compensation speed feedforward gain ConstFFv and the single-axis precision compensation speed feedforward gain ConstFFa.

Citation Information

Patent Citations

  • Self-adaptive control method for rotary table under variable load condition

    CN113325709A

  • Positioning servocontroller

    CN1429355A