Motor control method, motor control device, motor control system, and storage medium

文档序号:1849376 发布日期:2021-11-16 浏览:10次 中文

阅读说明:本技术 电机的控制方法、电机的控制装置、控制系统和存储介质 (Motor control method, motor control device, motor control system, and storage medium ) 是由 王志宇 于 2021-07-28 设计创作,主要内容包括:本发明提出了一种电机的控制方法、电机的控制装置、控制系统和存储介质,控制方法包括:对电机进行第一次位置定位,并确定第一位置估计值;向电机注入预设电流,并对电机进行第二次位置定位,确定第二位置估计值;根据预设电流、第一位置估计值和第二位置估计值确定位置补偿曲线;获取电机的指令电流;根据指令电流和位置补偿曲线对电机的位置进行补偿。通过得到的位置补偿曲线实现对电机的位置进行补偿,从而使得利用高频注入算法得到的位置估计值与实际位置的偏差较小或一致,进而确保电机能够以更小的电流带相同负载运行,避免通用变频器降额运行。(The invention provides a control method of a motor, a control device of the motor, a control system and a storage medium, wherein the control method comprises the following steps: carrying out first position location on the motor, and determining a first position estimation value; injecting a preset current into the motor, carrying out second position positioning on the motor, and determining a second position estimation value; determining a position compensation curve according to the preset current, the first position estimation value and the second position estimation value; acquiring a command current of a motor; and compensating the position of the motor according to the command current and the position compensation curve. The position of the motor is compensated through the obtained position compensation curve, so that the deviation between the position estimation value obtained by utilizing a high-frequency injection algorithm and the actual position is smaller or consistent, the motor can be ensured to operate with the same load at a smaller current band, and the derating operation of a general frequency converter is avoided.)

1. A control method of a motor, characterized by comprising:

carrying out first position location on the motor, and determining a first position estimation value;

injecting a preset current into the motor, carrying out second position positioning on the motor, and determining a second position estimation value;

determining a position compensation curve according to the preset current, the first position estimation value and the second position estimation value;

acquiring a command current of the motor;

and compensating the position of the motor according to the command current and the position compensation curve.

2. The method according to claim 1, wherein the first positioning the motor and determining the first position estimate specifically comprises:

and carrying out first position location on the motor by adopting a high-frequency injection algorithm, and determining a first position estimation value.

3. The method according to claim 2, wherein the first positioning the motor by using the high frequency injection algorithm and determining the first position estimation value comprises:

injecting a high-frequency voltage signal into the d axis, demodulating a response current generated in the motor by the high-frequency voltage signal, and determining an initial position estimation value;

injecting a forward voltage pulse to the d-axis respectively, and determining a first peak value of a response current generated in the motor by the forward voltage pulse;

injecting a reverse voltage pulse into the d-axis respectively, and determining a second peak value of a response current generated in the motor by the reverse voltage pulse;

determining the polarity of the motor according to the first peak value and the second peak value;

and determining the first position estimation value according to the polarity of the motor and the initial position estimation value.

4. The method according to any one of claims 1 to 3, wherein the injecting a predetermined current into the motor, performing a second position positioning on the motor, and determining a second position estimation value specifically includes:

under the condition that the d-axis current is 0, determining a q-axis current value corresponding to the rated torque of the motor according to a motor torque formula;

injecting q-axis current corresponding to the q-axis current value into the motor, performing second position location on the motor, and determining a second position estimation value;

and the injection duration of the q-axis current is less than the preset duration.

5. The method according to claim 4, wherein the determining a position compensation curve according to the preset current, the first position estimation value, and the second position estimation value specifically includes:

the q-axis current value is IqSelecting a first point (0, 0) and a second point (I) with the first position estimation value being a and the second position estimation value being bq,b-a);

And substituting the first point and the second point into a linear equation of unity, and determining the position compensation curve.

6. The method according to claim 5, wherein the compensating the position of the motor according to the command current and the position compensation curve includes:

determining a position compensation value according to the command current and the position compensation curve;

and compensating the position of the motor according to the position compensation value.

7. A control device for an electric motor, comprising a memory storing a computer program, and a processor executing the computer program to execute the control method for an electric motor according to any one of claims 1 to 6.

8. A control device of a motor, characterized by comprising:

the positioning unit is used for carrying out first-time position positioning on the motor and determining a first position estimation value;

the injection unit is used for injecting preset current into the motor;

the positioning unit is also used for carrying out second position positioning on the motor and determining a second position estimation value;

the determining unit is used for determining a position compensation curve according to the preset current, the first position estimation value and the second position estimation value;

the acquisition unit is used for acquiring the command current of the motor;

and the compensation unit is used for compensating the position of the motor according to the command current and the position compensation curve.

9. The control device of an electric motor according to claim 8,

the positioning unit is used for carrying out first-time position positioning on the motor by adopting a high-frequency injection algorithm and determining a first position estimation value.

10. The control device of the motor according to claim 8, wherein the positioning unit includes:

the device comprises a first determination module, a second determination module and a third determination module, wherein the first determination module is used for injecting a high-frequency voltage signal into a d axis, demodulating response current generated in a motor by the high-frequency voltage signal and determining an initial position estimation value;

the first injection module is used for injecting a forward voltage pulse to the d axis respectively and determining a first peak value of response current generated in the motor by the forward voltage pulse;

the second injection module is used for injecting a reverse voltage pulse to the d axis respectively and determining a second peak value of response current generated in the motor by the reverse voltage pulse;

the second determining module is used for determining the polarity of the motor according to the first peak value and the second peak value;

a third determination module that determines the first position estimate based on the polarity of the motor and the initial position estimate.

11. The control device of the motor according to claim 8, wherein the positioning unit further includes:

the fourth determining module is used for determining a q-axis current value corresponding to the rated torque of the motor according to a motor torque formula under the condition that the d-axis current is 0;

the third injection module is used for injecting q-axis current corresponding to the q-axis current value into the motor;

the fifth determining module is used for carrying out second position positioning on the motor and determining a second position estimation value;

and the injection duration of the q-axis current is less than the preset duration.

12. The control device of an electric motor according to claim 8,

the q-axis current value is IqThe first position estimate is a and the second position estimate is b;

the determination unit includes:

a selection module for selecting a first point (0, 0) and a second point (I)q,b-a);

And the determining subunit is used for substituting the first point and the second point into a linear equation of unity to determine the position compensation curve.

13. A control system comprising a control device of an electric machine according to any one of claims 8 to 12.

14. The control system of claim 13, further comprising:

the motor is connected with the control device of the motor, and the control device of the motor is used for controlling the motor.

15. A readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the method of controlling an electric machine according to any one of claims 1 to 6.

Technical Field

The invention relates to the technical field of motor equipment, in particular to a motor control method, a motor control device, a control system and a readable storage medium.

Background

At present, when the built-in permanent magnet synchronous motor in the related technology operates at a low speed with a heavy load, the position of a rotor needs to be estimated in real time by using a high-frequency injection algorithm so as to ensure that the same load can be carried by a smaller current, thereby avoiding the derating operation of a general frequency converter.

The high frequency injection algorithm uses saliency characteristics of the rotor to perform position estimation. When the motor is overloaded, the salient pole characteristic of the built-in permanent magnet synchronous motor can be influenced due to the saturation characteristic and mutual inductance of the motor inductance, so that a position estimation value obtained by using a high-frequency injection algorithm has a certain deviation from an actual position.

Disclosure of Invention

The present invention is directed to solving at least one of the problems of the prior art or the related art.

To this end, a first aspect of the present invention proposes a method for controlling an electric machine.

A second aspect of the present invention is to provide a control apparatus of an electric motor.

