CN117639615A - Motor control method, apparatus, and readable storage medium - Google Patents

Motor control method, apparatus, and readable storage medium Download PDF

Info

Publication number
CN117639615A
CN117639615A CN202311637390.9A CN202311637390A CN117639615A CN 117639615 A CN117639615 A CN 117639615A CN 202311637390 A CN202311637390 A CN 202311637390A CN 117639615 A CN117639615 A CN 117639615A
Authority
CN
China
Prior art keywords
motor
load
speed
angle
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311637390.9A
Other languages
Chinese (zh)
Inventor
张宇
周伟涛
万智
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Inovance Technology Co Ltd
Original Assignee
Shenzhen Inovance Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Inovance Technology Co Ltd filed Critical Shenzhen Inovance Technology Co Ltd
Priority to CN202311637390.9A priority Critical patent/CN117639615A/en
Publication of CN117639615A publication Critical patent/CN117639615A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P29/00Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/60Other road transportation technologies with climate change mitigation effect
    • Y02T10/72Electric energy management in electromobility

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Control Of Electric Motors In General (AREA)

Abstract

The application discloses a motor control method, a motor control device and a readable storage medium, and relates to the field of motor control, wherein the motor control method comprises the following steps: determining a first calculated contribution degree corresponding to a motor corner of the motor and a second calculated contribution degree corresponding to a load corner of the load end according to a time constant corresponding to the current moment; determining a feedback angle for the motor from the motor angle, the load angle, the first calculated contribution, and the second calculated contribution; determining a target rotating speed of the motor according to a numerical relation between a reference rotating angle of the motor and the feedback rotating angle; and adjusting the actual rotating speed of the motor according to the numerical relation between the target rotating speed and the actual rotating speed of the motor. The technical problems that the nonlinear characteristic of the harmonic reducer is brought into closed-loop control in the related art, and the servo performance of the motor is affected are solved, and the technical effects of improving the position control precision and suppressing vibration are achieved at the same time.

Description

