The present disclosure contains subject matter related to that disclosed in International Patent Application under the PCT/JP2017/013801 filed in the Japan Patent Office on Mar. 31, 2017, the entire contents of which are hereby incorporated by reference.
The present invention relates to an electric motor control apparatus, a compressor, and an electric motor control method.
When a speed of an electric motor is controlled through use of an electric motor control apparatus, for example, an inverter, and the electric motor is used for an application in which a load periodically fluctuates, for example, a compressor, speed fluctuation periodically occurs in the electric motor as the load fluctuates, which causes vibration and noise.
In JP 2002-247878 A, there is described a control method for an electric motor, which involves obtaining a compensation voltage pattern in accordance with fluctuation of a load torque for each of predetermined rotation angles of an electric motor, storing the obtained compensation voltage patterns in an internal memory of the control means, and setting a value obtained by adding addition data read out from the internal memory at each of the predetermined rotation angles to a reference voltage as a voltage to be applied to an electric motor so as to change an output torque of the electric motor, to thereby suppress the fluctuation in the rotation speed in one rotation.
In JP 5914777 B2, there is described an automatic correction method for a torque of a compressor, which involves using the phase locked loop (PLL) to generate a torque correction angle from a target speed and a feedback speed, generating a torque correction range value from an additional torque reference value, and generating a feedforward torque correction value from the target speed, the torque correction angle, and the torque correction range value.
According to one embodiment of the present invention, there is provided an electric motor control apparatus including: a speed ripple component extraction unit configured to extract a speed ripple component from a difference between a command angular frequency and a speed feedback angular frequency; a phase locked loop circuit configured to generate a phase of the speed ripple component from the speed ripple component; a torque compensation value generation unit configured to multiply a value of a periodic function corresponding to the phase and a given amplitude by each other, to thereby generate a torque compensation value; a speed control unit configured to calculate a torque command value from the difference between the command angular frequency and the speed feedback angular frequency; and a current control unit configured to control a current to be output to an electric motor based on a compensated torque command obtained by adding the torque compensation value to the torque command value.
According to still another embodiment of the present invention, there is provided an electric motor control method including: extracting a speed ripple component from a difference between an angular frequency command and an angular frequency feedback; generating a phase of the speed ripple component from the speed ripple component; multiplying a value of a periodic function corresponding to the phase and a given amplitude by each other, to thereby generate a torque compensation value; calculating a torque command value from the difference between the angular frequency command and the angular frequency feedback; obtaining a compensated torque command by adding the torque compensation value to the torque command value; and controlling a current to be output to an electric motor based on the compensated torque command.
The electric motor control apparatus 1 is an apparatus configured to supply electric power so that an electric motor 2 rotates at a predetermined speed, based on an input frequency command fref. The electric motor control apparatus 1 is a so-called inverter control apparatus (simply also referred to as “inverter”), but is not limited to the inverter control apparatus, and may be a control apparatus such as a servo control apparatus or a cycloconverter. The electric motor 2 is an AC electric motor, but the type of the electric motor 2 is not particularly limited, and may be one of various types of induction machines or synchronous machines. In this configuration, the electric motor 2 is, as an example, a three-phase permanent magnet synchronous electric motor. Arbitrary load (not shown) is connected to the electric motor 2. The load is not particularly limited, but a compressor is exemplified in this case as a mechanism having large torque fluctuation in one rotation of the electric motor 2.
<Electric Motor Control Apparatus>
As illustrated in
The speed control unit 11 is also referred to as “speed controller”, and is configured to output a command torque Tcom based on the difference angular frequency Δω. A torque compensation value Tc is added to the command torque Tcom so as to execute vibration suppression. A compensated command torque T (corresponding to a compensated torque command) is input to the current control unit 12.
The current control unit 12 is also referred to as “current controller”, is configured to output a command value to the inverter circuit 14 so that the electric motor 2 outputs a desired torque, based on the compensated command torque T. In this case, the inverter circuit 14 is of the voltage type, and thus outputs a voltage command Vdq on a d-q plane. For example, PWM modulation is further applied to the voltage command Vdq by the voltage command calculation unit 13, and the modulated voltage command Vdq is applied to the inverter circuit 14. When the inverter circuit 14 is of the current type, the output from the current control unit 12 may be a current command. In such a case, a current command calculation unit may be provided in place of the voltage command calculation unit 13.
The motor observer 15 is configured to obtain an estimated mechanical position θobs of the electric motor and a speed feedback angular frequency ωFB, which is an estimated angular frequency of the electric motor, based on the voltage command Vdq from the current control unit 12 and a current value Idq-obs detected from the current detector 16 provided between the inverter circuit 14 and the electric motor 2. The estimated mechanical position θobs is used by the current detector 16 so as to obtain the current value Idq-obs, which is a current value on the d-q plane. However, this configuration is not always required, and the current value Idq-obs is only required to be obtained in accordance with types of the current detector 16 and the electric motor 2.
The vibration suppression unit 17 is configured to output the torque compensation value Tc to be added to the command torque Tcom in order to suppress the vibration of the electric motor. The vibration suppression unit 17 uses the difference between the command angular frequency ωcom and the speed feedback angular frequency ωFB, and thus inputs the command angular frequency ωcom and the speed feedback angular frequency ωFB in this case, but a magnitude (amplitude) of the value of the torque compensation value Tc, which is the output value, and a magnitude of the value of the difference between the command angular frequency ωcom and the speed feedback angular frequency ωFB do not directly relate to each other, and the vibration suppression unit 17 does not thus form a so-called feedback loop. Therefore, the addition of the torque compensation value Tc to the command torque Tcom can be considered as feedforward compensation.
In the above-mentioned configuration of the electric motor control apparatus 1, the current control unit 12 and the vibration suppression unit 17 are described in detail later. The remaining configuration, that is, the soft starter 10, the speed control unit 11, the voltage command calculation unit 13, the motor observer 15, and the current detector 16 may employ any publicly-known structure, and details thereof are not a technical subject matter of the present invention, and hence a detailed description thereof is thus omitted.
Further, the motor observer 15 and the current detector 16 may have any configurations as long as the speed feedback angular frequency ωFB is obtained. In place of the configuration formed of the motor observer 15 and the current detector 16, a sensor configured to continuously detect the mechanical position of the electric motor 2, such as a rotary encoder or a resolver, may be provided, or there may be provided a publicly known configuration of providing a sensor configured to partially detect the mechanical position for the electric motor 2, for example, a Hall element, to estimate the mechanical position. However, as illustrated in
<Current Control Unit>
The compensated command torque T input to the current control unit 12 has an upper limit limited by the torque limiting circuit 120 so as not to be an excessive torque command, and is then converted to the current value Idq on the d-q plane by the Iq command calculation circuit 121 and the Id command calculation circuit 122. The voltage that can be output by the inverter circuit 14 is limited, and hence in this example, the output voltage limit control circuit 123 is switched to the torque limiting circuit 120 to be connected to the Id command calculation circuit 122 as required so that the d component of the current value Idq can be limited.
In this example, the inverter circuit 14 is of the voltage type, and hence the current value Idq is converted to a voltage value by the current control circuit 125, and undergoes decoupling by the decoupling control circuit 124. Then, the voltage command Vdq is obtained. None of the torque control circuit 120, the output voltage limiting control circuit 123, and the decoupling control circuit 124 is indispensable in this configuration, and is an optional configuration. Moreover, it is only required to appropriately employ a publicly-know configuration as each of the functions forming the current control unit 12, and hence a detailed description each thereof is omitted.
<Amplitude Suppression Unit>
The vibration suppression unit 17 is configured to remove a DC component from the difference between the speed feedback angular frequency ωFB and the command angular frequency ωcom by the high-pass filter 170, to thereby extract a speed ripple component Δωr, which is an AC component. The high-pass filter 170 is a configuration as an example of a speed ripple component extraction unit configured to extract the speed ripple component from the difference between the speed feedback angular frequency ωFB and the command angular frequency ωcom.
A specific configuration of the speed ripple component extraction unit is not limited to the high-pass filter 170 described herein. For example, the configuration may be such that an average value of the input signal is measured online, and the measured value may be subtracted from the input signal. In this case, it is considered that the average value of the input signal measured online corresponds to the DC component. Alternatively, the configuration may be such that frequency transform, for example, fast Fourier transform (FFT), is applied to the input signal to remove a low-frequency component (this is considered as the DC component), and then, the inverse transform is applied. There is no problem even when still another configuration is employed.
The vibration suppression unit 17 is configured to synchronize a phase θ of the speed ripple component Δωr by the phase locked loop circuit 171, to thereby extract the phase θ from the speed ripple component Δωr. A configuration of the phase locked loop circuit 171 is not necessarily limited, and a publicly-known configuration may appropriately be employed. In this example, first, the speed ripple component Δωr itself is set as an α phase, and a component whose phase is shifted by 90 degrees by causing the speed ripple component Δωr to pass through an all-pass filter 172 is set as a β phase. An amplitude of the speed ripple component Δωr is obtained from the α phase and the β phase by amplitude calculation 173, and coordinate conversion is executed by d-q conversion 174, to thereby apply coordinate conversion from an α-β plane to the d-q plane to the speed ripple component Δωr.
The phase is shifted by 90 degrees by the all-pass filter 172 in order to execute the d-q conversion thereafter, to thereby synchronize the phase θ. This synchronization calculation is described later. Moreover, compensation may be applied by pre-warping 175 to the all-pass filter 172 so as to compensate for a phase shift caused by discretization. Moreover, noise caused by discretization and the like may be removed by the low-pass filter 176 from the amplitude obtained by the amplitude calculation 173.
PI control of the d-axis component obtained by the d-q conversion 174 is executed by inputting the value 0 as a target command d* for the d-axis component. Integration is executed by adding a phase difference Δθ of the speed ripple component consequently obtained to a phase difference Δθ for the next calculation through a delay element Z−1, to thereby obtain a pre-offset phase θpre. Simultaneously, the pre-offset phase θpre is input to the d-q conversion 174, and is used for coordinate transformation in the d-q conversion. That is, this configuration is to obtain the pre-offset phase θpre so that the d-axis component obtained by the d-q conversion 174 becomes 0. In other words, the d-axis component is constrained so as to be 0 at the time of the d-q conversion, to thereby obtain the pre-offset phase θpre.
This pre-offset phase θpre approximately represents the phase of the speed ripple component Δωr. In this manner, the phase of the speed ripple component Δωr can be obtained even without detecting the mechanical position of the electric motor 2 by calculating the pre-offset phase θpre through the d-q conversion of the speed ripple component Δωr (α phase) and the component obtained by shifting the phase of the speed ripple component Δωr by 90° (β phase).
The obtained pre-offset phase θpre is a phase of the speed ripple component Δωr with respect to the speed itself. The phase θ useful for the torque compensation can thus be obtained by adding an offset value θoffs. The offset value θoffs is a phase difference of the torque with respect to the speed and is thus approximately 90 degrees, but more or less fluctuates due to an inertial mass of the electric motor 2 and a load. The offset value θoffs is therefore given in advance as a given specified value.
The obtained phase θ is converted to a value corresponding to a phase of a given function by the periodic function calculation unit 177. The periodic function calculation unit 177 uses any function f(θ) having a period of 2π as the given function in this case, and any periodic function in accordance with a waveform of speed vibration occurring in the electric motor 2 may be prepared. In this example, the speed vibration used for the electric motor 2 is almost approximated by a sinusoidal wave, and the periodic function calculation unit 177 uses a sinusoidal function.
Moreover, an amplitude A (corresponding to a given amplitude) is given by the amplitude change unit 178 to the periodic function calculation unit 177, and is multiplied. Af(θ) obtained in such a manner becomes the torque compensation value Tc, and is added to the command torque Tcom, and the compensated command torque T is consequently calculated. Thus, the periodic function calculation unit 177 and the amplitude change unit 178 form the torque compensation value generation unit 179 configured to multiply the value f(θ) corresponding to the phase θ of the periodic function f by the given amplitude A, to thereby generate the torque compensation value Tc.
The amplitude A output from the amplitude change unit 178 may be given as a constant fixed value, or may be changed in accordance with various conditions. A description is now given of control for the amplitude A output by the amplitude change unit 178.
<Operation of Vibration Suppression>
In
First, a period from a start of the electric motor 2 to its speed settlement is illustrated in a section from a time point t0 to a time point t1. Even when the compensation for the vibration suppression is executed, a deviation in speed occurs until the speed of the electric motor 2 is settled. Therefore, the vibration cannot always be suppressed, and the vibration may be amplified instead in some cases. Thus, the vibration suppression is not executed originally. In this example, this section is a section in which the operation of the vibration suppression unit 17 itself is stopped, and no operation is executed. A time period tinit, in which the electric motor 2 started at the time point t0 is settled at the time point t1, may appropriately be defined. The time period tinit is approximately several seconds to several tens of seconds, which depends on a magnitude of the load, and may be several minutes particularly in a case of a large machine.
Moreover, a section from a start of the vibration suppression unit 17 itself to settlement of the phase locked loop circuit is illustrated in a section from the time point t1 to a time point t2. In this section, the value of θ and the value of the amplitude of the speed ripple component are not settled as shown in
Further, a section from a time point t2 to a time point t3 is a section in which the vibration suppression is being executed by the vibration suppression unit 17. In this section, the phase locked loop circuit is stable, and the amplitude θ is correctly obtained. The amplitude change unit 178 gradually increases the value of the amplitude A in this state. Accordingly, the amplitude of the torque compensation value Tc also gradually increases. This process is performed in order to avoid a mechanical shock by not abruptly, but gradually changing a behavior of the electric motor 2. The maximum value Amax of the value of the amplitude A may be given in advance. Moreover, a change period ttr of the amplitude A may also be freely set. The change period ttr may approximately be several seconds to several tens of seconds. Further, a pattern of increasing the amplitude A is linear in this embodiment as shown in
Finally, a section after the time point t3 is a section in which the vibration suppress ion is stably executed by the vibration suppression unit 17. In this section, the quantities shown in
<Vibration Suppression Operation at the Time when Amplitude Changes>
Further, the amplitude change unit 178 may change the amplitude A in accordance with the speed of the electric motor 2.
In the example shown in
Meanwhile, when the speed of the electric motor 2 does not change for a certain period of time, the speed of the electric motor 2 is detected as being settled. In this case, the amplitude change unit 178 gradually increases the amplitude A this time. In
The same applies to a case in which the value of the frequency command fref increases. A speed change in the electric motor 2 is detected at a time point t8, and the amplitude A is also reduced. The change in the value of the frequency command fref stops at a time point t9, and the amplitude A is again increased from a time point t10 after the time period tst has elapsed to a time point t11, to thereby execute the amplitude suppression.
This operation of the amplitude change unit 178 is basically such that when the speed of the electric motor 2 is changing, the vibration suppress ion is not always effective and the vibration suppression is thus not executed, and the vibration suppression is executed when the speed of the electric motor 2 is settled and does not change. Moreover, whether the vibration suppression is executed or not is not rapidly switched, but the amplitude A is gradually changed so as to gently switch on/off of the vibration suppression, to thereby avoid the mechanical shock.
Further, the amplitude change unit 178 may determine the amplitude A in accordance with an amplitude of the speed feedback. Referring again to
Thus, the amplitude change unit 178 may compare the vibration amplitude of the speed feedback and a threshold value th with each other. Then, the amplitude change unit 178 may stop the increase in the amplitude A at a time point at which the vibration amplitude goes sufficiently below the threshold value th and the vibration is determined to be sufficiently suppressed, and may use such a value as the value of the amplitude A. In
<Operation Flow>
When the vibration suppression unit 17 is started, the vibration suppression unit 17 extracts the speed ripple component Δω from the difference between the angular frequency command ωcom and the angular frequency feedback ωFB (Step ST3). Further, the phase θ is generated from the speed ripple component Δω by the phase locked loop circuit 171 (Step ST4). In this case, as already described, the phase θ is generated from the speed ripple component Δω and the component obtained by shifting the phase of the speed ripple component Δω by 90 degrees through use of the d-q conversion.
Then, the vibration suppression unit 17 determines whether or not the speed of the electric motor is continuously settled for the time period tst (Step ST5). This determination may be made based on whether the speed of the electric motor deviates from the predetermined range (±d) around the stable speed of the electric motor. Moreover, as the speed of the electric motor, any of the frequency command fref, the angular frequency feedback ωFB, and the angular frequency command ωcom may be used.
When the speed of the electric motor is continuously settled for the time period tst (Y in Step ST5), it is determined whether the vibration amplitude of the speed feedback is less than the threshold value th and the vibration suppression has already sufficiently been executed, or the amplitude A has reached the maximum value Amax (Step ST6). When the vibration amplitude of the speed feedback is not less than the threshold value th and the amplitude A has not reached the maximum value Amax (N in Step ST6), the amplitude change unit 178 gradually increases the value of the amplitude A (Step ST7). Then, the torque compensation value Tc is obtained as Af(θ) through use of the obtained amplitude A and the periodic function f(θ), the torque compensation is executed, and the vibration suppression is executed (Step ST8).
When the vibration amplitude of the speed feedback is less than the threshold value th or the amplitude A has reached its maximum value Amax (Y in Step ST6), the amplitude A is not required to be increased. Thus, the processing proceeds to Step ST8 without changing the value of the amplitude A, and the vibration suppression is executed.
Meanwhile, when the speed of the electric motor is not continuously settled for the time period tst (N in Step ST5), that is, when the speed of the electric motor has changed or the time period tst has not elapsed after the speed of the electric motor was settled, it is determined whether or not the amplitude A is already 0 or has reached the minimum value Amin of the amplitude A (Step ST9). The minimum value Amin of the amplitude A is not always required to be set in this case, and may be set to 0.
When the amplitude A is not 0 and the amplitude A has not reached the minimum value Amin of the amplitude A (N in Step ST9), the amplitude change unit 178 gradually reduces the amplitude A (Step ST10). Then, the processing proceeds to Step ST8, and the vibration suppression is executed. When the amplitude A is 0 or the amplitude A has reached the minimum value Amin of the amplitude A (Y in Step ST9), the processing immediately proceeds to Step ST8, and the vibration suppression is executed without changing the amplitude A. When the amplitude A is 0 in this case, the vibration suppression is not executed at all.
When the vibration suppression is executed (Step ST8), the processing again returns to Step ST3, and the vibration suppression is executed while the electric motor 2 is rotating. As a result, with the flow illustrated in
In the above description, the command angular frequency ωcom and the speed feedback angular frequency ωFB are each independently input to the vibration suppression unit 17, and the speed ripple component Δωr is obtained based on the difference therebetween in the vibration suppression unit 17, but the speed ripple component Δωr may directly be input to the vibration suppression unit 17 depending on the configuration of the electric motor control apparatus 1. In the example illustrated in
<Example of Effects>
As described above, with the electric motor control apparatus 1 according to this embodiment, the phase θ of the speed ripple component Δωr is generated by the phase locked loop circuit 171 after the speed ripple component Δωr is extracted, and the torque compensation value Tc is generated from the phase θ, thereby being able to compensate for the torque command Tcom. Thus, the speed fluctuation of the electric motor 2 can be suppressed in accordance with the phase of the actual speed fluctuation occurring in the electric motor 2. Accordingly, the speed fluctuation of the electric motor 2 can be suppressed without requirement of measurement of the mechanical angle of the electric motor 2 and obviously without requirement of a map of a correction amount corresponding to the mechanical angle. Further, a calculation delay of the torque compensation value Tc can be suppressed by generating the torque compensation value Tc after the phase θ of the speed ripple component Δωr is once generated, and the effect of suppressing the speed fluctuation can thus be increased. Further, the calculation of the torque compensation value Tc is executed independently of the speed control unit 11, and the torque compensation value Tc can be fed forward. Thus, even when the torque command Tcom, which is the output of the speed control unit 11, changes rapidly, the calculation of the torque compensation value Tc is not influenced, and the suppression of the speed fluctuation can be continued.
Moreover, with the electric motor control apparatus 1, the phase locked loop circuit 171 generates the phase θ through the d-q conversion from the speed ripple component Δωr and the component obtained by shifting the phase of the speed ripple component Δωr by 90°. Thus, it is not required to measure the mechanical angle also in this generation of the phase θ, and hence processing that generates a delay, for example, a low-pass filter, can be minimized. Moreover, the phase θ is generated through the d-q conversion without using the input frequency command fref in the generation of the phase θ, and the torque compensation value Tc can independently be calculated even when the command torque Tcom is not stable.
Moreover, with the electric motor control apparatus 1, the phase θ can be generated in consideration of the offset value θoff defined in advance in the phase locked loop circuit 171. Thus, the effect of suppressing the speed fluctuation can quickly and reliably be provided by setting delays in, for example, the inertial mass, the load, the PI loop and the low-pass filter 176 as the offset value θoff in advance.
Further, with the electric motor control apparatus 1, the amplitude A of the torque compensation value Tc to be used by the periodic function calculation unit 177 is set by the amplitude change unit 178, and hence it is not required to set, for example, machine specifications of the electric motor 2 or the like and accompanying parameters thereof, in advance. Moreover, the amplitude change unit 178 changes the amplitude A, to thereby be able to suppress the speed fluctuation without a rapid change in speed.
On this occasion, the amplitude A can gradually be increased by the amplitude change unit 178 after the speed of the electric motor 2 is settled. Therefore, the speed fluctuation can be suppressed while preventing a malfunction caused by the start of the suppression of the speed fluctuation during the speed change of the electric motor 2 such as acceleration, for example, such a defect that the speed change is amplified instead.
Moreover, the amplitude change unit 178 can determine the amplitude A in accordance with the amplitude of the speed feedback. In this case, the speed fluctuation can more effectively be suppressed by automatically generating the amplitude A in accordance with the magnitude of the speed fluctuation (for example, the magnitude of the vibration). Further, the amplitude change unit 178 can also gradually reduce the amplitude A when the speed of the electric motor 2 changes. In this case, the rapid change in speed can be suppressed when, for example, the function of suppressing the speed fluctuation is turned off.
The configurations of the embodiments above are described as specific examples, and are not intended to limit the invention disclosed herein to the configurations of those specific examples themselves. Various modifications may be made to the disclosed embodiments. Further the control illustrated in the flowcharts may also be appropriately replaced by other control having the same functions. It is to be understood that the technical scope of the invention disclosed herein cover all such modifications.
Moreover, apart of the series of procedures of processing described in the above-mentioned embodiments may be executed by dedicated hardware, but may be executed by software. When the series of procedures of processing is executed by software, the electric motor control apparatus includes a general-purpose or dedicated computer, and at least apart of the series of procedures of processing can be implemented by the computer executing a program.
It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and alterations may occur depending on design requirements and other factors insofar as they are within the scope of the appended claims or the equivalents thereof.
Number | Name | Date | Kind |
---|---|---|---|
4622500 | Budelman, Jr. | Nov 1986 | A |
20080297095 | Aono et al. | Dec 2008 | A1 |
20100308757 | Ide et al. | Dec 2010 | A1 |
20120268046 | Yamazaki | Oct 2012 | A1 |
20140265962 | Gebregergis et al. | Sep 2014 | A1 |
20150333670 | Nakajima et al. | Nov 2015 | A1 |
20170302201 | Saito | Oct 2017 | A1 |
Number | Date | Country |
---|---|---|
101686020 | Mar 2010 | CN |
102821505 | Dec 2012 | CN |
1519046 | Mar 2005 | EP |
3098449 | Nov 2016 | EP |
2002-247878 | Aug 2002 | JP |
2010-288440 | Dec 2010 | JP |
2012-100510 | May 2012 | JP |
2012-110111 | Jun 2012 | JP |
2014-150604 | Aug 2014 | JP |
5914777 | May 2016 | JP |
Entry |
---|
Search Report dated Jan. 31, 2020, for corresponding EP Patent Application No. 17903113.3. |
English translate for the International Search Report for PCT/JP2017/013801 dated Jun. 20, 2017. |
Number | Date | Country | |
---|---|---|---|
20200028454 A1 | Jan 2020 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2017/013801 | Mar 2017 | US |
Child | 16587075 | US |