Method of controlling an electric machine
By using the Sigmoid function curve model for motor control, the problem of sudden changes in speed and acceleration caused by the complexity of curve modeling in existing technologies is solved, achieving smooth transition of motor operation and improved positioning accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SIEMENS (CHINA) CO LTD
- Filing Date
- 2022-01-20
- Publication Date
- 2026-05-05
AI Technical Summary
In existing motor control methods, the complexity of control curve modeling makes it difficult to determine the maximum set speed, resulting in problems such as low-speed crawling during positioning and sudden changes in speed and acceleration.
By adopting the Sigmoid function curve model, compensation is performed by calculating the speed and time during the motor operation phase in real time, forming a position closed-loop control, ensuring the continuity and differentiability of the speed and acceleration curves, and avoiding multi-segment splicing.
It achieves a smooth transition between motor speed and acceleration, simplifies the curve modeling process, reduces low-speed crawling, and improves positioning accuracy and efficiency.
Smart Images

Figure CN114567229B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a control method, and more particularly to a control method for an electric motor. Background Technology
[0002] Control curves are commonly used in motor control. Current control curves use multiple speed curves spliced together during acceleration or deceleration. Due to the complexity of curve modeling, it is difficult to determine the maximum achievable set speed, resulting in a long low-speed crawling process during positioning. When the maximum set speed is changed, sudden changes in speed and acceleration occur. Summary of the Invention
[0003] The purpose of this invention is to provide a motor control method that employs a simple curve model. During positioning, the running time is continuously compensated based on the actual position to form a position closed-loop control. When changing the maximum set speed, the speed and acceleration curves can be guaranteed to be continuously differentiable of order n.
[0004] This invention provides a method for controlling an electric motor, comprising the following steps:
[0005] Receive data commands, which include target position, current position, maximum set acceleration, maximum set deceleration, maximum set speed, minimum set speed, reduction ratio, lead, and rated motor speed;
[0006] Transform the Sigmoid function curve to obtain the control curve algorithm model. In the control curve algorithm model, the acceleration and constant speed phases in the running phase are calculated according to the Sigmoid acceleration curve model, and the deceleration phase is calculated according to the Sigmoid deceleration curve model.
[0007] The parameters of the control curve algorithm model are calculated based on the data instructions;
[0008] Based on the control curve algorithm model with the determined parameters, the real-time speed of the motor at each moment during the operation phase is calculated in real time.
[0009] Control the motor operation based on real-time speed;
[0010] During motor operation, the running time is compensated in real time based on the actual distance traveled per unit time, forming a position closed loop;
[0011] When the maximum set speed changes and takes effect, the parameters of the control curve algorithm model are modified to ensure that the velocity curve and acceleration curve are nth-order continuous and differentiable.
[0012] The motor control method provided by this invention generates a curve control model based on the Sigmoid function curve. Acceleration and deceleration processes each require only a single curve, eliminating the need for multi-segment splicing. This makes it easy to determine the actual maximum achievable operating speed, and eliminates the low-speed crawling process during deceleration and stopping. The Sigmoid function curve is n-order differentiable, and the acceleration and deceleration of the curve control model generated based on the Sigmoid function curve are continuous without abrupt changes. By controlling the timing of speed changes and the curve model parameters, the speed and acceleration remain continuous without abrupt changes when changing the maximum speed, and are n-order differentiable.
[0013] In another illustrative implementation of the motor control method, the Sigmoid function curve is transformed in the Sigmoid acceleration curve model and the Sigmoid deceleration curve model respectively, and the Sigmoid function curve is truncated in the interval from -5 to 5.
[0014] The Sigmoid acceleration curve model expression is: V(t) = (V max -V min ) / (1+e^(-a1t+5))+V min , t∈(0,10 / a1);
[0015] The Sigmoid deceleration curve model expression is: V(t) = (V max -V min ) / (1+e^(a2t-5))+V min , t∈(0,10 / a2);
[0016] By taking the derivatives of the Sigmoid acceleration curve model and the Sigmoid deceleration curve model as zero, the following calculation formula is obtained:
[0017] Acc max =a1* (V max -V min ) / 4;
[0018] Dec max =a2* (V max -V min ) / 4.
[0019] Where V(t) is the real-time velocity, V max For maximum speed, V min Minimum speed, Acc max Maximum set acceleration is Dec max The maximum set deceleration, a1 and a2 are intermediate variables, the maximum set speed is used as the set value of the maximum speed, and the minimum set speed is used as the set value of the minimum speed.
[0020] In another illustrative embodiment of the motor control method, the theoretical maximum set speed is calculated in the control curve algorithm model based on the target position and the actual current position. The maximum set speed in the data command, the rated speed of the motor, and the theoretical maximum set speed are compared, and the minimum value among the three is substituted into the control curve algorithm model. The theoretical maximum set speed is calculated according to the following formula:
[0021] A=(5+(ln(1+e^(-5))))*(1 / Acc max +1 / Dec max );
[0022] B = 10 * V min *(1 / Acc max +1 / Dec max );
[0023] C = -4 * D;
[0024] A*(V max理论 -V min )^2+B*(V max理论 -V min )+C=0;
[0025] V max理论 =V min +(-B+SQRT(B*B-4*A*C)) / 2 / A;
[0026] Where D is the distance between the target location and the actual value, and V min For the minimum speed, V max理论 For the theoretical maximum computation speed, Acc max To set the maximum acceleration, Dec max Set the maximum deceleration.
[0027] In another illustrative embodiment of the motor control method, if the maximum set speed in the data command changes during motor operation, it is determined whether to take effect immediately based on the current stage:
[0028] If the real-time speed is in the acceleration phase, the maximum set speed will be changed when the constant speed phase is reached.
[0029] If the real-time speed is in a constant speed phase, the maximum set speed will be changed immediately.
[0030] If the real-time speed is in a deceleration phase, the maximum set speed will not be changed.
[0031] In another illustrative embodiment of the motor control method, when changing the maximum set speed:
[0032] If the changed maximum set speed increases, then the maximum theoretical set speed that can be achieved by acceleration is estimated based on the real-time speed, the minimum set speed, and the real-time remaining displacement distance. The minimum value among the estimated maximum theoretical set speed that can be achieved by acceleration, the changed maximum set speed, and the speed value corresponding to the rated speed of the motor is substituted into the maximum speed in the control curve algorithm model as the set value. The real-time speed is substituted into the minimum speed in the control curve algorithm model as the set value.
[0033] If the maximum set speed decreases, calculate the sum of the displacement distance from the real-time speed to the changed maximum set speed and the displacement distance from the changed maximum set speed to the minimum set speed, and determine whether it is less than the real-time remaining displacement distance. If it is less, substitute the changed maximum set speed into the control curve algorithm model, and substitute the set value of the maximum speed before the change into the minimum speed in the control curve algorithm model as the set value. If it is greater than or equal to, do not change the curve model.
[0034] In another illustrative embodiment of the motor control method, estimating the maximum theoretical set speed achievable through acceleration specifically involves: using the real-time speed as the minimum set speed, and substituting the real-time remaining distance, maximum set acceleration, and maximum set deceleration into the model for calculating the theoretical maximum speed to obtain a first theoretical maximum speed; using the original minimum speed set value as the minimum set speed, and substituting the real-time remaining distance, maximum set acceleration, and maximum set deceleration into the model for calculating the theoretical maximum speed to obtain a second theoretical maximum speed; and taking the minimum value between the first and second theoretical maximum speeds as the maximum theoretical set speed achievable through acceleration.
[0035] In another illustrative embodiment of the motor control method, the judgment is also made at the following time points:
[0036] When starting acceleration, when changing the maximum set speed for acceleration, and when jumping from the deceleration phase to the acceleration phase, it is determined whether the real-time remaining distance of the target position is greater than or equal to the distance required for real-time deceleration, whether the maximum set speed has increased, and whether a stop command has been received. If all of the above determinations are correct, the Sigmoid acceleration curve model is executed.
[0037] When changing the maximum set speed for deceleration and when jumping from the acceleration phase to the deceleration phase, it is determined whether the real-time remaining distance of the target position is greater than or equal to the distance required for real-time deceleration, whether the maximum set speed has increased, and whether a stop command has not been received. If none of the above conditions are met, the Sigmoid deceleration curve model is executed.
[0038] The real-time speed corresponding to the maximum speed at which deceleration stops is calculated using the following formula:
[0039] V max减速=(1+e^(-5))*( V 实时 -V min )+ V min ;
[0040] The distance required for real-time deceleration is calculated using the following formula:
[0041] D 减速 =( V max减速 -V min )*V min *10 / 4 / Dec max +( V max减速 -V min )^2*(5+(ln(1+e^(-5)))) / 4 / Dec max ;
[0042] Among them, V 实时 For real-time speed, V min For minimum speed, Dec max Set the maximum deceleration.
[0043] In another illustrative embodiment of the motor control method, in the step of: during motor operation, the running time is compensated in real time based on the actual distance traveled per unit time to form a position closed loop, and the compensation amount is specifically calculated using the following formula:
[0044] T = t0 + Δt * (ΔD) 理论 / △D 实际 );
[0045] Where T is the actual time value substituted into the calculation, t0 is the starting time value, Δt is the sampling time interval, and ΔD is the sampling time interval. 理论 Let △D be the theoretical distance traveled during the process. 实际 This refers to the actual distance traveled during the process. Attached Figure Description
[0046] The following figures are for illustrative purposes only and do not limit the scope of the invention.
[0047] Figure 1 This is a schematic flowchart illustrating one implementation of a motor control method.
[0048] Figure 2 This is a schematic diagram based on the Sigmoid function curve.
[0049] Figure 3 This is a schematic diagram of the derivative curve based on the Sigmoid function.
[0050] Figure 4 A diagram illustrating the decision-making process for model selection.
[0051] Figure 5 This is a schematic diagram of the velocity curve used to correct the velocity.
[0052] Label Explanation
[0053] S0 t0 starting position
[0054] S1 is the actual target position after time Δt.
[0055] The theoretical target position of S2 after time Δt Detailed Implementation
[0056] To provide a clearer understanding of the technical features, objectives, and effects of the invention, specific embodiments of the invention are now described with reference to the accompanying drawings. In the drawings, the same reference numerals indicate components with the same or similar structures but the same function.
[0057] In this document, “illustrative” means “serving as an example, illustration or description”, and any illustration or implementation described herein as “illustrative” should not be construed as a more preferred or advantageous technical solution.
[0058] Figure 1 This is a schematic flowchart illustrating one implementation of a motor control method. (Refer to...) Figure 1 The motor control method includes the following steps:
[0059] Step S10: Receive data commands, which include target position, current position, maximum set acceleration, maximum set deceleration, maximum set speed, minimum set speed, reduction ratio, lead, and rated motor speed. Specifically, data commands are sent via a host computer. Data commands with different parameters can be issued during motor operation to change the motor's operating state, such as adjusting the motor's maximum operating speed and stopping the motor.
[0060] Step S20: Transform the Sigmoid function curve to obtain the control curve algorithm model. In the control curve algorithm model, the acceleration phase and the constant speed phase in the running phase are calculated according to the Sigmoid acceleration curve model, and the deceleration phase is calculated according to the Sigmoid deceleration curve model.
[0061] Figure 2 This is a schematic diagram based on the Sigmoid function curve. (Refer to...) Figure 2The figure includes three curves: f(x)=1 / (1+e^(-x+5)), f(x)=1 / (1+e^(-10+5)), and f(x)=1 / (1+e^(x-5-15)). Since the complete Sigmoid function curve will result in too small acceleration at the beginning and end of acceleration when converted into a velocity-time curve, only the interval between -5 and 5 of each curve is selected.
[0062] Specifically, in the Sigmoid function control curve algorithm, the Sigmoid function curve is transformed in the Sigmoid acceleration curve model and the Sigmoid deceleration curve model respectively, resulting in the following curve models:
[0063] The Sigmoid acceleration curve model expression is: V(t) = (V max -V min ) / (1+e^(-a1t+5))+V min , t∈(0,10 / a1);
[0064] The Sigmoid deceleration curve model expression is: V(t) = (V max -V min ) / (1+e^(a2t-5))+V min , t∈(0,10 / a2);
[0065] By taking the derivatives of the Sigmoid acceleration curve model and the Sigmoid deceleration curve model as zero, the following calculation formula is obtained:
[0066] Acc max =a1* (V max -V min ) / 4;
[0067] Dec max =a2* (V max -V min ) / 4;
[0068] Where V(t) is the real-time velocity, V max For maximum speed, V min Minimum speed, Acc max Maximum set acceleration is Dec max The maximum deceleration is set, with a1 and a2 as intermediate variables.
[0069] Step S30: Calculate the parameters of the control curve algorithm model according to the data instructions. Combining the above curve model and substituting the maximum set acceleration, maximum set deceleration, maximum set speed, and minimum set speed from the data instructions, the moment speed of the motor at each time point during the operation phase can be obtained.
[0070] Step S40: Control the motor operation according to the real-time speed.
[0071] Step S50: During motor operation, the running time is compensated in real time based on the actual distance traveled per unit time to form a position closed loop.
[0072] Step S60: When the maximum set speed changes and takes effect, modify the parameters of the control curve algorithm model to ensure that the velocity curve and acceleration curve are nth order continuous and differentiable.
[0073] Figure 3 This is a schematic diagram of the derivative curve based on the Sigmoid function. (Refer to...) Figure 3 Since the Sigmoid function curve is differentiable at order n, the motor control method provided by this invention generates a curve control model based on the Sigmoid function curve. The modeling is simple, and the acceleration and deceleration of the curve control model are continuous without abrupt changes. When the speed changes, the speed change and the curve model parameters are modified in a timely manner, so that the speed and acceleration are continuous without abrupt changes when the maximum speed is changed.
[0074] In the illustrative implementation, since the expressions of the Sigmoid acceleration curve model and the Sigmoid deceleration curve model represent the final effective maximum speed setting value, rather than the actual maximum speed setting value or the maximum speed value corresponding to the motor's rated speed, if this effective maximum speed setting value is too large, it will cause a sudden acceleration change; if it is too small, positioning will be slow and efficiency will be low. Therefore, it is necessary to calculate the final effective maximum speed setting value in step S30. Specifically, the theoretical maximum setting speed is also calculated in the control curve algorithm model based on the target position and the actual current position. The maximum setting speed in the data command, the rated speed of the motor, and the theoretical maximum setting speed are compared, and the minimum value among the three is substituted into the control curve algorithm model. The theoretical maximum setting speed is calculated according to the following formula:
[0075] A=(5+(ln(1+e^(-5))))*(1 / Acc max +1 / Dec max );
[0076] B = 10 * V min *(1 / Acc max +1 / Dec max );
[0077] C = -4 * D;
[0078] A*(V max理论 -V min )^2+B*(V max理论 -V min )+C=0;
[0079] V max理论 =V min +(-B+SQRT(B*B-4*A*C)) / 2 / A;
[0080] Where D is the distance between the target location and the actual value, and V min For the minimum speed, V max理论 For the theoretical maximum computation speed, Acc max To set the maximum acceleration, Dec max Set the maximum deceleration.
[0081] In the illustrative implementation, if the maximum set speed in the data command changes during motor operation, it is determined whether to take effect immediately based on the current stage:
[0082] If the real-time speed is in the acceleration phase, the maximum set speed will be changed when the constant speed phase is reached.
[0083] If the real-time speed is in a constant speed phase, the maximum set speed will be changed immediately.
[0084] If the real-time speed is in a deceleration phase, the maximum set speed will not be changed.
[0085] During motor operation, the maximum set speed may need to be adjusted. This maximum set speed may occur during the motor's acceleration, constant speed, or deceleration phases, and it may increase or decrease. Multiple combinations of these changes can lead to various possibilities, and ensuring the speed doesn't change abruptly would make model planning very complex. The control method simplifies the model and calculation process by adding a pre-judgment to determine the motor's current operating phase and incorporating the action of changing the maximum set speed into the constant speed phase calculation. This ensures the continuity of the speed and acceleration curves and guarantees nth-order differentiability.
[0086] Specifically, when changing the maximum set speed:
[0087] If the maximum set speed increases, the theoretical maximum set speed achievable through acceleration is estimated based on the real-time speed, minimum set speed, and real-time remaining displacement distance. The minimum value among the estimated theoretical maximum set speed, the changed maximum set speed, and the speed corresponding to the motor's rated speed is substituted into the maximum speed in the control curve algorithm model as the set value. The real-time speed is then substituted into the minimum speed in the control curve algorithm model as the set value. Specifically, estimating the theoretical maximum set speed achievable through acceleration involves: using the real-time speed as the minimum set speed, and substituting the real-time remaining distance, maximum set acceleration, and maximum set deceleration into the model for calculating the theoretical maximum speed to obtain a first theoretical maximum speed. The original minimum speed set value is used as the minimum set speed, and substituting the real-time remaining distance, maximum set acceleration, and maximum set deceleration into the model for calculating the theoretical maximum speed to obtain a second theoretical maximum speed. The minimum value between the first and second theoretical maximum speeds is taken as the theoretical maximum set speed achievable through acceleration. After the maximum set speed is increased, the minimum speed settings of the newly generated curve models are not equal, resulting in curve asymmetry. Therefore, it is impossible to obtain the theoretical maximum set speed. So, the asymmetrical acceleration and deceleration curves are symmetrically completed to obtain two symmetrical curve models. The maximum set speed is then calculated for each of the two curve models. The two calculation results are compared and the minimum value is taken to estimate the theoretical maximum set speed that can be achieved.
[0088] If the maximum set speed decreases, calculate the sum of the displacement distance from the real-time speed to the changed maximum set speed and the displacement distance from the changed maximum set speed to the minimum set speed, and determine whether it is less than the real-time remaining displacement distance. If it is less, substitute the changed maximum set speed into the control curve algorithm model, and substitute the set value of the maximum speed before the change into the minimum speed in the control curve algorithm model as the set value. If it is greater than or equal to, do not change the curve model.
[0089] In the control method, upon receiving a data command to change the maximum set speed, calculations and judgments are first performed. When the maximum set speed changes, it is determined whether this will cause excessive deceleration due to insufficient remaining distance. If the change does not result in this situation, the new maximum set speed is then substituted into the curve model to calculate the new instantaneous speed, and the motor is then controlled to run.
[0090] In the illustrative implementation, since the Sigmoid acceleration curve model and the Sigmoid deceleration curve model are expressed as two separate curve models, it is necessary to make judgments at any time in the Sigmoid function control curve algorithm to determine the stage of motor operation and the applicable model. Figure 4 A diagram illustrating the decision-making process for model selection, refer to... Figure 4 Specifically, the judgment should be made at the following points in time:
[0091] When starting acceleration, when changing the maximum set speed for acceleration, and when jumping from the deceleration phase to the acceleration phase, it is determined whether the real-time remaining distance of the target position is greater than or equal to the distance required for real-time deceleration, whether the maximum set speed has increased, and whether a stop command has been received. If all of the above determinations are correct, the Sigmoid acceleration curve model is executed.
[0092] When changing the maximum set speed for deceleration and when jumping from the acceleration phase to the deceleration phase, it is determined whether the real-time remaining distance of the target position is greater than or equal to the distance required for real-time deceleration, whether the maximum set speed has increased, and whether a stop command has not been received. If none of the above conditions are met, the Sigmoid deceleration curve model is executed.
[0093] The real-time speed corresponding to the maximum speed at which deceleration stops is calculated using the following formula:
[0094] V max减速 =(1+e^(-5))*( V 实时 -V min )+ V min ;
[0095] The distance required for real-time deceleration is calculated using the following formula:
[0096] D 减速 =( V max减速 -V min )*V min *10 / 4 / Dec max +( V max减速 -V min )^2*(5+(ln(1+e^(-5)))) / 4 / Dec max ;
[0097] Among them, V 实时 For real-time speed, V min For minimum speed, Dec max Set the maximum deceleration.
[0098] In the illustrative embodiment, in step S50, the compensation amount is specifically calculated using the following formula:
[0099] T = t0 + Δt * (ΔD) 理论 / △D 实际 );
[0100] Where T is the actual time value substituted into the calculation, t0 is the starting time value, Δt is the sampling time interval, and ΔD is the sampling time interval. 理论 Let △D be the theoretical distance traveled during the process. 实际 This refers to the actual distance traveled during the process. Figure 5This is a schematic diagram of the velocity curve used for velocity correction. (Refer to...) Figure 5 In the diagram, S0 represents the starting position at time t0, S1 represents the actual target position after Δt, and S2 represents the theoretical target position after Δt. ΔD can be calculated. 理论 and △D 实际 Because the following characteristics of the motors differ, S1 and S2 may not be in the same position. In actual calculations, the time needs to be adjusted to ensure that the actual position is consistent with the theoretical position, thereby accurately controlling the motor.
[0101] It should be understood that although this specification is described according to various embodiments, not every embodiment contains only one independent technical solution. This way of describing the specification is only for clarity. Those skilled in the art should regard the specification as a whole. The technical solutions in each embodiment can also be appropriately combined to form other implementation methods that can be understood by those skilled in the art.
[0102] The detailed descriptions listed above are merely specific descriptions of feasible embodiments of the present invention and are not intended to limit the scope of protection of the present invention. All equivalent implementation schemes or modifications made without departing from the spirit of the present invention, such as combinations, divisions or repetitions of features, should be included within the scope of protection of the present invention.
Claims
1. A method for controlling an electric motor, characterized in that, Includes the following steps: Receive data instructions, which include target position, current position, maximum set acceleration, maximum set deceleration, maximum set speed, minimum set speed, reduction ratio, lead, and rated motor speed; The Sigmoid function curve is transformed to obtain the control curve algorithm model. In the control curve algorithm model, the acceleration phase and the constant speed phase in the running phase are calculated according to the Sigmoid acceleration curve model, and the deceleration phase is calculated according to the Sigmoid deceleration curve model. The parameters of the control curve algorithm model are calculated based on the data instructions. Based on the control curve algorithm model with the determined parameters, the real-time speed of the motor at each moment during the operation phase is calculated in real time. The motor is controlled to operate based on the real-time speed. During the operation of the motor, the running time is compensated in real time based on the actual distance traveled per unit time, forming a position closed loop; When the maximum set speed changes and takes effect, the parameters of the control curve algorithm model are modified to ensure that the velocity curve and acceleration curve are nth-order continuously differentiable; wherein, The Sigmoid acceleration curve model and the Sigmoid deceleration curve model respectively transform the Sigmoid function curve and extract the Sigmoid function curve in the interval from -5 to 5. The Sigmoid acceleration curve model expression is: V(t) = (V max -V min ) / (1+e^(-a1t+5))+V min , t∈(0,10 / a1); The Sigmoid deceleration curve model expression is: V(t) = (V max -V min ) / (1+e^(a2t-5))+V min , t∈(0,10 / a2); By taking the derivatives of the Sigmoid acceleration curve model and the Sigmoid deceleration curve model as zero, the following calculation formula is obtained: Acc max =a1* (V max -V min ) / 4; Dec max =a2* (V max -V min ) / 4; Where V(t) is the real-time velocity, V max For maximum speed, V min For minimum speed, Acc max To set the maximum acceleration, Dec max The maximum set deceleration is defined as a1 and a2, which are intermediate variables. The maximum set speed is used as the set value of the maximum speed, and the minimum set speed is used as the set value of the minimum speed.
2. The motor control method as described in claim 1, characterized in that, The control curve algorithm model also calculates the theoretical maximum set speed based on the target position and the actual current position. It compares the maximum set speed in the data command, the rated speed of the motor, and the theoretical maximum set speed, and substitutes the minimum value of the three into the control curve algorithm model. The theoretical maximum set speed is calculated according to the following formula: A=(5+(ln(1+e^(-5))))*(1 / Acc max +1 / Dec max ); B=10* V min *(1 / Acc max +1 / Dec max ); C = -4 * D; A*(V max理论 -V min )^2+B*(V max理论 -V min )+C=0; V max理论 =V min +(-B+SQRT(B*B-4*A*C)) / 2 / A; Where D is the distance between the target location and the actual value, and V min For the minimum speed, V max理论 For the theoretical maximum computation speed, Acc max To set the maximum acceleration, Dec max Set the maximum deceleration.
3. The motor control method as described in claim 2, characterized in that, If the maximum set speed in the data command changes during the operation of the motor, it is determined whether to take effect immediately based on the current stage: If the real-time speed is in the acceleration phase, then wait until the constant speed phase to change the maximum set speed; If the real-time speed is in a constant speed phase, then immediately change the maximum set speed; If the real-time speed is in a deceleration phase, the maximum set speed will not be changed.
4. The motor control method as described in claim 3, characterized in that, When changing the maximum set speed: If the changed maximum set speed increases, then the theoretical maximum set speed that can be achieved by acceleration is estimated based on the real-time speed, the minimum set speed, and the real-time remaining displacement distance. The minimum value among the estimated theoretical maximum set speed that can be achieved by acceleration, the changed maximum set speed, and the speed value corresponding to the rated speed of the motor is substituted into the maximum speed in the control curve algorithm model as the set value. The real-time speed is substituted into the minimum speed in the control curve algorithm model as the set value. If the changed maximum set speed decreases, the sum of the displacement distance from the real-time speed deceleration to the changed maximum set speed and the displacement distance from the changed maximum set speed deceleration to the minimum set speed is calculated and it is determined whether it is less than the real-time remaining displacement distance. If it is less, the changed maximum set speed is substituted into the control curve algorithm model, and the setting value of the maximum speed before the change is substituted into the minimum speed in the control curve algorithm model as the setting value. If it is greater than or equal to, the curve model is not changed.
5. The motor control method as described in claim 4, characterized in that, Specifically, estimating the theoretical maximum set speed achievable through acceleration involves: using the real-time speed as the minimum set speed, and substituting the real-time remaining distance, maximum set acceleration, and maximum set deceleration into the model for calculating the theoretical maximum speed to obtain a first theoretical maximum speed; using the original minimum speed set value as the minimum set speed, and substituting the real-time remaining distance, maximum set acceleration, and maximum set deceleration into the model for calculating the theoretical maximum speed to obtain a second theoretical maximum speed; and taking the minimum value between the first theoretical maximum speed and the second theoretical maximum speed as the theoretical maximum set speed achievable through acceleration.
6. The motor control method as described in claim 1, characterized in that, The following time points were also used to make judgments: When starting acceleration, when changing the maximum set speed for acceleration, and when jumping from the deceleration phase to the acceleration phase, it is determined whether the real-time remaining distance of the target position is greater than or equal to the distance required for real-time deceleration, whether the maximum set speed has increased, and whether a stop command has been received. If all of the above determinations are true, the Sigmoid acceleration curve model is executed. When changing the maximum set speed for deceleration and when jumping from the acceleration phase to the deceleration phase, it is determined whether the real-time remaining distance of the target position is greater than or equal to the distance required for real-time deceleration, whether the maximum set speed has increased, and whether a stop command has not been received. If none of the above determinations are true, the Sigmoid deceleration curve model is executed. The real-time speed corresponding to the maximum speed at which deceleration stops is calculated using the following formula: V max减速 =(1+e^(-5))*( V 实时 -V min )+ V min ; The distance required for real-time deceleration is calculated using the following formula: D 减速 =( V max减速 -V min )*V min *10 / 4 / Dec max +( V max减速 -V min )^2*(5+(ln(1+e^(-5)))) / 4 / Dec max ; Among them, V 实时 For real-time speed, V min For minimum speed, Dec max Set the maximum deceleration.
7. The motor control method as described in claim 1, characterized in that, In the step: During the operation of the motor, the running time is compensated in real time based on the actual distance traveled per unit time to form a position closed loop. The compensation amount is specifically calculated using the following formula: T=t0+△t*(△D 理论 / △D 实际 ); Where T is the actual time value substituted into the calculation, t0 is the starting time value, Δt is the sampling time interval, and ΔD is the sampling time interval. 理论 Let △D be the theoretical distance traveled during the process. 实际 This refers to the actual distance traveled during the process.
Citation Information
Patent Citations
Feed rate planning method based on logarithm probability function under motion and error limitations
CN111240275A
Motion control method, system and device, robot and storage medium
CN111880473A