A third aspect of the present invention is to provide a control apparatus of an electric motor.

A fourth aspect of the present invention is to provide a control system.

A fifth aspect of the invention is directed to a readable storage medium.

In view of this, according to a first aspect of the present invention, there is provided a control method of a motor, the control method including: carrying out first position location on the motor, and determining a first position estimation value; injecting a preset current into the motor, carrying out second position positioning on the motor, and determining a second position estimation value; determining a position compensation curve according to the preset current, the first position estimation value and the second position estimation value; acquiring a command current of a motor; and compensating the position of the motor according to the command current and the position compensation curve.

The control method of the motor provided by the invention firstly carries out the first position location on the motor. It can be appreciated that positioning the motor positions the rotor of the motor. Specifically, a first position of the motor is located by using a high-frequency injection algorithm, and a first position estimation value is obtained.

After the rotor of the motor is subjected to primary position positioning, the motor is controlled to be injected with preset current, and meanwhile, the motor is subjected to position positioning again, namely, secondary position positioning is carried out. Specifically, the motor is subjected to second position location by using a high-frequency injection algorithm, and a second position estimation value is obtained.

And obtaining a position compensation curve according to a preset current value corresponding to the preset current, the first position estimation value and the second position estimation value. Furthermore, the command current of the motor is brought into the position compensation curve, a position compensation value can be obtained, and then the position of the motor can be compensated according to the position compensation value. That is to say, after the first time of position location, while the second time of position location, the preset current is injected into the motor, the position compensation curve of the motor can be obtained through calculation according to the first position estimation value, the second position estimation value and the preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained by using the high-frequency injection algorithm and the actual position is smaller or consistent, the motor can be ensured to operate with the same load in a smaller current band, and the derating operation of the general frequency converter is avoided.

In specific application, the injection time of the preset current can be shorter than the preset time, namely the injection time of the preset current is shorter, so that the starting or running of the motor is not influenced, and the problem that the position compensation accuracy of the motor is influenced due to the fact that the position of a rotor is changed due to the fact that the preset current is injected is solved.

It should be noted that the method for compensating the position of the motor can compensate the initial position of the rotor of the motor before the motor is started. The position of the rotor of the motor can also be compensated during operation of the motor. The specific setting can be carried out according to actual needs.

In addition, according to the control method of the motor in the above technical solution provided by the present invention, the following additional technical features may be further provided:

in the above technical solution, further, performing a first position location on the motor, and determining a first position estimation value specifically includes: and carrying out first position location on the motor by adopting a high-frequency injection algorithm, and determining a first position estimation value.

In the technical scheme, the specific steps of positioning the first position of the motor are limited. Specifically, a high-frequency injection algorithm is adopted to carry out first position location on the motor, and a first position estimation value is obtained. It can be appreciated that the high frequency injection algorithm utilizes saliency characteristics of the machine rotor to estimate the position of the machine rotor.

Specifically, positive and negative voltage pulses are injected into the d axis or the q axis, response currents generated by the positive and negative voltage pulses in the motor are demodulated to obtain a position estimation value, the polarity of the motor is judged according to the peak value of the response currents, and then a first accurate position estimation value is determined according to the polarity of the motor. And then using the first position estimation value as a determination parameter of a motor position compensation curve.

In the above technical solution, further, performing a first position location on the motor by using a high frequency injection algorithm, and determining a first position estimation value specifically includes: injecting a high-frequency voltage signal into the d axis, demodulating a response current generated by the high-frequency voltage signal in the motor, and determining an initial position estimation value; respectively injecting a forward voltage pulse to the d-axis, and determining a first peak value of a response current generated in the motor by the forward voltage pulse; injecting a reverse voltage pulse into the d-axis respectively, and determining a second peak value of a response current generated in the motor by the reverse voltage pulse; determining the polarity of the motor according to the first peak value and the second peak value; a first position estimate is determined based on the polarity of the motor and the initial position estimate.

In the technical scheme, the specific steps of adopting a high-frequency injection algorithm to carry out primary position positioning on the motor are limited. Specifically, a high-frequency voltage signal is injected into the d-axis, a response current generated in the motor by the high-frequency voltage signal is acquired, the response current is demodulated, and an initial position estimation value is determined.

And controlling to inject a positive voltage pulse into the motor, and acquiring a peak value of a response current generated in the motor by the positive voltage pulse, namely a first peak value.

And controlling to inject a reverse voltage pulse into the motor, and acquiring a peak value of a response current generated in the motor by the reverse voltage pulse, namely a second peak value. The polarity of the motor can be determined from the first peak value and the second peak value. And then according to the determined polarity of the motor and the initial position estimated value, a more accurate first position estimated value can be obtained.

It will be appreciated that the polarity of the motor is already determined since the first position fix. Therefore, when the second position is located, the second position estimation value can be directly obtained without judging the polarity of the motor.

In the first positioning, both the d-axis current and the q-axis current are set to 0.

In the above technical solution, further, injecting a preset current into the motor, performing a second position location on the motor, and determining a second position estimation value specifically includes: under the condition that the d-axis current is 0, determining a q-axis current value corresponding to the rated torque of the motor according to a motor torque formula; injecting q-axis current corresponding to the q-axis current value into the motor, performing second position positioning on the motor, and determining a second position estimation value; and the injection duration of the q-axis current is less than the preset duration.

In the technical scheme, the specific steps of controlling the injection of the preset current into the motor and carrying out the second position positioning on the motor are limited. Specifically, when the d-axis current is set to 0, a q-axis current value corresponding to the rated torque of the motor can be obtained according to a torque equation of the motor.

Specifically, the torque formula of the motor is P-3/2 npf×Iq-(Lq-Ld)×Id×IqIn which n ispIs the number of pairs of magnetic poles, phifIs a flux linkage, LqIs q-axis inductance, LdIs d-axis inductance, IdIs d-axis current, IqIs the q-axis current.

And further, controlling to inject a q-axis current corresponding to the q-axis current value into the motor, and simultaneously, carrying out secondary position positioning on the motor by using a high-frequency injection algorithm. A second position estimate is obtained, it being understood that since the polarity of the motor was determined at the time of the first position fix. Therefore, when the second position is located, the second position estimation value can be directly obtained without judging the polarity of the motor.

The preset current is q-axis current corresponding to the q-axis current value. Specifically, the injection time of the q-axis current corresponding to the q-axis current value is less than the preset time length. That is, the time for injecting the q-axis current is set to be short, so that the starting or running of the motor is not affected, and the problem that the position of the rotor is changed due to the injection of the q-axis current, so that the position compensation accuracy of the motor is affected is solved.

Further, a position compensation curve of the motor is obtained through calculation according to the first position estimation value, the second position estimation value and a preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained through a high-frequency injection algorithm and the actual position is small or consistent, the motor can be ensured to run with the same load in a smaller current band, and derating operation of the universal frequency converter is avoided.

In the above technical solution, further, determining a position compensation curve according to the preset current, the first position estimation value, and the second position estimation value specifically includes: q-axis current value of IqSelecting a first point (0, 0) and a second point (I) with the first position estimation value being a and the second position estimation value being bqB-a); and substituting the first point and the second point into a linear equation of unity to determine a position compensation curve.

At the position ofIn the technical scheme, specific steps for determining the position compensation curve are defined. Specifically, two points (0, 0) and (I) are selectedqAnd b-a). Specifically, in the case where the d-axis and q-axis currents are equal to 0, a first position estimation value, i.e., a first point (0, 0), is obtained by the high-frequency injection algorithm.