Motor control method, apparatus, and readable storage medium
Technical Field
The present application relates to the field of motor control, and in particular, to a motor control method, apparatus, and readable storage medium.
Background
A collaborative robot refers to a robot that can interact directly with a person in a collaborative area, which is typically configured with dual encoders, so that a motor and load end rotation angle signal can be used to form dual position feedback control.
In the related art, joints of the cooperative robot are generally composed of a permanent magnet synchronous motor, a harmonic reducer, and a transmission shaft. Among them, the harmonic reducer realizes a high reduction ratio in a relatively small volume, so that a high torque can be provided by a small motor. And the full-closed loop control of the rotation angle information of the motor shaft is adopted as a control mode from the motor to the transmission shaft to the load end, and the full-closed loop control feeds back the real rotation angle error to the position controller through the linear encoder at the load end, so that the position control precision is improved.
However, due to the structure and production problems of the harmonic reducer, three main nonlinear characteristics exist, namely elasticity, friction and kinematic errors, and when the rotating speed of a load end in full-closed loop control is compared with the rotating speed of a motor, the harmonic reducer is subjected to multiplying power scaling, so that the nonlinear characteristic of the harmonic reducer is brought into closed loop control, and the servo performance of the motor is influenced.
Disclosure of Invention
The embodiment of the application solves the technical problem that the servo performance of a motor is affected by incorporating the nonlinear characteristic of the harmonic reducer into closed-loop control in the related technology by providing the motor control method, the motor control device and the readable storage medium, and further achieves the technical effects of improving the position control precision and suppressing vibration.
The embodiment of the application provides a motor control method, which is applicable to a transmission system, wherein the transmission system comprises a motor and a load end, and the motor control method comprises the following steps:
determining a first calculated contribution degree corresponding to a motor rotation angle of the motor and a second calculated contribution degree corresponding to a load rotation angle of the load end according to a time constant corresponding to the current moment, wherein when the second calculated contribution degree tends to a first target value, the transmission system tends to be in full-closed loop control, and when the second calculated contribution degree tends to a second target value, the transmission system tends to be in semi-closed loop control;
determining a feedback angle for the motor from the motor angle, the load angle, the first calculated contribution, and the second calculated contribution;
determining a target rotating speed of the motor according to a numerical relation between a reference rotating angle of the motor and the feedback rotating angle;
And adjusting the actual rotating speed of the motor according to the numerical relation between the target rotating speed and the actual rotating speed of the motor.
Optionally, the step of determining the first calculated contribution corresponding to the motor rotation angle of the motor and the second calculated contribution corresponding to the load rotation angle of the load end according to the time constant corresponding to the current time includes:
determining the time constant based on vibration data acquired at the current moment;
and determining the first calculated contribution degree and the second calculated contribution degree according to the time constant.
Optionally, the step of determining the time constant based on vibration data acquired at the current time includes:
acquiring a historical time constant;
collecting the vibration data of the transmission system based on a current moment;
updating the historical time constant based on the difference between the vibration data and the vibration reference value, and determining the time constant.
Optionally, the step of determining a feedback angle for the motor from the motor angle, the load angle, the first calculated contribution, and the second calculated contribution comprises:
determining the motor rotation angle and the load rotation angle based on encoder data and/or simulation data acquired at the current moment;
And determining the feedback rotation angle according to a first product corresponding to the first calculated contribution degree and the motor rotation angle and a second product corresponding to the load rotation angle and the second calculated contribution degree.
Optionally, the transmission system further includes a position controller, and the step of determining the target rotation speed of the motor according to the numerical relation between the motor reference rotation angle and the feedback rotation angle includes:
determining a first difference between the motor reference angle and the feedback angle;
determining a motor rotating speed instruction according to the first difference value and a first gain corresponding to the position controller;
updating the motor rotating speed command according to the motor reference rotating angle and the load rotating speed;
and determining the target rotating speed based on the updated motor rotating speed command.
Optionally, the step of updating the motor rotation speed command according to the motor reference rotation angle and the load rotation speed includes:
performing differential processing on the motor reference rotation angle to determine a motor reference rotation speed;
determining a load rotation speed difference value according to the motor reference rotation speed and the load rotation speed;
and updating the motor rotating speed command based on the load rotating speed difference value.
Optionally, the transmission system further includes a speed controller, and the step of adjusting the actual rotational speed of the motor according to the numerical relationship between the target rotational speed and the actual rotational speed of the motor includes:
determining a second difference based on the target rotational speed and the actual rotational speed of the motor;
determining a motor torque command according to the second difference value and a second gain corresponding to the speed controller;
and adjusting the actual rotating speed of the motor to the target rotating speed based on the motor torque command.
Optionally, after the step of adjusting the actual rotational speed of the motor to the target rotational speed based on the motor torque command, the method includes:
controlling the motor to execute a driving action based on the motor torque command;
simulating based on the target motor rotating speed corresponding to the execution result, and determining the counter moment of the transmission module corresponding to the current system;
and updating the load rotation angle according to the counter moment.
In addition, the application also provides motor control equipment, which comprises a memory, a processor and a motor control program stored on the memory and capable of running on the processor, wherein the processor realizes the steps of the motor control method when executing the motor control program.
Furthermore, the present application proposes a computer-readable storage medium, on which a motor control program is stored, which when executed by a processor implements the steps of the motor control method as described above.
One or more technical solutions provided in the embodiments of the present application at least have the following technical effects or advantages:
1. due to the fact that a first calculated contribution degree corresponding to a motor rotation angle of the motor and a second calculated contribution degree corresponding to a load rotation angle of the load end are determined according to a time constant corresponding to the current moment, when the second calculated contribution degree tends to a first target value, the transmission system tends to be in full-closed loop control, and when the second calculated contribution degree tends to a second target value, the transmission system tends to be in semi-closed loop control; determining a feedback angle for the motor according to the motor angle, the load angle, the first calculated contribution and the second calculated contribution; determining a target rotating speed of the motor according to a numerical relation between a reference rotating angle of the motor and the feedback rotating angle; and adjusting the actual rotating speed of the motor according to the numerical relation between the target rotating speed and the actual rotating speed of the motor. The technical problems that the nonlinear characteristic of the harmonic reducer is brought into closed-loop control in the related art, and the servo performance of the motor is affected are solved, and the technical effects of improving the position control precision and suppressing vibration are achieved at the same time.
2. The motor reference rotation angle is subjected to differential processing, so that the motor reference rotation speed is determined; determining a load rotation speed difference value according to the motor reference rotation speed and the load rotation speed; and updating the motor rotating speed command based on the load rotating speed difference value. The technical problem that the dynamic characteristics of the system are unstable and vibration is caused due to the fact that the system is easy to work near the resonance frequency in the related technology is solved, and further the amplitude gain at the resonance frequency of the system is reduced, so that the vibration is restrained under the condition of uniform low-speed movement.
Drawings
Fig. 1 is a schematic flow chart of a first embodiment of a motor control method of the present application;
FIG. 2 is a block diagram of a motor control system according to a first embodiment of the motor control method of the present application;
fig. 3 is a schematic flow chart of a third embodiment of a motor control method of the present application;
fig. 4 is a schematic flow chart of a fourth embodiment of a motor control method of the present application;
FIG. 5 is a closed loop Bode plot of motor torque versus load angle for a seventh embodiment of a motor control method of the present application;
FIG. 6 is a graph showing load speed fluctuation curves in a seventh embodiment of a motor control method according to the present application;
fig. 7 is a schematic diagram of a hardware structure related to an embodiment of a motor control device of the present application.
Detailed Description
In the related art, the semi-closed loop position control of the rotation angle information of the motor shaft is the most commonly used control mode, and in the semi-closed loop control, the rotation angle information feedback of a load end is absent, the rotation angle information feedback from the motor to the load is equivalent to open loop control, and the angle transmission error is caused due to the nonlinear characteristic of the harmonic reducer. To improve the position control accuracy, full closed loop control is generally used instead of semi-closed loop control. The full closed loop control feeds back the real corner error to the position controller through the linear encoder at the load end, so that the position control precision is improved. But the fully closed loop control also incorporates the nonlinear characteristics of the harmonic reducer into the closed loop control, thus degrading servo performance. The main technical scheme adopted by the embodiment of the application is as follows: determining the calculated contribution degrees of the full closed loop control and the semi closed loop control based on the time constant, namely determining the calculated contribution degrees corresponding to the motor rotation angle and the load rotation angle; and then determining a feedback rotation angle according to the calculated contribution degree, further determining a target rotation speed corresponding to the motor rotation speed command according to the numerical relation between the feedback rotation angle and the motor reference rotation angle, and adjusting the motor rotation speed according to the difference between the target rotation speed and the actual rotation speed. Thereby realizing the technical effect of vibration suppression while improving the position control precision.
In order to better understand the above technical solution, exemplary embodiments of the present application will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present application are shown in the drawings, it should be understood that the present application can be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
Example 1
An embodiment of the application discloses a motor control method, referring to fig. 1, suitable for a transmission system, where the transmission system includes a motor and a load end, and the motor control method includes:
step S110, determining a first calculated contribution degree corresponding to a motor rotation angle of the motor and a second calculated contribution degree corresponding to a load rotation angle of the load end according to a time constant corresponding to the current moment, wherein the transmission system tends to be in full-closed loop control when the second calculated contribution degree tends to be in a first target value, and the transmission system tends to be in semi-closed loop control when the second calculated contribution degree tends to be in a second target value.
In this embodiment, the weights of the semi-closed loop and fully-closed loop control in the dual-loop position feedback are changed mainly by modifying the value of the time constant. The time constant is a parameter, the calculated contribution degrees corresponding to the motor rotation angle of the motor and the load rotation angle of the load end are determined according to the time constant corresponding to the current moment, when the second calculated contribution degree corresponding to the load rotation angle tends to the first target value, the current system tends to the full-closed loop control, and when the second calculated contribution degree corresponding to the load rotation angle tends to the second target value, the current system tends to the semi-closed loop control. The calculated contribution is a coefficient of the motor rotation angle and the load rotation angle in the feedback rotation angle calculation function. The feedback rotation angle calculation function is a function taking a motor rotation angle and a load rotation angle as parameters, taking calculated contribution degrees respectively corresponding to the motor rotation angle and the load rotation angle as coefficients, and taking the feedback rotation angle as output.
As an alternative embodiment, the first target value is 1 and the second target value is 0.
As another alternative embodiment, the first target value is a and the second target value is 1-a.
As another alternative embodiment, the sum of the first target value and the second target value is 1.
In this embodiment, the current time is the time at which the motor control method is executed, that is, the time value corresponding to the current time point.
In this embodiment, the current system is a transmission system, and the transmission system is composed of a driving motor, a transmission module and a load end, where the driving motor outputs energy to the transmission module, and then drives the load end to execute corresponding actions through the transmission module.
As an alternative implementation manner, a feedback rotation angle calculation function corresponding to the feedback rotation angle is determined, and respective coefficients are determined as corresponding calculated contribution degrees according to the motor rotation angle and the load rotation angle in the feedback rotation angle calculation function as independent variables, wherein the coefficients consist of a time constant and a fixed value. Therefore, after the time constant is determined, the time constant is brought into the coefficient, and a first calculated contribution degree corresponding to the motor rotation angle and a second calculated contribution degree corresponding to the load rotation angle are respectively determined.
Illustratively, the first coefficient is determined with a combination of 1 and a time constant as denominator, the time constant as numerator; the second coefficient is determined with the combination of 1 and the time constant as denominator, 1 as numerator. And taking the first coefficient as the calculated contribution of the motor rotation angle and the second coefficient as the calculated contribution of the load rotation angle.
Step S120, determining a feedback rotation angle for the motor according to the motor rotation angle, the load rotation angle, the first calculated contribution degree, and the second calculated contribution degree.
In this embodiment, the motor rotation angle refers to an actual rotation angle of the motor, the load rotation angle refers to an actual rotation angle of the load end, and the feedback rotation angle is a rotation angle value calculated based on the motor rotation angle, the load rotation angle, the first calculated contribution degree and the second calculated contribution degree, and is used for comparing with an input motor reference rotation angle.
As an optional implementation manner, after determining the first calculated contribution degree corresponding to the motor rotation angle and the second calculated contribution degree corresponding to the load rotation angle, determining values corresponding to the motor rotation angle and the load rotation angle based on the encoder and/or the simulation data, and substituting the values into the feedback rotation angle calculation function according to the motor rotation angle, the load rotation angle and the calculated contribution degrees respectively corresponding to the motor rotation angle and the load rotation angle to determine the feedback rotation angle.
Step S130, determining the target rotating speed of the motor according to the numerical relation between the reference rotating angle of the motor and the feedback rotating angle.
In this embodiment, the motor reference rotation angle is an input rotation angle signal, that is, a rotation angle of the motor to be achieved, and the rotation angle difference value to be adjusted of the motor is determined according to the rotation angle of the motor and the load rotation angle, so that the rotation speed to be adjusted is determined, and the rotation speed adjustment is realized. The target rotation speed is an actual rotation speed value expected to be achieved by the motor according to the numerical relation between the reference rotation angle of the motor and the feedback rotation angle.
As an alternative implementation manner, the feedback rotation angle is compared with the reference rotation angle of the motor, and the comparison result is used for obtaining the motor rotation speed instruction through the position controller. And differentiating the motor reference rotation angle to obtain a motor reference rotation speed, and comparing the motor reference rotation speed with the load rotation speed to obtain a load rotation speed difference value. And updating the motor rotating speed command by using the load rotating speed difference value, namely determining the motor rotating speed command and the corresponding target rotating speed.
In this embodiment, the motor rotation speed command is a determined command for adjusting the rotation speed of the motor, and may be a rotation speed difference value, for example, increasing or decreasing the corresponding rotation speed; or a command for adjusting to the target rotation speed. The target rotating speed is determined by the position controller according to the numerical relation between the reference rotating angle of the motor and the feedback rotating angle. The motor rotation speed command and the target rotation speed can be output results of the position controller. The motor torque command is determined by the speed controller to adjust the motor speed, and the position controller outputs the motor speed command or the target speed, which is determined according to the parameter input requirement of the speed controller. The target rotational speed is a value of the motor rotational speed corresponding to the motor rotational speed command.
And step S140, adjusting the actual rotating speed of the motor according to the numerical relation between the target rotating speed and the actual rotating speed of the motor.
In this embodiment, after the updated motor rotation speed command is determined, a numerical relation between a target rotation speed corresponding to the motor rotation speed command and an actual rotation speed of the motor is determined, a motor torque command is obtained through a speed controller based on the numerical relation, and then the motor is controlled to run through the motor torque command, so as to adjust the actual rotation speed of the motor. The actual rotational speed of the motor is the actual rotational speed value of the motor at the current moment.
As an alternative implementation manner, after determining the target rotation speed corresponding to the motor according to the updated motor rotation speed command, determining a difference between the target rotation speed and the actual rotation speed of the motor, obtaining a motor torque command through a speed controller corresponding to the transmission system according to the difference, and further controlling the motor to run through the motor torque command so as to adjust the rotation speed of the motor.
The speed controller determines an output control command, namely a motor torque command, based on the input difference value through a proportional gain and an integral gain.
As another alternative implementation mode, the ratio between the target rotating speed corresponding to the motor rotating speed command and the actual rotating speed of the motor is determined, the motor torque command is obtained through the speed controller according to the ratio, and then the motor is controlled to operate through the motor torque command, so that the rotating speed of the motor is adjusted. Specifically, a torque boost magnitude is determined based on the ratio and an actual rotational speed of the motor, and a motor torque command is determined based on the torque boost magnitude and a speed controller.
In the present embodiment, the calculation contribution degrees of the motor rotation angle and the load rotation angle are determined by acquiring the time constants. And calculating a feedback rotation angle according to the calculated contribution degrees of the motor rotation angle and the load rotation angle. The value of the feedback angle may be obtained by multiplying the calculated contribution by the sum of the motor angle and the load angle. And determining a target rotating speed corresponding to the motor rotating speed command according to the numerical relation between the motor reference rotating angle and the feedback rotating angle. The target rotational speed may be calculated using proportional control or other suitable control strategies. The numerical relation between the target rotation speed and the actual rotation speed of the motor is calculated, and the numerical relation can be a difference value or a proportion. This numerical relationship may be used as a control error for the motor. And adjusting the rotating speed of the motor according to the control error. A proportional-integral-derivative controller or other suitable control algorithm may be used to calculate the new motor speed command.
Referring to fig. 2, fig. 2 is a block diagram of a motor control system, given a motor reference angle. And acquiring a motor corner and a load corner through encoders at a motor end and a load end, feeding back corner information through a basic delay time constant module, and determining a feedback corner. And then comparing the feedback rotation angle with a reference rotation angle of the motor, and obtaining a motor rotation speed instruction through a position controller according to a comparison result. And differentiating the motor reference rotation angle to obtain a motor reference rotation speed, and comparing the motor reference rotation speed with the load rotation speed to obtain a load rotation speed difference value. And updating a motor rotating speed command by using the load rotating speed difference value, and then comparing the motor rotating speed command with the actual rotating speed of the motor, namely the motor rotating speed obtained by a motor end encoder, and obtaining a motor torque command by a speed controller according to a comparison result. And driving the motor to rotate by utilizing the motor torque command to complete closed-loop control.
Wherein θ is ref For motor reference angle, θ m And theta l Motor rotation angle and load rotation angle omega respectively m And omega l Motor speed and load speed, ω, respectively ref And omega cmd Respectively a motor reference rotation speed and a motor rotation speed instruction, T l 、T s And T e Load torque, drive shaft torque and motor torque, J l And J m Load inertia and motor inertia, K s Is the axial elastic coefficient, T is the time constant, k p For the position loop ratio coefficient, k vp And k vi The velocity loop ratio coefficient and the integral coefficient are respectively.
Wherein the control object can be regarded as a dual mass system, the differential equation of which is expressed as follows:
represents the pair omega m Conduct the derivation processing, the->Represents the pair omega l Conduct the derivation processing, the->Represents the relative theta m Conduct the derivation processing, the->Represents the relative theta l And (5) conducting derivation processing. The transfer function from motor torque to motor speed is expressed as follows:
the transfer function from motor torque to load speed is expressed as follows:
from equations (2) and (3), the system has a resonant frequency f NTF And antiresonance frequency f ARF The expression is as follows:
when the system frequency reaches the antiresonant frequency, the energy input into the motor immediately flows into the load, so that the energy is converted between the kinetic energy at the load side and the elastic potential energy between the shafts, and the load vibrates. Particularly in a system with large load inertia and small elastic coefficient, the antiresonance frequency is lower and is within the control bandwidth of the system, which is one of the reasons why the cooperative robot can vibrate under the condition of uniform low-speed motion.
The value of the time constant can be changed to change the feedback rotation angle information through a basic delay time constant module by using rotation angle information acquired by the motor end encoder and the load end encoder. The method combines the stability of semi-closed loop control and the position control precision of full-closed loop control, can realize high-precision position control on the premise of ensuring the stability of a system, and simultaneously suppresses vibration by utilizing the rotating speed feedback of a load end.
In the present embodiment, the half-closed loop control of the position is detected from the motor side and the full-closed loop control based on the load side linear encoder. In the semi-closed loop control, since the nonlinear device is not included in the closed loop, high gain control can be realized, and the full-closed loop control improves control accuracy by compensating for a position error which cannot be controlled by the semi-closed loop. The dual loop position control uses a base delay time constant module to change the specific gravity occupied by the semi-closed loop control and the full-closed loop control, and the time constant can be adjusted according to the actual system response. In addition, the amplitude gain at the resonance frequency of the system is reduced by using the difference value between the rotation speed information of the load end and the reference rotation speed as feedback, and the vibration is restrained under the condition of uniform low-speed movement.
The technical scheme in the embodiment of the application at least has the following technical effects or advantages:
due to the fact that the calculated contribution degrees corresponding to the motor rotation angle and the load rotation angle are determined according to the time constant corresponding to the current moment; determining a feedback rotation angle according to the motor rotation angle, the load rotation angle and the calculated contribution; determining a target rotating speed according to a numerical relation between a reference rotating angle of the motor and the feedback rotating angle; and adjusting the motor rotation speed according to the numerical relation between the target rotation speed and the actual motor rotation speed. The technical problems that the nonlinear characteristic of the harmonic reducer is brought into closed-loop control in the related art, and the servo performance of the motor is affected are solved, and the technical effects of improving the position control precision and suppressing vibration are achieved at the same time.
Based on the first embodiment, a second embodiment of the present application provides a motor control method, and step S110 includes:
step S210, determining the time constant based on vibration data acquired at the current time.
In this embodiment, the vibration data is system vibration data collected by a sensor provided on the transmission system. That is, the time constant is adjusted according to the vibration data as an actual system response, and the proportion of the semi-closed loop control to the full-closed loop control is adjusted by adjusting the time constant.
As an alternative implementation, a vibration reference value is determined, vibration data of the transmission system and a historical time constant are obtained, a time constant difference value is determined according to the difference value between the vibration data and the vibration reference value, and then the time constant is determined according to the time constant difference value and the historical time constant.
For example, when the vibration data is less than the vibration reference value, it indicates that the system vibration is too small, and the proportion of the full closed loop control can be appropriately increased to improve the position accuracy, i.e. reduce the time constant. When the vibration data is larger than the vibration reference value, the system is excessively vibrated, and the proportion of semi-closed loop control can be properly increased to improve the position accuracy, namely the time constant is increased.
And step S220, determining the first calculated contribution degree and the second calculated contribution degree according to the time constant.
In this embodiment, based on a feedback rotation angle calculation function corresponding to a feedback rotation angle, a motor rotation angle coefficient and a load rotation angle coefficient are determined, and a time constant is brought into the motor rotation angle coefficient and the load rotation angle coefficient to respectively determine a first calculated contribution degree corresponding to the motor rotation angle and a second calculated contribution degree corresponding to the load rotation angle.
As an alternative embodiment, the sum of the first calculated contribution and the second calculated contribution is one.
As an alternative embodiment, vibration data generated by the motor and the load end during operation is collected. The vibration data is preprocessed, including denoising, filtering, etc., to obtain a clear vibration signal. The vibration signal is subjected to a spectral analysis using a signal processing algorithm, such as fourier transform or wavelet transform. And based on the analysis result as vibration data. And setting a weighted proportion of the first calculated contribution degree corresponding to the motor rotation angle and the second calculated contribution degree corresponding to the load rotation angle according to actual requirements and requirements. And hooking the first calculated contribution degree and the second calculated contribution degree with the time constant according to the value of the time constant. The hooking can be performed using linear relationships, power function relationships, and the like. Proper normalization processing is carried out to ensure that the sum of calculated contribution degrees is equal to 1.
Exemplary, the motor rotation angle coefficient isLoad rotation angle coefficient is->
For example, regarding the basic delay time constant module, the weights of the semi-closed loop and the fully-closed loop control in the double-loop position feedback are changed mainly by modifying the value of the time constant T, and the implementation principle is as follows:
when the time constant T → infinity, θ feed =Δθ-θ m =0*(θ ml )-θ m =-θ m This corresponds to semi-closed loop control.
When the time constant T-0, θ feed =Δθ-θ m =1*(θ ml )-θ m =-θ l This corresponds to the full closed loop control. θ feed Is the feedback rotation angle.
Therefore, the proper time constant T can be selected, so that the double-loop position feedback control can achieve an ideal control effect by combining the stability of semi-closed loop control and the position control precision of full-closed loop control.
Optionally, step S210 includes:
step S211, a history time constant is acquired.
In the present embodiment, the history time constant is a time constant used at the previous time.
Step S212, collecting the vibration data of the transmission system based on the current moment;
step S213, updating the historical time constant based on the difference between the vibration data and the vibration reference value, and determining the time constant.
As an alternative, a variable or data structure is provided in the transmission system that records the historical time constant. The current time constant value is stored in a record variable or data structure each time the drive train is operated. Vibration sensors or accelerometers are installed at key locations of the drive train, such as between the motor and the load end, to collect vibration data in real time. The acquisition system is configured to set the appropriate sampling rate and sampling duration to obtain sufficiently accurate vibration data. The historical time constant is updated based on the vibration data, and the current vibration reference value is calculated using the collected vibration data and the recorded historical time constant. A sliding window or other method may be used to calculate an average or index value as the vibration reference value. The current vibration reference value is compared with the vibration reference value recorded previously, and a difference or error is calculated. Based on the difference or error, the historical time constant is updated. Depending on the situation, a weighted average, exponential smoothing or other update method may be employed to adjust the value of the time constant. The updated time constant is stored in a record variable or data structure.
The time constant is adjusted according to the vibration data, so that the calculated contribution degree of the full-closed loop and the semi-closed loop is adjusted, the problem of instability caused by nonlinear characteristics when only the full-closed loop is used is avoided, and meanwhile, the high-precision position tracking control is realized.
Based on the first embodiment, a third embodiment of the present application proposes a motor control method, referring to fig. 3, step S120 includes:
and step S310, determining the motor rotation angle and the load rotation angle based on encoder data and/or simulation data acquired at the current moment.
In this embodiment, the encoder data is data collected by encoders disposed at the motor end and the load end, and is used to determine the motor rotation angle at the motor end and the load rotation angle at the load end. The simulation data is data obtained by a simulation test by the system shown in fig. 2.
As an alternative embodiment, encoder data and/or simulation data is acquired, and actual motor angle data is read from the motor drive or encoder. If no actual data is available, simulation software may be used to generate motor rotation angle data. The angular information of the load is measured using a gyroscope or other sensor. If no actual data is available, load corner data is generated using simulation software. And determining the motor rotation angle and the load rotation angle, and calculating the value of the motor rotation angle by using encoder data and/or simulation data. This can be calculated by reading the encoder pulse number and using the resolution of the encoder. If there is data for the load angle, the load angle can be used directly. If there is no data for the load angle, the load angle can be considered as a fixed value.
Step S320, determining the feedback rotation angle according to a first product corresponding to the first calculated contribution degree and the motor rotation angle, and a second product corresponding to the load rotation angle and the second calculated contribution degree.
In this embodiment, a feedback rotation angle is determined, and a value of the feedback rotation angle is calculated using the determined first calculated contribution corresponding to the motor rotation angle, the determined second calculated contribution corresponding to the load rotation angle, and the motor rotation angle and the load rotation angle. The first product is the product of the two values of the first calculated contribution and the motor angle, and the second product is the product of the two values of the load angle and the second calculated contribution.
As an alternative embodiment, the feedback rotation angle is determined according to the motor rotation angle, the first calculated contribution degree corresponding to the motor rotation angle, the load rotation angle, and the second calculated contribution degree corresponding to the load rotation angle.
For example, a first product is determined based on the motor angle and the first calculated contribution, a second product is determined based on the load angle and the second calculated contribution, and a feedback angle is determined based on a sum of the first product and the second product.
The data source can be encoder data cooperation and simulation data, so that the motor rotation angle and the load rotation angle are determined; and determining a feedback rotation angle according to the first calculated contribution degree, the second calculated contribution degree, the motor rotation angle and the load rotation angle. The method has the advantages that the data sources are various, meanwhile, in the transmission system, the reaction force of the transmission module between the motor and the load end, such as the transmission rod, is considered, the output load rotation angle is adjusted, and the accuracy of the finally calculated motor torque command is improved.
Based on the first embodiment, a fourth embodiment of the present application proposes a motor control method, referring to fig. 4, step S130 includes:
step S410, determining a first difference between the motor reference angle and the feedback angle.
In this embodiment, the feedback rotation angle is not a single motor rotation angle or load rotation angle, but is determined by integrating the motor rotation angle, the load rotation angle and the vibration of the system, and is used for comparing with the motor reference rotation angle.
As an alternative embodiment, the difference between the motor reference angle and the feedback angle is calculated, i.e. the first difference. The feedback rotation angle value can be calculated from the reference rotation angle value by subtracting the feedback rotation angle value: first difference = reference rotation angle-feedback rotation angle.
Step S420, determining a motor rotation speed command according to the first difference and a first gain corresponding to the position controller.
In this embodiment, the transmission system further includes a position controller, which is a device for controlling the mechanical system or the motor, and which functions to generate a control command based on a difference between the current position of the system and the target position so that the system or the motor can be moved to the target position.
As an alternative implementation manner, the motor rotation speed command is determined, the first gain corresponding to the position controller is used, and the first difference value is multiplied by the first gain to obtain the motor rotation speed command. The method is realized by proportion control: motor speed command = first gain x first difference. At this time, the first gain is a proportional gain.
And step S430, updating the motor rotating speed command according to the motor reference rotating angle and the load rotating speed.
In the present embodiment, the motor rotation speed command is updated according to the motor reference rotation angle and the load rotation speed. The load rotational speed is the rotational speed of the load end. The load rotation speed can be obtained by differential processing according to the load rotation angle. The load rotation speed can also be directly output according to the encoder data of the load end.
As an alternative, if a measure of the load speed is available, the motor speed command is corrected using the load speed in relation to the motor reference angle. For example, if the load speed is high, the motor speed command is reduced by a certain proportion. If the load rotation speed is lower, the motor rotation speed command is increased by a certain proportion. The specific relationships and proportions may be adjusted according to the characteristics and requirements of the system.
As an alternative embodiment, the load rotation speed is reduced based on a preset proportion, the motor reference rotation speed is determined according to the motor reference rotation angle, and the motor rotation speed command is updated according to the motor reference rotation speed and the load rotation speed.
Step S440, determining the target rotation speed based on the updated motor rotation speed command.
In the present embodiment, the target rotational speed is calculated based on the updated motor rotational speed instruction. And determining a target rotating speed corresponding to the motor rotating speed command according to the updated motor rotating speed command and the motor performance parameter.
As an alternative embodiment, the angular velocity value corresponding to the motor rotation speed command is taken as the target rotation speed.
Optionally, step S430 includes:
step S431, performing differential processing on the motor reference rotation angle, and determining a motor reference rotation speed.
In this embodiment, the motor reference rotational speed is determined by differentiating according to the motor reference rotational angle, and the motor reference rotational speed is the angular speed for the motor corresponding to the motor reference rotational angle. And determining the motor reference rotation speed by calculating the change rate of the motor reference rotation angle, namely the difference of the motor reference rotation angles. The difference is calculated by dividing the difference between the motor reference angles at two successive points in time by the time interval.
Step S432, determining a load rotation speed difference according to the motor reference rotation speed and the load rotation speed.
In this embodiment, the load rotation speed difference is determined according to the motor reference rotation speed and the load rotation speed, and the motor rotation speed command is updated using the difference between the load rotation speed and the motor reference rotation speed. The load speed difference may be calculated from the load speed by subtracting the motor reference speed value. I.e. the load rotational speed difference is the difference between the two values of the motor reference rotational speed and the load rotational speed.
As an alternative embodiment, it is determined to reduce the load rotation speed based on a preset ratio, a rotation speed reduction value is determined, and a difference between the rotation speed reduction value and the motor reference rotation speed is determined as the load rotation speed difference.
The motor reference speed is subtracted by a speed reduction value, and the load speed difference is obtained according to the obtained difference.
Step S433 updates the motor rotation speed command based on the load rotation speed difference.
In the present embodiment, the motor rotation speed command is updated based on the load rotation speed difference value, and the motor rotation speed command is corrected using the load rotation speed difference value. The updated motor speed command may be obtained by multiplying the load speed difference by a certain gain. The value of the gain can be adjusted according to the characteristics and requirements of the system.
In this embodiment, the motor reference rotation speed is determined by differentiating according to the motor reference rotation angle, the load rotation speed difference is determined according to the motor reference rotation speed and the load rotation speed, and then the motor rotation speed command is updated based on the load rotation speed difference. The motor rotating speed command is adaptively adjusted according to the change of the load, so that the stability and the performance of the system are maintained.
As an alternative implementation manner, after the load rotation speed difference value is determined, a third product is determined according to the load rotation speed difference value and the proportional gain corresponding to the position controller, and summation processing is performed according to the third product and the motor rotation speed instruction before updating, so as to determine the updated motor rotation speed instruction.
Determining a motor rotation speed reference by adopting difference according to the motor reference rotation angle; determining a load rotation speed difference value according to the motor rotation speed reference and the load rotation speed; and updating the motor rotating speed command based on the load rotating speed difference value. The technical problem that the dynamic characteristics of the system are unstable and vibration is caused due to the fact that the system is easy to work near the resonance frequency in the related technology is solved, and further the amplitude gain at the resonance frequency of the system is reduced, so that the vibration is restrained under the condition of uniform low-speed movement.
Based on the first embodiment, a fifth embodiment of the present application provides a motor control method, and step S140 includes:
step S510, determining a second difference value based on the target rotation speed and the actual rotation speed of the motor.
In the present embodiment, the difference between the target rotation speed and the obtained actual rotation speed of the motor is used as the second difference. The actual motor speed and the load speed are likewise determined from the encoder data and/or the simulation data.
And step S520, determining a motor torque command according to the second difference value and a second gain corresponding to the speed controller.
In this embodiment, the torque control mode is to set the output torque of the motor shaft to the outside through the input of the external analog quantity or the direct assignment of the address, and the motor torque command is to control the output torque of the motor shaft to the outside. The transmission system also comprises a speed controller which generates a control signal according to the input expected rotating speed of the motor and the actual rotating speed of the motor so as to adjust the rotating speed of the motor to reach the expected rotating speed.
As an alternative embodiment, the second difference, the rotational speed difference to be adjusted, is based on which the motor torque command is determined by a mapping function in the speed controller.
As another alternative, the motor torque command is determined based on the second difference, a proportional gain corresponding to the speed controller, and an integral gain corresponding to the speed controller.
Step S530, adjusting the actual rotation speed of the motor to the target rotation speed based on the motor torque command.
In this embodiment, the motor is controlled to operate by a motor torque command to adjust the actual rotational speed of the motor to reach the target rotational speed.
As an alternative implementation, the target rotation speed is target_speed, the actual rotation speed of the motor is actual_speed, and the output of the controller is output. And determining a second difference value based on the target rotating speed and the motor rotating speed, and calculating the difference value between the target rotating speed and the actual rotating speed of the motor, and recording the difference value as speed_error. The second difference, the difference in velocity error, is calculated and is denoted d_error. d_error=speed_error-previous_speed_error, previous_speed_error approaches speed_error. And determining a motor torque command according to the second difference value and the speed controller, and calculating a controller output value by using the speed controller, and recording the controller output value as output. output=kp speed_error+ki x simultaneous_error+kd_d_error, where Kp, ki and Kd are proportional, integral and differential gain parameters, respectively. Wherein the simultaneous_error approaches speed_error. And adjusting the motor rotating speed to the target rotating speed based on the motor torque command, and adjusting the driving force or torque of the motor according to the motor torque command so as to gradually approach the actual rotating speed of the motor to the target rotating speed.
In the present embodiment, a controller output value is calculated using a speed controller based on a difference between a target rotational speed and an actual rotational speed of the motor, and the actual rotational speed of the motor is adjusted using the output value as a motor torque command. And further realizing the accurate control of the actual rotating speed of the motor, so that the motor gradually reaches the preset target rotating speed.
Based on the fifth embodiment, a method for controlling a motor is provided in the sixth embodiment, after step S530, including:
step S610, controlling the motor to execute a driving action based on the motor torque command.
In this embodiment, in the simulation system, since there is no rotation angle data of the load end, it is necessary to obtain the load rotation angle through simulation, and the motor is a power module for driving the transmission module in the transmission system. The motor drives the transmission module through output torque, and then drives the load end to execute action. The transmission module is a connection structure between the motor and the load end for force transmission.
As an alternative embodiment, the motor is controlled to perform a driving action based on the motor torque command, and the motor is controlled to perform a corresponding driving action based on the motor torque command. In the simulation system, after the rotating speed of the motor is determined according to the motor torque command, the rotating angle of the motor is obtained through difference; and further, the load rotation angle is determined by carrying out differential processing on the motor rotation speed and combining the load gain and the load torque. I.e. the execution result of the motor torque command is simulated.
And step S620, performing simulation based on the target motor rotating speed corresponding to the execution result, and determining the counter moment of the transmission module corresponding to the current system.
In this embodiment, the actual motor speed corresponding to the execution result is determined as the target motor speed, and simulation is performed based on the target motor speed and the load speed corresponding to the execution result, so as to obtain the counter torque of the transmission module.
As an alternative embodiment, the intermediate quantity is determined by integrating and gain based on the difference between the target motor speed and the load speed; and determining the counter moment of the transmission module through the intermediate quantity and the torque of the transmission module. Wherein the drive module may be a drive shaft.
Step S630, updating the load rotation angle according to the counter moment.
In this embodiment, after determining the counter moment of the transmission module by the simulation system, the load corner obtained by simulation subtracts the counter moment to obtain the updated load corner.
As an alternative embodiment, the motor is controlled to perform a driving action based on the motor torque command, and the motor is controlled to perform a corresponding driving action based on the motor torque command. And simulating based on the target motor rotation speed corresponding to the execution result, determining the counter moment of the transmission module corresponding to the current system, and using the obtained target motor rotation speed as an input parameter to simulate the transmission module. In the simulation, the working process of the transmission module is simulated, and the output condition of the transmission module, including the load rotation angle and the counter moment of the transmission module, is obtained according to the input target motor rotation speed. And updating the load corner according to the counter moment, and updating the load corner according to the counter moment of the transmission module obtained through simulation. load_angle=previous_load_angle+torque_step, where previous_load_angle is the load angle at the previous time, torque is the counter torque of the transmission module, and time_step is the simulated time step. I.e. the product of the load angle, the counter moment and the time step determined from the execution result, the sum of which determines the load angle for output.
In this embodiment, the load rotation angle is obtained by using a simulation method. After the rotating speed of the motor is adjusted to the target rotating speed, the counter moment of the transmission module is determined through simulating the working process of the transmission module, and then the load rotating angle is updated. The working condition of the system is more accurately simulated, and a basis is provided for subsequent control and optimization.
Based on the first embodiment, the seventh embodiment of the present application proposes a motor control method, after adjusting the motor rotation speed according to the numerical relation between the target rotation speed and the actual rotation speed of the motor, for the situation of uniform low-speed shake of the cooperative robot, the present embodiment performs difference comparison by using the load rotation speed and the motor reference rotation speed, and updates the motor rotation speed command by using the load rotation speed difference, where the load rotation speed is the load rotation speed feedback. The closed loop bode plot from motor torque to load angle after the control system has not induced load speed and has induced load speed is shown in fig. 5. Wherein the solid line is the amplitude-frequency characteristic curve of the induced load rotation speed, and the broken line is the amplitude-frequency characteristic curve of the non-induced load rotation speed. It can be seen that after the load speed is introduced, the resonant frequency of the system becomes large and the resonant peak is reduced.
In order to verify the effectiveness of the load rotation speed on vibration suppression, simulation verification is performed in Matlab Simulink. Fig. 6 is a speed curve of the load when the load speed is not introduced and the load speed is introduced, wherein the solid line is a load speed curve of the introduced load speed and the broken line is a load speed curve of the non-introduced load speed. It can be seen that the load speed feedback method has a remarkable suppression effect on the speed vibration under the even low speed condition.
The application further provides a motor control device, referring to fig. 7, and fig. 7 is a schematic structural diagram of the motor control device in a hardware operation environment according to an embodiment of the application.
As shown in fig. 7, the motor control apparatus may include: a processor 1001, such as a central processing unit (Central Processing Unit, CPU), a communication bus 1002, a user interface 1003, a network interface 1004, a memory 1005. Wherein the communication bus 1002 is used to enable connected communication between these components. The user interface 1003 may include a Display, an input unit such as a Keyboard (Keyboard), and the optional user interface 1003 may further include a standard wired interface, a wireless interface. The network interface 1004 may optionally include a standard wired interface, a WIreless interface (e.g., a WIreless-FIdelity (WI-FI) interface). The Memory 1005 may be a high-speed random access Memory (Random Access Memory, RAM) Memory or a stable nonvolatile Memory (NVM), such as a disk Memory. The memory 1005 may also optionally be a storage device separate from the processor 1001 described above.
It will be appreciated by those skilled in the art that the configuration shown in fig. 7 is not limiting of the motor control apparatus and may include more or fewer components than shown, or certain components may be combined, or a different arrangement of components.
Optionally, the memory 1005 is electrically connected to the processor 1001, and the processor 1001 may be configured to control operation of the memory 1005, and may also read data in the memory 1005 to implement motor control.
Alternatively, as shown in fig. 7, an operating system, a data storage module, a network communication module, a user interface module, and a motor control program may be included in the memory 1005 as one storage medium.
Optionally, in the motor control device shown in fig. 7, the network interface 1004 is mainly used for data communication with other devices; the user interface 1003 is mainly used for data interaction with a user; the processor 1001 and the memory 1005 in the motor control apparatus of the present application may be provided in the motor control apparatus.
As shown in fig. 7, the motor control apparatus calls, through the processor 1001, a motor control program stored in the memory 1005, and performs the relevant step operations of the motor control method provided in the embodiment of the present application:
determining a first calculated contribution degree corresponding to a motor rotation angle of the motor and a second calculated contribution degree corresponding to a load rotation angle of the load end according to a time constant corresponding to the current moment, wherein when the second calculated contribution degree tends to a first target value, the transmission system tends to be in full-closed loop control, and when the second calculated contribution degree tends to a second target value, the transmission system tends to be in semi-closed loop control;
Determining a feedback angle for the motor from the motor angle, the load angle, the first calculated contribution, and the second calculated contribution;
determining a target rotating speed of the motor according to a numerical relation between a reference rotating angle of the motor and the feedback rotating angle;
and adjusting the actual rotating speed of the motor according to the numerical relation between the target rotating speed and the actual rotating speed of the motor.
Alternatively, the processor 1001 may call a motor control program stored in the memory 1005, and also perform the following operations:
determining the time constant based on vibration data acquired at the current moment;
and determining the first calculated contribution degree and the second calculated contribution degree according to the time constant.
Alternatively, the processor 1001 may call a motor control program stored in the memory 1005, and also perform the following operations:
acquiring a historical time constant;
collecting the vibration data of the transmission system based on a current moment;
updating the historical time constant based on the difference between the vibration data and the vibration reference value, and determining the time constant.
Alternatively, the processor 1001 may call a motor control program stored in the memory 1005, and also perform the following operations:
Determining the motor rotation angle and the load rotation angle based on encoder data and/or simulation data acquired at the current moment;
and determining the feedback rotation angle according to a first product corresponding to the first calculated contribution degree and the motor rotation angle and a second product corresponding to the load rotation angle and the second calculated contribution degree.
Alternatively, the processor 1001 may call a motor control program stored in the memory 1005, and also perform the following operations:
determining a first difference between the motor reference angle and the feedback angle;
determining a motor rotating speed instruction according to the first difference value and a first gain corresponding to the position controller;
updating the motor rotating speed command according to the motor reference rotating angle and the load rotating speed;
and determining the target rotating speed based on the updated motor rotating speed command.
Alternatively, the processor 1001 may call a motor control program stored in the memory 1005, and also perform the following operations:
performing differential processing on the motor reference rotation angle to determine a motor reference rotation speed;
determining a load rotation speed difference value according to the motor reference rotation speed and the load rotation speed;
and updating the motor rotating speed command based on the load rotating speed difference value.
Alternatively, the processor 1001 may call a motor control program stored in the memory 1005, and also perform the following operations:
determining a second difference based on the target rotational speed and the actual rotational speed of the motor;
determining a motor torque command according to the second difference value and a second gain corresponding to the speed controller;
and adjusting the actual rotating speed of the motor to the target rotating speed based on the motor torque command.
Alternatively, the processor 1001 may call a motor control program stored in the memory 1005, and also perform the following operations:
controlling the motor to execute a driving action based on the motor torque command;
simulating based on the target motor rotating speed corresponding to the execution result, and determining the counter moment of the transmission module corresponding to the current system;
and updating the load rotation angle according to the counter moment.
In addition, the embodiment of the application also provides a computer readable storage medium, wherein the computer readable storage medium stores a motor control program, and the motor control program realizes the relevant steps of any embodiment of the motor control method when being executed by a processor.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flowchart and/or block of the flowchart illustrations and/or block diagrams, and combinations of flowcharts and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It should be noted that in the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in a claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The application may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by one and the same item of hardware. The usage of the words first, second and third, etcetera do not indicate any ordering. These words may be interpreted as names.
While preferred embodiments of the present application have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. It is therefore intended that the following claims be interpreted as including the preferred embodiments and all such alterations and modifications as fall within the scope of the application.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present application without departing from the spirit or scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims and the equivalents thereof, the present application is intended to cover such modifications and variations.