And in the case that the d-axis current is equal to 0, obtaining a q-axis current value according to a motor torque formula. While controlling the injection of q-axis current corresponding to the q-axis current value into the motor, a second position estimation value b is obtained through a high-frequency injection algorithm, and a difference b-a between the second position estimation value and the first position estimation value, namely a second point (I)q,b-a)。

And substituting the first point and the second point into a linear equation of a unary, namely y equals mx, and solving the coefficient m. Obtaining a position compensation curve of y ═ x (b-a)/Iq. That is, the position compensation curve is a linear equation in which x represents the q-axis current and y represents the position compensation value.

It can be understood that the position compensation value can be obtained by obtaining the command current of the motor and substituting the command current into the linear equation, and then the position of the motor rotor is compensated according to the position compensation value.

In the above technical solution, further, compensating the position of the motor according to the command current and the position compensation curve specifically includes: determining a position compensation value according to the command current and the position compensation curve; and compensating the position of the motor according to the position compensation value.

In the technical scheme, a specific step of compensating the position of the motor according to the command current and the position compensation curve is defined. Specifically, the acquired command current of the motor is substituted into a position compensation curve, namely, y is x (b-a)/Iq. The position compensation value can be obtained. And then, the position of the motor rotor is compensated according to the position compensation value.

The command current of the motor is an operating current set by a user when the motor is operated.

According to a second aspect of the present invention, a control device for an electric motor is provided, which includes a memory storing a computer program, and a processor implementing any one of the above methods when the processor executes the computer program. Therefore, the motor control device has all the advantages of the motor control method.

According to a third aspect of the present invention, there is provided a control device of a motor, comprising: the positioning unit is used for carrying out first-time position positioning on the motor and determining a first position estimation value; the injection unit is used for injecting preset current into the motor; the positioning unit is also used for carrying out secondary position positioning on the motor and determining a second position estimation value; the determining unit is used for determining a position compensation curve according to the preset current, the first position estimation value and the second position estimation value; the acquisition unit is used for acquiring the command current of the motor; and the compensation unit is used for compensating the position of the motor according to the command current and the position compensation curve.

The control device of the motor comprises a positioning unit, an injection unit, a determination unit, an acquisition unit and a compensation unit, wherein the positioning unit is used for carrying out first-time position positioning on the motor. It can be appreciated that positioning the motor positions the rotor of the motor. Specifically, a first position of the motor is located by using a high-frequency injection algorithm, and a first position estimation value is obtained.

After the rotor of the motor is positioned for the first time, the injection unit controls the injection of the preset current into the motor, and meanwhile, the positioning unit positions the motor again, namely, the positioning unit positions the motor for the second time. Specifically, the motor is subjected to second position location by using a high-frequency injection algorithm, and a second position estimation value is obtained.

The determining unit can obtain a position compensation curve according to a preset current value, a first position estimation value and a second position estimation value corresponding to the preset current. Furthermore, the obtaining unit brings the command current of the motor into the position compensation curve to obtain a position compensation value, and the compensation unit can perform position compensation on the position of the motor according to the position compensation value. That is to say, after the first time of position location, while the second time of position location, the preset current is injected into the motor, the position compensation curve of the motor can be obtained through calculation according to the first position estimation value, the second position estimation value and the preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained by using the high-frequency injection algorithm and the actual position is smaller or consistent, the motor can be ensured to operate with the same load in a smaller current band, and the derating operation of the general frequency converter is avoided.

In specific application, the injection time of the preset current can be shorter than the preset time, namely the injection time of the preset current is shorter, so that the starting or running of the motor is not influenced, and the problem that the position compensation accuracy of the motor is influenced due to the fact that the position of a rotor is changed due to the fact that the preset current is injected is solved.

It should be noted that the method for compensating the position of the motor can compensate the initial position of the rotor of the motor before the motor is started. The position of the rotor of the motor can also be compensated during operation of the motor. The specific setting can be carried out according to actual needs.

In addition, according to the control device of the motor in the above technical solution provided by the present invention, the following additional technical features may be further provided:

in the above technical solution, further, the positioning unit is configured to perform first position positioning on the motor by using a high frequency injection algorithm, and determine a first position estimation value.

In the technical scheme, the positioning unit is used for performing first position positioning on the motor by adopting a high-frequency injection algorithm and obtaining a first position estimation value. It can be appreciated that the high frequency injection algorithm utilizes saliency characteristics of the machine rotor to estimate the position of the machine rotor.

Specifically, positive and negative voltage pulses are injected into the d axis or the q axis, response currents generated by the positive and negative voltage pulses in the motor are demodulated to obtain a position estimation value, the polarity of the motor is judged according to the peak value of the response currents, and then a first accurate position estimation value is determined according to the polarity of the motor. And then using the first position estimation value as a determination parameter of a motor position compensation curve.

In the above technical solution, further, the positioning unit includes: the first determining module is used for injecting a high-frequency voltage signal into the d axis, demodulating response current generated by the high-frequency voltage signal in the motor and determining an initial position estimated value; the first injection module is used for injecting a forward voltage pulse to the d axis respectively and determining a first peak value of response current generated in the motor by the forward voltage pulse; the second injection module is used for injecting a reverse voltage pulse to the d axis respectively and determining a second peak value of response current generated in the motor by the reverse voltage pulse; the second determining module is used for determining the polarity of the motor according to the first peak value and the second peak value; a third determination module determines a first position estimate based on the polarity of the motor and the initial position estimate.

In the technical scheme, the first determining module is used for injecting a high-frequency voltage signal into a d axis, acquiring a response current generated by the high-frequency voltage signal in a motor, demodulating the response current and determining an initial position estimated value.

The first injection module is used for controlling the injection of a positive voltage pulse into the motor and acquiring a peak value of response current generated in the motor by the positive voltage pulse, namely the first peak value.

The second injection module is used for controlling injection of a reverse voltage pulse into the motor and acquiring a peak value of a response current generated in the motor by the reverse voltage pulse, namely the second peak value. A second determination module can determine a polarity of the motor based on the first peak and the second peak. And then the third determination module can obtain a more accurate first position estimation value according to the determined polarity and initial position estimation value of the motor.

It will be appreciated that the polarity of the motor is already determined since the first position fix. Therefore, when the second position is located, the second position estimation value can be directly obtained without judging the polarity of the motor.

In the first positioning, both the d-axis current and the q-axis current are set to 0.

In the above technical solution, further, the positioning unit further includes: the fourth determining module is used for determining a q-axis current value corresponding to the rated torque of the motor according to a motor torque formula under the condition that the d-axis current is 0; the third injection module is used for injecting q-axis current corresponding to the q-axis current value into the motor; the fifth determining module is used for carrying out second position positioning on the motor and determining a second position estimation value; and the injection duration of the q-axis current is less than the preset duration.

In the technical scheme, the positioning unit comprises a fourth determining module, a third injecting module and a fifth determining module, and specifically, the fourth determining module is used for obtaining a q-axis current value corresponding to the rated torque of the motor according to a torque formula of the motor under the condition that the d-axis current is set to be 0.

Specifically, the torque formula of the motor is P-3/2 npf×Iq-(Lq-Ld)×Id×IqIn which n ispIs the number of pairs of magnetic poles, phifIs a flux linkage, LqIs q-axis inductance, LdIs d-axis inductance, IdIs d-axis current, IqIs the q-axis current.

Furthermore, the third injection module is used for controlling injection of q-axis current corresponding to the q-axis current value into the motor, and meanwhile, the high-frequency injection algorithm is used for carrying out secondary position positioning on the motor. A second position estimate is obtained, it being understood that since the polarity of the motor was determined at the time of the first position fix. Therefore, when the second position is located, the polarity of the motor does not need to be judged, and the fifth determining module can directly obtain the second position estimation value.

The preset current is q-axis current corresponding to the q-axis current value. Specifically, the injection time of the q-axis current corresponding to the q-axis current value is less than the preset time length. That is, the time for injecting the q-axis current is set to be short, so that the starting or running of the motor is not affected, and the problem that the position of the rotor is changed due to the injection of the q-axis current, so that the position compensation accuracy of the motor is affected is solved.

Further, a position compensation curve of the motor is obtained through calculation according to the first position estimation value, the second position estimation value and a preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained through a high-frequency injection algorithm and the actual position is small or consistent, the motor can be ensured to run with the same load in a smaller current band, and derating operation of the universal frequency converter is avoided.

In the above technical solution, further, the q-axis current value is IqThe first position estimation value is a, and the second position estimation value is b; the determination unit includes: a selection module for selecting a first point (0, 0) and a second point (I)qB-a); and the determining subunit is used for substituting the first point and the second point into a linear equation of unity to determine the position compensation curve.

In the technical scheme, the determining unit is limited to comprise a selecting module and a determining subunit. Specifically, in the case where the d-axis and q-axis currents are equal to 0, a first position estimation value, i.e., a first point (0, 0), is obtained by the high-frequency injection algorithm.

And in the case that the d-axis current is equal to 0, obtaining a q-axis current value according to a motor torque formula. While controlling the injection of q-axis current corresponding to the q-axis current value into the motor, a second position estimation value b is obtained through a high-frequency injection algorithm, and a difference b-a between the second position estimation value and the first position estimation value, namely a second point (I)q,b-a)。

The determining subunit is configured to bring the first point and the second point into a linear equation of unity, that is, y is mx, and solve the coefficient m. Obtaining a position compensation curve of y ═ x (b-a)/Iq. That is, the position compensation curve is a linear equation in which x represents the q-axis current and y represents the position compensation value.

It can be understood that the position compensation value can be obtained by obtaining the command current of the motor and substituting the command current into the linear equation, and then the position of the motor rotor is compensated according to the position compensation value.

In the above technical solution, further, the compensation unit includes: the sixth determining module is used for determining a position compensation value according to the command current and the position compensation curve; and the compensation module is used for compensating the position of the motor according to the position compensation value.

In this solution, it is defined that the compensation unit includes a sixth determination module and a compensation module, and specifically, the sixth determination module is configured to bring the obtained command current of the motor into a position compensation curve, that is, y ═ x (b-a)/Iq. The position compensation value can be obtained. And the compensation module carries out position compensation on the position of the motor rotor according to the position compensation value.

The command current of the motor is an operating current set by a user when the motor is operated.

According to a fourth aspect of the present invention, there is provided a control system comprising the steps of the control device of the motor according to any one of the above. Therefore, the control system has all the advantageous effects of the control device for the motor described above.

In addition, according to the control system in the above technical solution provided by the present invention, the following additional technical features may be further provided:

in the above technical solution, further, the control system further includes a motor, the motor is connected to a control device of the motor, and the control device of the motor is used for controlling the motor.

In this solution, the control system further comprises a motor. Specifically, the control device of the motor is connected with the motor for controlling the motor.

In a specific application, the control device of the motor may be a frequency converter.

According to a fifth aspect of the present invention, a readable storage medium is proposed, on which a computer program is stored, which computer program, when being executed by a processor, realizes the steps of the method of controlling an electric machine according to any one of the above. The readable storage medium thus has all the advantageous effects of the control method of the motor according to any one of the above.

Additional aspects and advantages of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention.

Drawings

The above and/or additional aspects and advantages of the present invention will become apparent and readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:

fig. 1 shows one of the flow diagrams of a control method of an electric machine according to an embodiment of the invention;

fig. 2 shows a second flow chart of a control method of the motor according to an embodiment of the invention;

fig. 3 shows a third flow chart of a control method of the motor according to an embodiment of the present invention;

fig. 4 shows a fourth flowchart of a control method of the motor according to an embodiment of the present invention;

fig. 5 shows a fifth flowchart of a control method of the motor according to the embodiment of the invention;

fig. 6 shows a sixth flowchart of a control method of the motor according to the embodiment of the invention;

fig. 7 shows a seventh flowchart of a control method of the motor of one embodiment of the present invention;

fig. 8 shows an eighth flowchart of a control method of the motor according to an embodiment of the present invention;

fig. 9 shows a ninth of the flow chart of the control method of the motor of one embodiment of the invention;

fig. 10 shows ten of the flow charts of the control method of the motor of one embodiment of the invention;

fig. 11 shows eleven of the flow chart diagrams of the control method of the motor of one embodiment of the invention;

fig. 12 shows a schematic block diagram of a control apparatus of a motor according to an embodiment of the present invention.

Detailed Description

In order that the above objects, features and advantages of the present invention can be more clearly understood, a more particular description of the invention will be rendered by reference to the appended drawings. It should be noted that the embodiments of the present invention and features of the embodiments may be combined with each other without conflict.

In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention, however, the present invention may be practiced in other ways than those specifically described herein, and therefore the scope of the present invention is not limited to the specific embodiments disclosed below.

A control method of a motor, a control apparatus 1200 of a motor, a control system, and a storage medium according to some embodiments of the present invention are described below with reference to fig. 1 to 12.

Example one

As shown in fig. 1, according to an embodiment of a first aspect of the present invention, there is provided a control method of a motor, the control method including:

102, carrying out first position location on a motor, and determining a first position estimation value;

step 104, injecting a preset current into the motor, performing second position positioning on the motor, and determining a second position estimation value;

106, determining a position compensation curve according to the preset current, the first position estimation value and the second position estimation value;

step 108, acquiring a command current of the motor;

and step 110, compensating the position of the motor according to the command current and the position compensation curve.

The control method of the motor provided by the invention firstly carries out the first position location on the motor. It can be appreciated that positioning the motor positions the rotor of the motor. Specifically, a first position of the motor is located by using a high-frequency injection algorithm, and a first position estimation value is obtained.

After the rotor of the motor is subjected to primary position positioning, the motor is controlled to be injected with preset current, and meanwhile, the motor is subjected to position positioning again, namely, secondary position positioning is carried out. Specifically, the motor is subjected to second position location by using a high-frequency injection algorithm, and a second position estimation value is obtained.

And obtaining a position compensation curve according to a preset current value corresponding to the preset current, the first position estimation value and the second position estimation value. Furthermore, the command current of the motor is brought into the position compensation curve, a position compensation value can be obtained, and then the position of the motor rotor can be compensated according to the position compensation value. That is to say, after the first time of position location, while the second time of position location, the preset current is injected into the motor, the position compensation curve of the motor can be obtained through calculation according to the first position estimation value, the second position estimation value and the preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained by using the high-frequency injection algorithm and the actual position is smaller or consistent, the motor can be ensured to operate with the same load in a smaller current band, and the derating operation of the general frequency converter is avoided.

In specific application, the injection time of the preset current can be shorter than the preset time, namely the injection time of the preset current is shorter, so that the starting or running of the motor is not influenced, and the problem that the position compensation accuracy of the motor is influenced due to the fact that the position of a rotor is changed due to the fact that the preset current is injected is solved.

It should be noted that the method for compensating the position of the motor can compensate the initial position of the rotor of the motor before the motor is started. The position of the rotor of the motor can also be compensated during operation of the motor. The specific setting can be carried out according to actual needs.

Example two

As shown in fig. 2, according to an embodiment of the present invention, there is provided a control method of a motor, the control method including:

step 202, carrying out first position positioning on the motor by adopting a high-frequency injection algorithm, and determining a first position estimation value;