Claims (10)

1. A motor control method, characterized by being applied to a transmission system, the transmission system including a motor and a load side, the motor control method comprising:
determining a first calculated contribution degree corresponding to a motor rotation angle of the motor and a second calculated contribution degree corresponding to a load rotation angle of the load end according to a time constant corresponding to the current moment, wherein when the second calculated contribution degree tends to a first target value, the transmission system tends to be in full-closed loop control, and when the second calculated contribution degree tends to a second target value, the transmission system tends to be in semi-closed loop control;
Determining a feedback angle for the motor from the motor angle, the load angle, the first calculated contribution, and the second calculated contribution;
determining a target rotating speed of the motor according to a numerical relation between a reference rotating angle of the motor and the feedback rotating angle;
and adjusting the actual rotating speed of the motor according to the numerical relation between the target rotating speed and the actual rotating speed of the motor.
2. The motor control method according to claim 1, wherein the step of determining a first calculated contribution corresponding to a motor rotation angle of the motor and a second calculated contribution corresponding to a load rotation angle of the load side according to a time constant corresponding to a current time includes:
determining the time constant based on vibration data acquired at the current moment;
and determining the first calculated contribution degree and the second calculated contribution degree according to the time constant.
3. The motor control method according to claim 2, wherein the step of determining the time constant based on vibration data acquired at the present time includes:
acquiring a historical time constant;
collecting the vibration data of the transmission system based on a current moment;
Updating the historical time constant based on the difference between the vibration data and the vibration reference value, and determining the time constant.
4. The motor control method of claim 1, wherein the step of determining a feedback angle for the motor from the motor angle, the load angle, the first calculated contribution, and the second calculated contribution comprises:
determining the motor rotation angle and the load rotation angle based on encoder data and/or simulation data acquired at the current moment;
and determining the feedback rotation angle according to a first product corresponding to the first calculated contribution degree and the motor rotation angle and a second product corresponding to the load rotation angle and the second calculated contribution degree.
5. The motor control method according to claim 1, wherein the transmission system further includes a position controller, and the step of determining the target rotational speed of the motor based on a numerical relationship between a motor reference rotational angle and the feedback rotational angle includes:
determining a first difference between the motor reference angle and the feedback angle;
determining a motor rotating speed instruction according to the first difference value and a first gain corresponding to the position controller;
Updating the motor rotating speed command according to the motor reference rotating angle and the load rotating speed;
and determining the target rotating speed based on the updated motor rotating speed command.
6. The motor control method according to claim 5, wherein the step of updating the motor rotation speed command based on the motor reference rotation angle and the load rotation speed includes:
performing differential processing on the motor reference rotation angle to determine a motor reference rotation speed;
determining a load rotation speed difference value according to the motor reference rotation speed and the load rotation speed;
and updating the motor rotating speed command based on the load rotating speed difference value.
7. The motor control method of claim 1, wherein the transmission system further comprises a speed controller, and the step of adjusting the actual rotational speed of the motor based on a numerical relationship between the target rotational speed and the actual rotational speed of the motor comprises:
determining a second difference based on the target rotational speed and the actual rotational speed of the motor;
determining a motor torque command according to the second difference value and a second gain corresponding to the speed controller;
and adjusting the actual rotating speed of the motor to the target rotating speed based on the motor torque command.
8. The motor control method according to claim 7, characterized in that after the step of adjusting the actual rotational speed of the motor to the target rotational speed based on the motor torque command, it includes:
controlling the motor to execute a driving action based on the motor torque command;
simulating based on the target motor rotating speed corresponding to the execution result, and determining the counter moment of the transmission module corresponding to the current system;
and updating the load rotation angle according to the counter moment.
9. A motor control apparatus comprising a memory, a processor and a motor control program stored on the memory and executable on the processor, the processor implementing the steps of the motor control method according to any one of claims 1 to 8 when the motor control program is executed.
10. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon a motor control program which, when executed by a processor, implements the steps of the motor control method according to any one of claims 1 to 8.
CN202311637390.9A 2023-11-30 2023-11-30 Motor control method, apparatus, and readable storage medium Pending CN117639615A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311637390.9A CN117639615A (en) 2023-11-30 2023-11-30 Motor control method, apparatus, and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311637390.9A CN117639615A (en) 2023-11-30 2023-11-30 Motor control method, apparatus, and readable storage medium