step 204, injecting a preset current into the motor, performing second position positioning on the motor, and determining a second position estimation value;

step 206, determining a position compensation curve according to the preset current, the first position estimation value and the second position estimation value;

step 208, acquiring the command current of the motor;

and step 210, compensating the position of the motor according to the command current and the position compensation curve.

In this embodiment, the specific steps for the first positioning of the motor are defined. Specifically, a high-frequency injection algorithm is adopted to carry out first position location on the motor rotor, and a first position estimation value is obtained. It can be appreciated that the high frequency injection algorithm utilizes saliency characteristics of the machine rotor to estimate the position of the machine rotor.

Specifically, positive and negative voltage pulses are injected into the d axis or the q axis, response currents generated by the positive and negative voltage pulses in the motor are demodulated to obtain a position estimation value, the polarity of the motor is judged according to the peak value of the response currents, and then a first accurate position estimation value is determined according to the polarity of the motor. And then using the first position estimation value as a determination parameter of a motor position compensation curve.

EXAMPLE III

As shown in fig. 3, according to an embodiment of the present invention, step 202, performing a first position location on the motor by using a high frequency injection algorithm, and determining a first position estimation value includes:

step 302, injecting a high-frequency voltage signal into the d axis, demodulating a response current generated by the high-frequency voltage signal in the motor, and determining an initial position estimation value;

step 304, injecting a forward voltage pulse to the d-axis respectively, and determining a first peak value of a response current generated in the motor by the forward voltage pulse;

step 306, injecting a reverse voltage pulse to the d-axis respectively, and determining a second peak value of a response current generated in the motor by the reverse voltage pulse;

308, determining the polarity of the motor according to the first peak value and the second peak value;

in step 310, a first position estimate is determined based on the polarity of the motor and the initial position estimate.

In this embodiment, the specific steps of first positioning the rotor of the motor using the high frequency injection algorithm are defined. Specifically, a high-frequency voltage signal is injected into the d-axis, a response current generated in the motor by the high-frequency voltage signal is acquired, the response current is demodulated, and an initial position estimation value is determined.

And controlling to inject a forward voltage pulse into the motor, and acquiring a peak value of response current generated in the motor by the forward voltage pulse, namely the first peak value.

And controlling to inject a reverse voltage pulse into the motor, and acquiring the peak value of the response current generated in the motor by the reverse voltage pulse, namely the second peak value. The polarity of the motor can be determined from the first peak value and the second peak value. And then according to the determined polarity of the motor and the initial position estimated value, a more accurate first position estimated value can be obtained.

It will be appreciated that the polarity of the motor is already determined since the first position fix. Therefore, when the second position is located, the second position estimation value can be directly obtained without judging the polarity of the motor.

In the first positioning, both the d-axis current and the q-axis current are set to 0.

As shown in fig. 4, in a specific embodiment, further, the control method includes:

step 402, injecting a high-frequency voltage signal into the d axis, demodulating response current generated by the high-frequency voltage signal in the motor, and determining an initial position estimation value;

step 404, injecting a forward voltage pulse to the d-axis respectively, and determining a first peak value of a response current generated in the motor by the forward voltage pulse;

step 406, injecting a reverse voltage pulse to the d-axis respectively, and determining a second peak value of a response current generated in the motor by the reverse voltage pulse;

step 408, determining the polarity of the motor according to the first peak value and the second peak value;

step 410, determining a first position estimation value according to the polarity of the motor and the initial position estimation value;

step 412, injecting a preset current into the motor, performing second position positioning on the motor, and determining a second position estimation value;

step 414, determining a position compensation curve according to the preset current, the first position estimation value and the second position estimation value;

step 416, acquiring a command current of the motor;

step 418, compensating the position of the motor according to the command current and the position compensation curve.

In this embodiment, in detail, a high-frequency voltage signal is injected into the d-axis, a response current generated in the motor by the high-frequency voltage signal is obtained, and the response current is demodulated to determine an initial position estimation value.

And controlling to inject a forward voltage pulse into the motor, and acquiring a peak value of response current generated in the motor by the forward voltage pulse, namely the first peak value.

And controlling to inject a reverse voltage pulse into the motor, and acquiring the peak value of the response current generated in the motor by the reverse voltage pulse, namely the second peak value. The polarity of the motor can be determined from the first peak value and the second peak value. And then according to the determined polarity of the motor and the initial position estimated value, a more accurate first position estimated value can be obtained.

It will be appreciated that the polarity of the motor is already determined since the first position fix. Therefore, when the second position is located, the second position estimation value can be directly obtained without judging the polarity of the motor.

In the first positioning, both the d-axis current and the q-axis current are set to 0.

Furthermore, after the rotor of the motor is subjected to primary position positioning, the motor is controlled to be injected with preset current, and meanwhile, the motor is subjected to position positioning again, namely, the secondary position positioning is carried out. Specifically, the high-frequency injection algorithm is used for carrying out secondary position positioning on the motor rotor, and a second position estimation value is obtained.

And obtaining a position compensation curve according to a preset current value corresponding to the preset current, the first position estimation value and the second position estimation value. Furthermore, the command current of the motor is brought into the position compensation curve, a position compensation value can be obtained, and then the position of the motor can be compensated according to the position compensation value. That is to say, after the first time of position location, while the second time of position location, the preset current is injected into the motor, the position compensation curve of the motor can be obtained through calculation according to the first position estimation value, the second position estimation value and the preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained by using the high-frequency injection algorithm and the actual position is smaller or consistent, the motor can be ensured to operate with the same load in a smaller current band, and the derating operation of the general frequency converter is avoided.

In specific application, the injection time of the preset current can be shorter than the preset time, namely the injection time of the preset current is shorter, so that the starting or running of the motor is not influenced, and the problem that the position compensation accuracy of the motor is influenced due to the fact that the position of a rotor is changed due to the fact that the preset current is injected is solved.

Example four

As shown in fig. 5, according to an embodiment of the present invention, step 104, injecting a preset current into the motor, performing a second position location on the motor, and determining a second position estimation value includes:

step 502, under the condition that the d-axis current is 0, determining a q-axis current value corresponding to the rated torque of the motor according to a motor torque formula;

step 504, injecting q-axis current corresponding to the q-axis current value into the motor, performing second position positioning on the motor, and determining a second position estimation value;

and the injection duration of the q-axis current is less than the preset duration.

In this embodiment, a specific step of controlling to inject a preset current into the motor and perform a second position location on the motor is defined. Specifically, when the d-axis current is set to 0, a q-axis current value corresponding to the rated torque of the motor can be obtained according to a torque equation of the motor.

Specifically, the torque formula of the motor is P-3/2 npf×Iq-(Lq-Ld)×Id×IqIn which n ispIs the number of pairs of magnetic poles, phifIs a flux linkage, LqIs q-axis inductance, LdIs d-axis inductor,IdIs d-axis current, IqIs the q-axis current.

And further, controlling to inject a q-axis current corresponding to the q-axis current value into the motor, and simultaneously, carrying out secondary position positioning on the motor by using a high-frequency injection algorithm. A second position estimate is obtained, it being understood that since the polarity of the motor was determined at the time of the first position fix. Therefore, when the second position is located, the second position estimation value can be directly obtained without judging the polarity of the motor.

The preset current is q-axis current corresponding to the q-axis current value. Specifically, the injection time of the q-axis current corresponding to the q-axis current value is less than the preset time length. That is, the time for injecting the q-axis current is set to be short, so that the starting or running of the motor is not affected, and the problem that the position of the rotor is changed due to the injection of the q-axis current, so that the position compensation accuracy of the motor is affected is solved.

Further, a position compensation curve of the motor is obtained through calculation according to the first position estimation value, the second position estimation value and a preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained through a high-frequency injection algorithm and the actual position is small or consistent, the motor can be ensured to run with the same load in a smaller current band, and derating operation of the universal frequency converter is avoided.

As shown in fig. 6, in a specific embodiment, further, the control method includes:

step 602, performing first position location on the motor by adopting a high-frequency injection algorithm, and determining a first position estimation value;

step 604, determining a q-axis current value corresponding to the rated torque of the motor according to a motor torque formula under the condition that the d-axis current is 0;

step 606, injecting q-axis current corresponding to the q-axis current value into the motor, performing second position location on the motor, and determining a second position estimation value;

step 608, determining a position compensation curve according to the q-axis current corresponding to the q-axis current value, the first position estimation value and the second position estimation value;

step 610, acquiring a command current of a motor;

and step 612, compensating the position of the motor according to the command current and the position compensation curve.

In this embodiment, when the d-axis current is set to 0, the q-axis current value corresponding to the rated torque of the motor can be obtained from the torque equation of the motor.

Specifically, the torque formula of the motor is P-3/2 npf×Iq-(Lq-Ld)×Id×IqIn which n ispIs the number of pairs of magnetic poles, phifIs a flux linkage, LqIs q-axis inductance, LdIs d-axis inductance, IdIs d-axis current, IqIs the q-axis current.

And further, controlling to inject a q-axis current corresponding to the q-axis current value into the motor, and simultaneously, carrying out secondary position positioning on the motor by using a high-frequency injection algorithm. A second position estimate is obtained, it being understood that since the polarity of the motor was determined at the time of the first position fix. Therefore, when the second position is located, the second position estimation value can be directly obtained without judging the polarity of the motor.

The preset current is q-axis current corresponding to the q-axis current value. Specifically, the injection time of the q-axis current corresponding to the q-axis current value is less than the preset time length. That is, the time for injecting the q-axis current is set to be short, so that the starting or running of the motor is not affected, and the problem that the position of the rotor is changed due to the injection of the q-axis current, so that the position compensation accuracy of the motor is affected is solved.

Further, a position compensation curve of the motor is obtained through calculation according to the first position estimation value, the second position estimation value and a preset current value corresponding to the preset current, namely the q-axis current corresponding to the q-axis current value, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained through a high-frequency injection algorithm and the actual position is small or consistent, the motor can be ensured to run with the same load in a smaller current band, and the derating running of the universal frequency converter is avoided.

EXAMPLE five

As shown in fig. 7, according to an embodiment of the present invention, step 106, determining a position compensation curve according to the preset current, the first position estimation value, and the second position estimation value specifically includes:

step 702, the q-axis current value is IqSelecting a first point (0, 0) and a second point (I) with the first position estimation value being a and the second position estimation value being bq,b-a);

And step 704, substituting the first point and the second point into a linear equation of unity, and determining a position compensation curve.

In this embodiment, a specific step of determining the position compensation curve is defined. Specifically, two points (0, 0) and (I) are selectedqAnd b-a). Specifically, in the case where the d-axis and q-axis currents are equal to 0, a first position estimation value, i.e., a first point (0, 0), is obtained by the high-frequency injection algorithm.

And in the case that the d-axis current is equal to 0, obtaining a q-axis current value according to a motor torque formula. While controlling the injection of q-axis current corresponding to the q-axis current value into the motor, a second position estimation value b is obtained through a high-frequency injection algorithm, and a difference b-a between the second position estimation value and the first position estimation value, namely a second point (I)q,b-a)。

And substituting the first point and the second point into a linear equation of a unary, namely y equals mx, and solving the coefficient m. Obtaining a position compensation curve of y ═ x (b-a)/Iq. That is, the position compensation curve is a linear equation in which x represents the q-axis current and y represents the position compensation value.

It can be understood that the position compensation value can be obtained by obtaining the command current of the motor and substituting the command current into the linear equation, and then the position of the motor rotor is compensated according to the position compensation value.

As shown in fig. 8, in a specific embodiment, further, the control method includes:

step 802, performing first position location on the motor, and determining a first position estimation value;

step 804, injecting q-axis current corresponding to the q-axis current value into the motor, and performing second position location on the motor to determine a second position estimation value;

step 806, the q-axis current value is IqSelecting a first point (0, 0) and a second point (I) with the first position estimation value being a and the second position estimation value being bq,b-a);

Step 808, substituting the first point and the second point into a linear equation of unity, and determining a position compensation curve;

step 810, acquiring a command current of a motor;

and 812, compensating the position of the motor according to the command current and the position compensation curve.

In this embodiment, in the case where the d-axis and q-axis currents are equal to 0, a first position estimation value, i.e., a first point (0, 0), is obtained by the high frequency injection algorithm.

And in the case that the d-axis current is equal to 0, obtaining a q-axis current value according to a motor torque formula. While controlling the injection of q-axis current corresponding to the q-axis current value into the motor, a second position estimation value b is obtained through a high-frequency injection algorithm, and a difference b-a between the second position estimation value and the first position estimation value, namely a second point (I)q,b-a)。

And substituting the first point and the second point into a linear equation of a unary, namely y equals mx, and solving the coefficient m. Obtaining a position compensation curve of y ═ x (b-a)/Iq. That is, the position compensation curve is a linear equation in which x represents the q-axis current and y represents the position compensation value.

It can be understood that the position compensation value can be obtained by obtaining the command current of the motor and substituting the command current into the linear equation, and then the position of the motor rotor is compensated according to the position compensation value.

The preset current is q-axis current corresponding to the q-axis current value. Specifically, the injection time of the q-axis current corresponding to the q-axis current value is less than the preset time length. That is, the time for injecting the q-axis current is set to be short, so that the starting or running of the motor is not affected, and the problem that the position of the rotor is changed due to the injection of the q-axis current, so that the position compensation accuracy of the motor is affected is solved.

Further, a position compensation curve of the motor is obtained through calculation according to the first position estimation value, the second position estimation value and a preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained through a high-frequency injection algorithm and the actual position is small or consistent, the motor can be ensured to run with the same load in a smaller current band, and derating operation of the universal frequency converter is avoided.

EXAMPLE six

As shown in fig. 9, according to an embodiment of the present invention, step 110, compensating the position of the motor according to the command current and the position compensation curve specifically includes:

step 902, determining a position compensation value according to the command current and the position compensation curve;

and 904, compensating the position of the motor according to the position compensation value.

In this embodiment, the specific steps of compensating the position of the motor based on the command current and the position compensation curve are defined. Specifically, the acquired command current of the motor is substituted into a position compensation curve, namely, y is x (b-a)/Iq. The position compensation value can be obtained. And then, the position of the motor rotor is compensated according to the position compensation value.

The command current of the motor is an operating current set by a user when the motor is operated.

As shown in fig. 10, in a specific embodiment, further, the control method includes:

step 1002, performing first position location on a motor, and determining a first position estimation value;

step 1004, injecting a preset current into the motor, performing second position positioning on the motor, and determining a second position estimation value;

step 1006, determining a position compensation curve according to the preset current, the first position estimation value and the second position estimation value;

step 1008, obtaining a command current of the motor;

step 1010, determining a position compensation value according to the command current and the position compensation curve;

and 1012, compensating the position of the motor according to the position compensation value.

In this embodiment, the motor is first positionally determined. It can be appreciated that positioning the motor positions the rotor of the motor. Specifically, a first position of the motor is located by using a high-frequency injection algorithm, and a first position estimation value is obtained.

After the rotor of the motor is subjected to primary position positioning, the motor is controlled to be injected with preset current, and meanwhile, the motor is subjected to position positioning again, namely, secondary position positioning is carried out. Specifically, the motor is subjected to second position location by using a high-frequency injection algorithm, and a second position estimation value is obtained.

And obtaining a position compensation curve according to a preset current value corresponding to the preset current, the first position estimation value and the second position estimation value. Furthermore, the command current of the motor is brought into the position compensation curve, a position compensation value can be obtained, and then the position of the motor can be compensated according to the position compensation value. That is to say, after the first time of position location, while the second time of position location, the preset current is injected into the motor, the position compensation curve of the motor can be obtained through calculation according to the first position estimation value, the second position estimation value and the preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained by using the high-frequency injection algorithm and the actual position is smaller or consistent, the motor can be ensured to operate with the same load in a smaller current band, and the derating operation of the general frequency converter is avoided.

In specific application, the injection time of the preset current can be shorter than the preset time, namely the injection time of the preset current is shorter, so that the starting or running of the motor is not influenced, and the problem that the position compensation accuracy of the motor is influenced due to the fact that the position of a rotor is changed due to the fact that the preset current is injected is solved.

It should be noted that the method for compensating the position of the motor can compensate the initial position of the rotor of the motor before the motor is started. The position of the rotor of the motor can also be compensated during operation of the motor. The specific setting can be carried out according to actual needs.

Further, the obtained command current of the motor is substituted into a position compensation curve, namely, y is x (b-a)/Iq. The position compensation value can be obtained. And then, the position of the motor rotor is compensated according to the position compensation value.

The command current of the motor is an operating current set by a user when the motor is operated.

EXAMPLE seven

As shown in fig. 11, in a specific embodiment, further, the control method includes:

step 1102, injecting a high-frequency voltage signal into a d axis, demodulating response current generated by the high-frequency voltage signal in a motor, and determining an initial position estimation value;

1104, injecting a forward voltage pulse to the d-axis respectively, and determining a first peak value of a response current generated in the motor by the forward voltage pulse;

step 1106, injecting a reverse voltage pulse into the d-axis respectively, and determining a second peak value of a response current generated in the motor by the reverse voltage pulse;

step 1108, determining the polarity of the motor according to the first peak value and the second peak value;

step 1110, determining a first position estimation value according to the polarity of the motor and the initial position estimation value;

step 1112, determining a q-axis current value corresponding to the rated torque of the motor according to a motor torque formula under the condition that the d-axis current is 0;

step 1114, injecting a q-axis current corresponding to the q-axis current value into the motor, performing a second position location on the motor, and determining a second position estimation value;

at step 1116, the q-axis current value is IqSelecting a first point (0, 0) and a second point (I) with the first position estimation value being a and the second position estimation value being bq,b-a);

Step 1118, substituting the first point and the second point into a linear equation of unity, and determining a position compensation curve;

step 1120, determining a position compensation value according to the command current and the position compensation curve;

and step 1122, compensating the position of the motor according to the position compensation value.

In this embodiment, a position compensation curve can be obtained based on the q-axis current, the first position estimate value, and the second position estimate value corresponding to the q-axis current value. Furthermore, the command current of the motor is brought into the position compensation curve, a position compensation value can be obtained, and then the position of the motor can be compensated according to the position compensation value. That is to say, after the first time of position location, the q-axis current corresponding to the q-axis current value is injected into the motor while the second time of position location, and the position compensation curve of the motor can be obtained through calculation according to the first position estimation value, the second position estimation value and the q-axis current corresponding to the q-axis current value, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained by using a high-frequency injection algorithm and an actual position is smaller or consistent, the motor can be ensured to operate with the same load by using a smaller current, and the derating operation of a general frequency converter is avoided.

In specific application, the injection time of the preset current can be shorter than the preset time, namely the injection time of the preset current is shorter, so that the starting or running of the motor is not influenced, and the problem that the position compensation accuracy of the motor is influenced due to the fact that the position of a rotor is changed due to the fact that the preset current is injected is solved.

It should be noted that the method for compensating the position of the motor can compensate the initial position of the rotor of the motor before the motor is started. The position of the rotor of the motor can also be compensated during operation of the motor. The specific setting can be carried out according to actual needs.

Example eight

As shown in fig. 12, according to an embodiment of the second aspect of the present invention, a control apparatus 1200 for an electric motor is provided, which includes a memory 1202 and a processor 1204, wherein the memory 1202 stores a computer program, and the processor 1204 implements a control method for an electric motor according to any of the above embodiments when executing the computer program. Therefore, the motor control device 1200 has all the advantageous effects of the motor control method according to any of the embodiments described above.

Example nine

According to an embodiment of the third aspect of the present invention, a control device of a motor is provided, where the control device of a motor includes a positioning unit, an injection unit, a determination unit, an acquisition unit, and a compensation unit, where the positioning unit is configured to perform first position positioning on the motor and determine a first position estimation value, the injection unit is configured to inject a preset current into the motor, the positioning unit is further configured to perform second position positioning on the motor and determine a second position estimation value, the determination unit is configured to determine a position compensation curve according to the preset current, the first position estimation value, and the second position estimation value, the acquisition unit is configured to acquire a command current of the motor, and the compensation unit is configured to compensate the position of the motor according to the command current and the position compensation curve.

The control device of the motor comprises a positioning unit, an injection unit, a determination unit, an acquisition unit and a compensation unit, wherein the positioning unit is used for carrying out first-time position positioning on the motor. It can be appreciated that positioning the motor positions the rotor of the motor. Specifically, a first position of the motor is located by using a high-frequency injection algorithm, and a first position estimation value is obtained.

After the rotor of the motor is positioned for the first time, the injection unit controls the injection of the preset current into the motor, and meanwhile, the positioning unit positions the motor again, namely, the positioning unit positions the motor for the second time. Specifically, the motor is subjected to second position location by using a high-frequency injection algorithm, and a second position estimation value is obtained.

The determining unit can obtain a position compensation curve according to a preset current value, a first position estimation value and a second position estimation value corresponding to the preset current. Furthermore, the obtaining unit brings the command current of the motor into the position compensation curve to obtain a position compensation value, and the compensation unit can perform position compensation on the position of the motor according to the position compensation value. That is to say, after the first time of position location, while the second time of position location, the preset current is injected into the motor, the position compensation curve of the motor can be obtained through calculation according to the first position estimation value, the second position estimation value and the preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained by using the high-frequency injection algorithm and the actual position is smaller or consistent, the motor can be ensured to operate with the same load in a smaller current band, and the derating operation of the general frequency converter is avoided.

In specific application, the injection time of the preset current can be shorter than the preset time, namely the injection time of the preset current is shorter, so that the starting or running of the motor is not influenced, and the problem that the position compensation accuracy of the motor is influenced due to the fact that the position of a rotor is changed due to the fact that the preset current is injected is solved.

It should be noted that the method for compensating the position of the motor can compensate the initial position of the rotor of the motor before the motor is started. The position of the rotor of the motor can also be compensated during operation of the motor. The specific setting can be carried out according to actual needs.

On the basis of the above embodiment, further, the positioning unit is configured to perform a first position positioning on the motor by using a high frequency injection algorithm, and determine a first position estimation value.

In this embodiment, the positioning unit is configured to perform a first position positioning on the motor by using a high-frequency injection algorithm, and obtain a first position estimation value. It can be appreciated that the high frequency injection algorithm utilizes saliency characteristics of the machine rotor to estimate the position of the machine rotor.

Specifically, positive and negative voltage pulses are injected into the d axis or the q axis, response currents generated by the positive and negative voltage pulses in the motor are demodulated to obtain a position estimation value, the polarity of the motor is judged according to the peak value of the response currents, and then a first accurate position estimation value is determined according to the polarity of the motor. And then using the first position estimation value as a determination parameter of a motor position compensation curve.

On the basis of the above embodiment, further, the positioning unit includes a first determining module, a first injecting module, a second determining module and a third determining module, wherein the first determining module is configured to inject a high-frequency voltage signal to the d-axis, demodulate a response current generated by the high-frequency voltage signal in the motor, and determine an initial position estimation value, the first injecting module is configured to inject a forward voltage pulse to the d-axis and determine a first peak value of the response current generated by the forward voltage pulse in the motor, the second injecting module is configured to inject a reverse voltage pulse to the d-axis and determine a second peak value of the response current generated by the reverse voltage pulse in the motor, the second determining module is configured to determine a polarity of the motor and the initial position estimation value according to the first peak value and the second peak value, the third determining module is configured to determine the polarity of the motor according to the polarity of the motor, a first position estimate is determined.

In the embodiment, the first determining module is used for injecting a high-frequency voltage signal into the d axis, acquiring a response current generated in the motor by the high-frequency voltage signal, demodulating the response current and determining the initial position estimated value.

The first injection module is used for controlling the injection of a positive voltage pulse into the motor and acquiring a peak value of response current generated in the motor by the positive voltage pulse, namely the first peak value.

The second injection module is used for controlling injection of a reverse voltage pulse into the motor and acquiring a peak value of a response current generated in the motor by the reverse voltage pulse, namely the second peak value. A second determination module can determine a polarity of the motor based on the first peak and the second peak. And then the third determination module obtains a more accurate first position estimation value according to the determined polarity and the initial position estimation value of the motor.

It will be appreciated that the polarity of the motor is already determined since the first position fix. Therefore, when the second position is located, the second position estimation value can be directly obtained without judging the polarity of the motor.

In the first positioning, both the d-axis current and the q-axis current are set to 0.

On the basis of the above embodiment, the positioning unit further includes a fourth determining module, a third injecting module and a fifth determining module, wherein the fourth determining module is configured to determine a q-axis current value corresponding to a rated torque of the motor according to a motor torque formula when the d-axis current is 0, the third injecting module is configured to inject a q-axis current corresponding to the q-axis current value into the motor, and the fifth determining module is configured to perform a second position positioning on the motor and determine a second position estimation value; and the injection duration of the q-axis current is less than the preset duration.

In this embodiment, the positioning unit includes a fourth determination module, a third injection module, and a fifth determination module, and specifically, the fourth determination module is configured to obtain a q-axis current value corresponding to the rated torque of the motor according to a torque formula of the motor when the d-axis current is set to 0.

Specifically, the torque formula of the motor is P-3/2 npf×Iq-(Lq-Ld)×Id×IqIn which n ispIs the number of pairs of magnetic poles, phifIs a flux linkage, LqIs q-axis inductance, LdIs d-axis inductance, IdIs d-axis current, IqIs the q-axis current.

Furthermore, the third injection module is used for controlling injection of q-axis current corresponding to the q-axis current value into the motor, and meanwhile, the high-frequency injection algorithm is used for carrying out secondary position positioning on the motor. A second position estimate is obtained, it being understood that since the polarity of the motor was determined at the time of the first position fix. Therefore, when the second position is located, the polarity of the motor does not need to be judged, and the fifth determining module can directly obtain the second position estimation value.

The preset current is q-axis current corresponding to the q-axis current value. Specifically, the injection time of the q-axis current corresponding to the q-axis current value is less than the preset time length. That is, the time for injecting the q-axis current is set to be short, so that the starting or running of the motor is not affected, and the problem that the position of the rotor is changed due to the injection of the q-axis current, so that the position compensation accuracy of the motor is affected is solved.

Further, a position compensation curve of the motor is obtained through calculation according to the first position estimation value, the second position estimation value and a preset current value corresponding to the preset current, so that the position of the motor can be compensated according to the position compensation curve, the deviation between the position estimation value obtained through a high-frequency injection algorithm and the actual position is small or consistent, the motor can be ensured to run with the same load in a smaller current band, and derating operation of the universal frequency converter is avoided.

On the basis of the above embodiment, further, the q-axis current value is IqThe first position estimation value is a, and the second position estimation value is b; the determining unit comprises a selecting module and a determining subunit, wherein the selecting module is used for selecting a first point (0, 0) and a second point (I)qAnd b-a), the determining subunit is configured to introduce the first point and the second point into a linear equation of unity to determine the position compensation curve.

In this embodiment, the definition determination unit includes a selection module and a determination subunit. Specifically, in the case where the q-axis current is equal to 0, a first position estimation value, i.e., a first point (0, 0), is obtained by the high-frequency injection algorithm.

And in the case that the d-axis current is equal to 0, obtaining a q-axis current value according to a motor torque formula. While controlling the injection of q-axis current corresponding to the q-axis current value into the motor, a second position estimation value b is obtained through a high-frequency injection algorithm, and a difference b-a between the second position estimation value and the first position estimation value, namely a second point (I)q,b-a)。

The determining subunit is configured to bring the first point and the second point into a linear equation of unity, that is, y is mx, and solve the coefficient m. Obtaining a position compensation curve of y ═ x (b-a)/Iq. That is, the position compensation curve is a linear equation in which x represents the q-axis current and y represents the position compensation value.

It can be understood that the position compensation value can be obtained by obtaining the command current of the motor and substituting the command current into the linear equation, and then the position of the motor rotor is compensated according to the position compensation value.

On the basis of the above embodiment, further, the compensation unit includes: the sixth determining module is used for determining a position compensation value according to the command current and the position compensation curve; and the compensation module is used for compensating the position of the motor according to the position compensation value.

In this embodiment, it is defined that the compensation unit comprises a sixth determination module and a compensation module, and specifically, the sixth determination module is configured to bring the obtained command current of the motor into a position compensation curve, that is, y ═ x (b-a)/Iq. The position compensation value can be obtained. And the compensation module carries out position compensation on the position of the motor rotor according to the position compensation value.

The command current of the motor is an operating current set by a user when the motor is operated.

Example ten

According to a fourth aspect of the present invention, there is provided a control system including the steps of the control device of the motor as in the above-described embodiments. Therefore, the control system has all the advantages of the control device of the motor of the embodiment.

On the basis of the above embodiment, further, the control system further includes a motor, the motor is connected with a control device of the motor, and the control device of the motor is used for controlling the motor.

In this embodiment, the control system further comprises a motor. Specifically, the control device of the motor is connected with the motor for controlling the motor.

In a specific application, the control device of the motor may be a frequency converter.

EXAMPLE eleven

According to an embodiment of the fifth aspect of the present invention, a readable storage medium is proposed, on which a computer program is stored, which computer program, when being executed by a processor, realizes the steps of the control method of the motor as the above-mentioned embodiments. The readable storage medium thus has all the advantageous effects of the control method of the motor according to any one of the above.

In the description herein, all quantities relating to temperature, including expression units, are in degrees centigrade and the terms "first" and "second" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance unless explicitly stated or limited otherwise; the terms "connected," "mounted," "secured," and the like are to be construed broadly and include, for example, fixed connections, removable connections, or integral connections; may be directly connected or indirectly connected through an intermediate. The specific meanings of the above terms in the present invention can be understood by those skilled in the art according to specific situations.

In the description herein, the description of the terms "one embodiment," "some embodiments," "specific embodiments," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the invention. In this specification, the schematic representations of the terms used above do not necessarily refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.

The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

31页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:电机的控制方法、电机的控制装置、控制系统和存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!