Publications (1)

Publication Number Publication Date
CN117639615A true CN117639615A (en) 2024-03-01

Family

ID=90024948

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311637390.9A Pending CN117639615A (en) 2023-11-30 2023-11-30 Motor control method, apparatus, and readable storage medium

Country Status (1)

Country Link
CN (1) CN117639615A (en)

Similar Documents

Publication Publication Date Title
JP6490127B2 (en) Machine learning device, servo control device, servo control system, and machine learning method
JP6499720B2 (en) Machine learning device, servo control device, servo control system, and machine learning method
EP3023208B1 (en) Control device for motor drive device, control device for multi-axial motor, and control method for motor drive device
CN103270692A (en) Motor control device
JP5113862B2 (en) Motor control device
CN108693833A (en) Machine learning device, Servocontrol device and system and machine learning method
JP6841801B2 (en) Machine learning equipment, control systems and machine learning methods
CN107016208A (en) A kind of industrial robot external force method of estimation based on shake control
WO2017203987A1 (en) Parameter identification device, motor control system, parameter identification method, and program
CN113489404B (en) Robust bounded control method for permanent magnet linear motor with inequality constraint
CN114260892A (en) Elastic joint torque control method and device, readable storage medium and robot
CN117639615A (en) Motor control method, apparatus, and readable storage medium
CN111722530B (en) Machine learning device, control system, and machine learning method
JP6856591B2 (en) Control device, CNC device and control method of control device
CN116372926A (en) Robot joint motion compensation method, system and storage medium
TWI752720B (en) Electronic device and control method thereof
WO2020162200A1 (en) Control device and control program
JP2964736B2 (en) Identification method of mechanical time constant of coupling axis in two inertia system
Mendez-Flores et al. Design, implementation and nonlinear control analysis of a furuta pendulum system
JP2906255B2 (en) Servo control device
JP7331779B2 (en) Machine control system, waveform generator, waveform generation method, and waveform generation program
JP3200496B2 (en) Articulated robot controller
JP2019133537A (en) Actuator controller and actuator control method
De Jager Improving the tracking performance of mechanical systems by adaptive extended friction compensation
WO2023008236A1 (en) Operation adjustment system, motor control system, operation adjustment method, and operation adjustment program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination