Motor control device

CN123023239APending Publication Date: 2026-10-30将军有限公司
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202580023926.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-03-27
Filing Date
2025-03-24
Publication Date
2026-10-30

AI Technical Summary

Technical Problem

[0002]以往,已知不设置对电动机的转子位置进行检测的位置传感器而推定转子位置来控制电动机的方法

Benefits of technology

如上所述,根据本发明,即使在电动机电流周期性地变动的情况下,也能够高精度地推定转子位置。此外,这里记载的效果不一定被限定,也可以是本公开中记载的任意的效果。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123023239A_ABST
    Figure CN123023239A_ABST
Patent Text Reader

Abstract

A motor control device according to one embodiment includes a current detection unit, a current variation extraction unit, and a position estimation unit. The current detection unit detects a motor current flowing through a motor. The current variation extraction unit extracts a periodic variation component of the motor current, that is, a current variation component. The position estimation unit estimates a rotor position of the motor on the basis of the current variation component.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to an electric motor control device for controlling an electric motor. Background Technology

[0002] Conventionally, methods for controlling electric motors by estimating the rotor position without using a position sensor to detect the rotor position are known. For example, Patent Document 1 describes an electric motor control device for a permanent magnet synchronous motor driving a compressor, which uses sensorless vector control to perform torque control so that the motor torque follows the compressor load torque. In such an electric motor control device, shaft error is calculated based on motor current, an estimated speed of the motor is calculated based on the shaft error, and the rotor position is estimated based on the estimated speed of the motor.

[0003] Existing technical documents Patent documents Patent Document 1: Japanese Patent Application Publication No. 2021-125898 Summary of the Invention

[0004] The problem that the invention aims to solve When using an electric motor to drive a compressor or similar device, the load torque varies periodically during one rotation of the rotor. Therefore, if torque control is applied to the electric motor connected to a load with periodically varying load torque, the motor current is assumed to also vary periodically. If this periodic variation in motor current is not considered when estimating the rotor position, the accuracy of the rotor position estimation may be reduced.

[0005] For example, in the voltage saturation region where the output voltage of the motor is limited by the DC voltage supplied to the inverter driving the motor, in addition to the periodic fluctuations in the load torque as described above, it is also necessary to suppress the fluctuations in the amplitude of the voltage command value (output voltage amplitude). As a method to suppress such fluctuations in both load torque and voltage amplitude, adjusting the motor current is considered. However, in this case, the periodic fluctuations in the motor current also become significant, thus easily reducing the accuracy of rotor position estimation.

[0006] In view of the above, the object of the present invention is to provide a motor control device that can accurately estimate the rotor position even when the motor current varies periodically.

[0007] Technical solutions for solving the problem To achieve the above objectives, one embodiment of the present invention includes a motor control device comprising a current detection unit, a current variation extraction unit, and a position estimation unit.

[0008] The current detection unit detects the motor current flowing through the motor.

[0009] The current variation extraction unit extracts the periodic variation component of the motor current, i.e., the current variation component.

[0010] The position estimation unit estimates the rotor position of the motor based on the current variation component.

[0011] In this motor control device, the rotor position of the motor is estimated based on the periodic variation component, i.e., the current variation component, included in the motor current. Therefore, even when the motor current varies periodically, the rotor position can be estimated with high accuracy.

[0012] The motor control device may also include an inductor voltage calculation unit, which calculates the induced voltage, i.e., the inductor voltage, generated by the current variation component based on the inductance of the motor and the differential value of the current variation component. In this case, the position estimation unit can estimate the rotor position based on the inductor voltage.

[0013] Therefore, the induced voltage generated by the current variation component, i.e., the inductance voltage, can be included in the calculation to estimate the rotor position, thereby improving the estimation accuracy of the rotor position.

[0014] The current variation extraction unit can extract two or more current variation components with different periods. In this case, the inductor voltage calculation unit can also calculate the inductor voltage for each of the two or more current variation components based on the differential value of the current variation component, and calculate the total inductor voltage obtained by adding the inductor voltages of each of the two or more current variation components. In addition, the position estimation unit can also estimate the rotor position based on the total inductor voltage.

[0015] Therefore, the inductor voltage generated by the different current variation components in each cycle can be included in the calculation to estimate the rotor position, which can further improve the estimation accuracy of the rotor position.

[0016] The current variation extraction unit can also extract the current variation component by performing a Fourier series expansion on the motor current.

[0017] By using Fourier series expansion, the current variation component that suppresses the noise effect of the motor current can be extracted, and the rotor position can be estimated with high accuracy.

[0018] The current variation extraction unit can also extract the primary and secondary current variation components of the motor current by performing Fourier series expansion on the motor current.

[0019] For example, the more types of current variation components used for rotor position estimation, the higher the estimation accuracy, but the longer the processing time. Therefore, by using primary and secondary current variation components, it is possible to achieve both high accuracy in position estimation and reduced processing time.

[0020] When performing torque control on the motor, the position estimation unit can also estimate the rotor position based on the current variation component.

[0021] Therefore, the rotor position can be estimated with high accuracy when torque control is performed.

[0022] When the control region of the motor is in the voltage saturation region, the position estimation unit can also estimate the rotor position based on the current variation component.

[0023] Therefore, the rotor position can be estimated with high accuracy in the voltage saturation region.

[0024] Invention Effects As described above, according to the present invention, the rotor position can be estimated with high accuracy even when the motor current varies periodically. Furthermore, the effects described herein are not necessarily limited and may be any of the effects described in this disclosure. Attached Figure Description

[0025] Figure 1A This is a diagram illustrating an example of the operation of the electric motor control device of this disclosure.

[0026] Figure 1B This is a diagram illustrating an example of the operation of the electric motor control device of this disclosure.

[0027] Figure 2 This is a diagram illustrating a structural example of the electric motor control device according to this embodiment.

[0028] Figure 3 This is a diagram illustrating a structural example of the control switching determination unit involved in this embodiment.

[0029] Figure 4 This is a diagram illustrating a structural example of the corrective torque generator according to this embodiment.

[0030] Figure 5 This is a diagram illustrating a structural example of the voltage command value generator for the voltage saturation region involved in this embodiment.

[0031] Figure 6 This is a diagram illustrating a structural example of the output voltage limit command value generator according to this embodiment.

[0032] Figure 7AThis is a diagram illustrating an example of the operation of the current command value calculator according to this embodiment.

[0033] Figure 7B This is a diagram illustrating an example of the operation of the current command value calculator according to this embodiment.

[0034] Figure 8 This is a diagram illustrating an example of the operation of the voltage vector angle calculator involved in this embodiment.

[0035] Figure 9 This is a diagram illustrating an example of the operation of the MTPI voltage amplitude limiting processor according to this embodiment.

[0036] Figure 10 This is a diagram showing an example of an output voltage waveform.

[0037] Figure 11 This is a coordinate graph representing the measured data during motor control based on the steady-state model and the transient model involved in this embodiment, as comparative examples.

[0038] Figure 12 This is a coordinate graph representing the measured data during motor control based on a steady-state model, as a comparative example.

[0039] Figure 13 This is a coordinate graph representing the measurement data during motor control based on the transient model according to this embodiment. Detailed Implementation

[0040] The embodiments of the present invention will be described below with reference to the accompanying drawings.

[0041] In this disclosure, an example is a motor control device that performs torque control of a permanent magnet synchronous motor (PMSM) using sensorless vector control, such as a motor control device used in air conditioning units or cryogenic storage devices, which drives a compressor with periodic load torque variations. However, the disclosed technology can be widely applied to motor control devices that perform torque control of motors driving loads with periodic load torque variations.

[0042] <Operation of the motor control device> Figure 1A and Figure 1B This is a diagram illustrating an example of the operation of the electric motor control device of this disclosure.

[0043] Figure 1A and Figure 1B The constant induced voltage ellipse shown (in) Figure 1A and Figure 1B (Part of the ellipse shown in the figure) is the trajectory of the current vector when the induced voltage Vo of the motor becomes equal. If the angular velocity ωe, which is estimated by electrical angle, increases, the diameter of the constant induced voltage ellipse will decrease. Figure 1A The constant induced voltage ellipse shown represents the current vector trajectory under the condition that the electrical angle is estimated to be constant and the angular velocity ωe is constant. Furthermore, Figure 1B The constant induced voltage ellipse shown represents the current vector trajectory when the estimated angular velocity ωe varies with the load torque. Figure 1B The diagram shows a constant induced voltage ellipse at the maximum value of the estimated angular velocity ωe, a constant induced voltage ellipse at the minimum value of the estimated angular velocity ωe, and a constant induced voltage ellipse at the average value of the estimated angular velocity ωe.

[0044] When the motor control device of this disclosure performs torque control in the voltage saturation region of the motor's field weakening control, such as... Figure 1B As shown, the constant torque curve T is based on the variation of ±ΔT through torque control. (=To) Calculate the q-axis current command value Iq by finding the intersection point of ±ΔT) and the ellipse of the varying constant induced voltage. and d-axis current command value Id For example, the motor control device of this disclosure calculates the d-axis current command value Id based on the intersection of the constant torque curve and the constant induced voltage ellipse. and q-axis current command value Iq The constant torque curve is based on the average torque command value To. The total torque command value T is obtained by adding the variable torque command value ΔT, which serves as the correction torque. The trajectory of a constant current, this constant induced voltage ellipse, is the induced voltage command value V0 used to make the output voltage amplitude Va (the amplitude of the voltage command value) the desired amplitude. And the trajectory of the current from which the electrical angle-estimated angular velocity ωe becomes constant. Furthermore, the constant induced voltage ellipse and constant torque curve are not solely determined by motor parameters such as reactance, but change constantly according to the motor's operating state.

[0045] Furthermore, in this disclosure, the motor, which is the object of control, drives a compressor whose load torque varies periodically. Therefore, it is envisioned that the rotational speed (estimated angular velocity ωm) observed from the motor's mechanical angle will generate a primary variation component that varies with the period of the load torque variation, and a higher-order variation component with a period that is an integer multiple of the load torque variation period. Therefore, the mechanical angle phase θm and the motor current (d-axis current Id, q-axis current Iq) will also include a primary variation component and a higher-order variation component due to the periodic load torque variation. The motor control device performs the aforementioned torque control in a state where the mechanical angle phase θm and the motor current also include periodic variation components.

[0046] <Structure of Motor Control Device> Figure 2 This is a diagram illustrating a structural example of the electric motor control device according to this embodiment. Figure 2 In this device, the motor control unit 100 includes a subtractor 11, a subtractor 38, a speed controller 12, an adder 13, a voltage command value generator 14, a control switching decision unit 15, a dq / u, v, w converter 23, a PWM (Pulse Width Modulation) modulator 24, and an IPM (Intelligent Power Module) 25. The IPM 25 is connected to the motor M. As an example of the motor M, a PMSM can be cited.

[0047] Additionally, the motor control device 100 includes a shunt resistor 26, a current sensor 27a, a current sensor 27b, and a 3φ current calculator 28. Furthermore, the motor control device 100 may only require either the shunt resistor 26 or either the current sensor 27a or the current sensor 27b.

[0048] In addition, the motor control device 100 includes a u, v, w / dq converter 29, a current variation extractor 35, an inductor voltage calculator 36, a shaft error calculator 30, a PLL (Phase Locked Loop) controller 31, a position estimator 32, an 1 / Pn processor 33, and a correction torque generator 34.

[0049] The voltage command value generator 14 includes a normal control region voltage command value generator 14a, a voltage saturation region voltage command value generator 14b, a switch SW1, and a switch SW2. Switch SW1 has contacts 14c-1, 14c-2, and 14c-3. Switch SW2 has contacts 14c-4, 14c-5, and 14c-6.

[0050] Subtractor 11 uses the mechanical angular velocity command value ωm input to motor control device 100 from outside of motor control device 100 (e.g., a higher-level controller). The angular velocity error Δω is calculated by subtracting the current estimated angular velocity, i.e., the mechanical estimated angular velocity ωm, output by the 1 / Pn processor 33, and the calculated angular velocity error Δω is output to the speed controller 12.

[0051] Speed ​​controller 12 generates an average torque command value To that brings the angular velocity error Δω input from subtractor 11 close to zero. And the generated average torque command value To Output to adder 13.

[0052] Adder 13 inputs the average torque command value To from speed controller 12. The total torque command value T is calculated by adding it to the variable torque command value ΔT output by the corrected torque generator 34. And calculate the total torque command value T Output to voltage command value generator 14.

[0053] Voltage command value generator 14 is based on the total torque command value T output by adder 13 in the normal control region and the voltage saturation region, respectively. Generate d-axis voltage command value Vd and q-axis voltage command value Vq It outputs the generated d-axis voltage command value Vd. and q-axis voltage command value Vq The voltage saturation region refers to the area where the output voltage amplitude Va of the motor M is saturated during high rotational speeds, thus requiring field weakening control. The normal control region refers to the area outside the voltage saturation region; it is the area where the output voltage can be varied to control the motor M. In the normal control region, maximum torque / current control, etc., are performed.

[0054] When the control switching determination unit 15 outputs the control signal CONTROL_TYPE: A (normal control), the voltage command value generator 14 connects contacts 14c-1 and 14c-3 of switch SW1, and contacts 14c-4 and 14c-6 of switch SW2, and transmits the d-axis voltage command value Vd generated by the normal control area voltage command value generator 14a. and q-axis voltage command value Vq Output to dq / u, v, w converter 23. On the other hand, when the control signal CONTROL_TYPE (voltage saturation control) is output through the control switching determination unit 15, the voltage command value generator 14 connects contacts 14c-2 and 14c-3 of switch SW1, and contacts 14c-5 and 14c-6 of switch SW2, and outputs the d-axis voltage command value Vd generated by the voltage saturation region voltage command value generator 14b. and q-axis voltage command value Vq Output to dq / u, v, w converter 23.

[0055] The control switching decision unit 15 is based on the output voltage limit value Vdq_limit and the d-axis voltage command value Vd. and the q-axis voltage command value Vq The system determines whether the current control region of motor M is a normal control region or a voltage saturation region. Furthermore, if the control switching determination unit 15 determines that the current control region of motor M is a normal control region, it outputs a control signal CONTROL_TYPE: A (normal control) to the voltage command value generator 14; if it determines that the current control region of motor M is a voltage saturation region, it outputs a control signal CONTROL_TYPE: B (voltage saturation control) to the voltage command value generator 14. The output voltage limit value Vdq_limit is obtained by converting the DC voltage Vdc supplied to IPM25 from an external source (e.g., a power converter not shown) into a voltage value in the dq rotating coordinate axis system of the control system.

[0056] The dq / u, v, w converter 23, based on the current rotor position (electric angle phase, dq axis phase) θe output by the position estimator 32, converts the two-phase d-axis voltage command values ​​Vd output by the voltage command value generator 14. and the q-axis voltage command value Vq Output voltage command value Vu to the U phase of the three phases V-phase output voltage command value Vv and the W-phase output voltage command value Vw Conversion. Furthermore, the dq / u, v, w converter 23 will convert the U-phase output voltage command value Vu. V-phase output voltage command value Vv and the W-phase output voltage command value Vw Output to PWM modulator 24.

[0057] PWM modulator 24 is based on the U-phase output voltage command value Vu V-phase output voltage command value Vv W-phase output voltage command value Vw In addition to the PWM carrier signal, a six-phase PWM signal is generated and output to the IPM25.

[0058] IPM25 converts the DC voltage Vdc supplied from the outside of IPM25 based on the six-phase PWM signal output by PWM modulator 24, thereby generating AC voltages that are applied to the U-phase, V-phase, and W-phase of motor M respectively, and applies each AC voltage to the U-phase, V-phase, and W-phase of motor M.

[0059] When detecting the bus current using a single shunt method with shunt resistor 26, the 3φ current calculator 28 calculates the U-phase current value Iu, V-phase current value Iv, and W-phase current value Iw of motor M based on the six-phase PWM switching information output by PWM modulator 24 and the detected bus current. Alternatively, when detecting the U-phase current and V-phase current through current sensors 27a and 27b, the 3φ current calculator 28 calculates the remaining W-phase current value Iw based on Kirchhoff's law "Iu + Iv + Iw = 0". The 3φ current calculator 28 outputs the calculated phase current values ​​Iu, Iv, and Iw to the u, v, w / dq converter 29.

[0060] The u, v, w / dq converter 29, based on the electrical angle phase θe representing the current rotor position output by the position estimator 32, converts the three-phase U-phase current values ​​Iu, V-phase current values ​​Iv, and W-phase current values ​​Iw output by the 3φ current calculator 28 into two-phase d-axis currents Id and q-axis currents Iq. Furthermore, the u, v, w / dq converter 29 outputs the d-axis current Id and q-axis current Iq to the voltage command value generator 14, the current variation extractor 35, and the axis error calculator 30.

[0061] Furthermore, the U-phase current value Iu, V-phase current value Iv, and W-phase current value Iw of the motor M are detected values ​​obtained by detecting the current values ​​of each phase of the motor M. Therefore, it can be said that the d-axis current Id and q-axis current Iq obtained by converting the U-phase current value Iu, V-phase current value Iv, and W-phase current value Iw are also detected values. In the vector control of the motor M, the d-axis current Id and q-axis current Iq are used as detected values ​​of the motor current flowing through the motor M. In this embodiment, a current detection unit is constituted by a 3φ current calculator 28 and a u, v, w / dq converter 29, which detects the motor current flowing through the motor.

[0062] The current variation extractor 35 uses the d-axis current Id output by the u, v, w / dq converter 29 and the mechanical angle phase θmn output by the position estimator 32 to calculate the periodic variation component of the d-axis current Id, i.e., the d-axis current variation component ΔId. Similarly, it uses the q-axis current Iq output by the u, v, w / dq converter 29 and the mechanical angle phase θmn output by the position estimator 32 to calculate the periodic variation component of the q-axis current Iq, i.e., the q-axis current variation component ΔIq.

[0063] Here, the mechanical angle phase θmn is the nth mechanical angle phase. In this embodiment, the first mechanical angle phase θm1 and the second mechanical angle phase θm2 are used. Furthermore, in this embodiment, the current variation extractor 35 calculates the d-axis current variation component ΔId and the q-axis current variation component ΔIq for the nth current variation component according to the nth order. The current variation extractor 35 then outputs the d-axis current variation component ΔId and the q-axis current variation component ΔIq to the inductor voltage calculator 36. The operation of the current variation extractor 35 will be explained in detail later. In this embodiment, the current variation extractor 35 corresponds to the current variation extraction unit.

[0064] The inductor voltage calculator 36 uses the d-axis current variation component ΔId output from the current variation extractor 35, the d-axis inductance Ld of the motor M, and the mechanical angle phase θmn output from the position estimator 32 to calculate the induced voltage generated by the d-axis current variation component ΔId, i.e., the inductor voltage pLdId (hereinafter sometimes referred to as the inductor voltage pLdId generated by the d-axis current variation). Additionally, the inductor voltage calculator 36 uses the q-axis current variation component ΔIq output from the current variation extractor 35, the d-axis inductance Ld of the motor M, and the mechanical angle phase θmn output from the position estimator 32 to calculate the induced voltage generated by the q-axis current variation component ΔIq, i.e., the inductor voltage pLdIq (hereinafter sometimes referred to as the inductor voltage pLdIq generated by the q-axis current variation). Here, "p" in the inductor voltage pLdId generated by the d-axis current variation and the inductor voltage pLdIq generated by the q-axis current variation denotes the differential operator. In addition, the d-axis inductance Ld of the motor M is stored in the motor control device 100.

[0065] In this embodiment, the inductor voltage calculator 36 calculates the inductor voltage pLdId generated by the d-axis current variation and the inductor voltage pLdIq generated by the q-axis current variation for each of the n current variation components, based on the number of variations n. Furthermore, the inductor voltage calculator 36 outputs the inductor voltage pLdId generated by the d-axis current variation and the inductor voltage pLdIq generated by the q-axis current variation to the axis error calculator 30. The operation of the inductor voltage calculator 36 will be explained in detail later. In this embodiment, the inductor voltage calculator 36 is equivalent to an inductor voltage calculation unit.

[0066] The axis error calculator 30 uses the d-axis voltage command value Vd output by the voltage command value generator 14. and q-axis voltage command value Vq The shaft error Δθ (the difference between the estimated rotation axis and the actual rotation axis) is calculated using the d-axis current Id and q-axis current Iq output from the u, v, w / dq converter 29, the inductor voltage pLdId generated by the d-axis current variation and the inductor voltage pLdIq generated by the q-axis current variation output from the inductor voltage calculator 36, and the estimated angular velocity ωe output from the PLL controller 31. The shaft error calculator 30 then outputs the calculated shaft error Δθ to the PLL controller 31. Thus, in the motor control device 100, the shaft error Δθ is calculated using the inductor voltages (pLdId generated by the d-axis current variation and pLdIq generated by the q-axis current variation) corresponding to the current variation components (d-axis current variation component ΔId and q-axis current variation component ΔIq). The specific operation of the shaft error calculator 30 will be explained in detail later.

[0067] The PLL controller 31 calculates the electrical estimated angular velocity ωe, which is the current estimated angular velocity, based on the shaft error Δθ output by the shaft error arithmetic unit 30, and outputs the calculated electrical estimated angular velocity ωe to the position estimator 32, the 1 / Pn processor 33, the voltage command value generator 14, and the shaft error arithmetic unit 30.

[0068] The position estimator 32 estimates the angular velocity ωe based on the electrical angle output by the PLL controller 31, and estimates the electrical angle phase θe and the mechanical angle phase θm. Furthermore, the position estimator 32 outputs the estimated electrical angle phase θe to the dq / u, v, w converter 23 and the u, v, w / dq converter 29, and outputs the estimated mechanical angle phase θm to the voltage command value generator 14 and the corrective torque generator 34. The mechanical angle phase θm output to the voltage command value generator 14 and the corrective torque generator 34 is the primary mechanical angle phase θm1. Hereinafter, when referred to only as the mechanical angle phase "θm", it refers to the primary mechanical angle phase "θm1".

[0069] In addition, the position estimator 32 estimates the secondary mechanical angle phase θm2 based on the electrical angle-estimated angular velocity ωe. Furthermore, the position estimator 32 outputs the primary mechanical angle phase θm1 (θm) and the secondary mechanical angle phase θm2 as the nth mechanical angle phase θmn to the current variation extractor 35 and the inductor voltage calculator 36.

[0070] The 1 / Pn processor 33 calculates the mechanical angle estimated angular velocity ωm by dividing the electrical angle estimated angular velocity ωe output by the PLL controller 31 by the number of pole pairs Pn of the motor M, and outputs the calculated mechanical angle estimated angular velocity ωm to the subtractor 11 and the subtractor 38.

[0071] The estimated electrical angle velocity ωe output by the PLL controller 31 and the estimated mechanical angle velocity ωm output by the I / Pn processor 33 are parameters for estimating the rotational speed of the rotor of the motor M. Additionally, the electrical angle phase θe and mechanical angle phase θm output by the position estimator 32 are parameters for estimating the rotor position of the motor M. In this embodiment, the shaft error calculator 30, the PLL controller 31, the position estimator 32, and the I / Pn processor 33 constitute a position estimation unit that estimates the rotor position of the motor based on current variation components.

[0072] Subtractor 38 subtracts the mechanical angular velocity command value ωm from the mechanical angular velocity estimated by the 1 / Pn processor 33. The estimated angular velocity variation Δωm of the mechanical angle is calculated and output to the correction torque generator 34.

[0073] The corrected torque generator 34 is based on the allowable speed variation range of the motor M's vibration, i.e., the allowable speed variation value |Δωm|. The estimated angular velocity variation Δωm output from subtractor 38 and the mechanical angle phase θm output from position estimator 32 are used to generate a generator to suppress the periodic velocity variation, i.e., the estimated angular velocity variation Δωm, within the allowable velocity variation value |Δωm|. The following variable torque command value ΔT is generated and output to adder 13. Additionally, the speed variation allowable value |Δωm| is also specified. It is stored in the motor control device 100. In addition, the mechanical angle estimated angular velocity variation (velocity variation) Δωm is different from the angular velocity error Δω mentioned above, only in sign.

[0074] <Structure of the Control Switching Determination Unit> Figure 3 This diagram illustrates a structural example of the control switching determination unit according to this embodiment. Figure 3 In the middle, the control switching determination unit 15 has a voltage amplitude calculator 15a and a control switching determination unit 15b, which determines whether the current control region of the motor M is a normal control region or a voltage saturation region, as follows.

[0075] Voltage amplitude calculator 15a is based on the d-axis voltage command value Vd output by voltage command value generator 14. and q-axis voltage command value Vq The output voltage amplitude Va is calculated according to equation (1).

[0076] [Formula 1]

[0077] The control switching decision unit 15b compares the peak value of the output voltage amplitude Va calculated by the voltage amplitude calculator 15a with the output voltage limit value Vdq_limit.

[0078] When the peak value of the output voltage amplitude Va is less than the output voltage limit value Vdq_limit, the control switching determiner 15b determines that the current control area of ​​the motor M is the normal control area and outputs the control signal CONTROL_TYPE: A to the voltage command value generator 14.

[0079] On the other hand, when the peak value of the output voltage amplitude Va is above the output voltage limit value Vdq_limit, the control switching determiner 15b determines that the current control region of the motor M is the voltage saturation region and outputs the control signal CONTROL_TYPE:B to the voltage command value generator 14.

[0080] <Structure of the Correction Torque Generator> Figure 4 This is a diagram illustrating a structural example of the corrective torque generator according to this embodiment. Figure 4 In the process, the corrected torque generator 34 includes a speed variation component separator 34a, a speed variation amplitude calculator 34b, a subtractor 34c, a corrected torque amplitude calculator 34d, a speed variation phase corrector 34e, a quadrature component separator 34f, and a corrected torque demodulator 34g.

[0081] The corrective torque generator 34 adjusts the amplitude (corrective torque amplitude |ΔT|) and phase of the variable torque command value (corrective torque) ΔT in each mechanical angle cycle so that the speed variation amplitude |Δωm| is within the allowable speed variation value |Δωm| that does not cause problems for the vibration of the motor M in practical use. Inside.

[0082] According to equations (2.1) and (2.2), the velocity variation component separator 34a separates the estimated angular velocity variation Δωm of the mechanical angle into two Fourier coefficients ωsin (sin component) and ωcos (cos component), which are the fundamental component of Δωm. By calculating the Fourier coefficients of the fundamental component of the estimated angular velocity variation Δωm of the mechanical angle in each mechanical angle cycle, the higher harmonic components of the estimated angular velocity variation Δωm of the mechanical angle can be eliminated, and the fundamental component of the estimated angular velocity variation Δωm of the mechanical angle can be extracted with high accuracy. ωsin and ωcos are values ​​updated for each mechanical angle cycle.

[0083] [Formula 2]

[0084] The velocity variation amplitude calculator 34b calculates the velocity variation amplitude |Δωm| based on the Fourier coefficients ωsin and ωcos, according to equation (3). ωsin and ωcos are values ​​updated according to each mechanical angle cycle, therefore the velocity variation amplitude |Δωm| is also updated according to each mechanical angle cycle.

[0085] [Formula 3]

[0086] Subtractor 34c subtracts the allowable velocity variation value |Δωm| from the velocity variation amplitude |Δωm| output by velocity variation amplitude calculator 34b. To calculate the speed variation error |Δωm|err. The allowable speed variation value |Δωm| The amplitude of velocity variation |Δωm| within the allowable range of vibration of motor M is specified.

[0087] The torque amplitude calculator 34d is based on the velocity variation amplitude |Δωm| and the allowable velocity variation value |Δωm|. The error is adjusted by correcting the torque amplitude |ΔT| in each mechanical angle cycle. For example, the correcting torque amplitude calculator 34d, according to equation (4), adjusts the speed variation amplitude |Δωm| and the speed variation allowable value |Δωm|. The error, i.e., the speed variation error |Δωm|err, is multiplied by the correction gain k, and the result of the multiplication is added to |ΔT|_old to calculate the correction torque amplitude |ΔT|. In equation (4), |ΔT|_old is the correction torque amplitude |ΔT| in the previous mechanical angle cycle. By appropriately setting the correction gain k, the speed variation |Δω| can be suppressed within the allowable speed variation value |Δωm|. Boundary oscillations, caused by rapid changes in load torque, result in speed variation |Δω| becoming greater than the allowable speed variation value |Δωm|. Large vibrations are generated.

[0088] [Formula 4]

[0089] The speed variation phase corrector 34e corrects the phase of the estimated angular velocity variation Δωm obtained in each mechanical angle cycle. For example, the speed variation phase corrector 34e multiplies the Fourier coefficients ωsin and ωcos by the correction gain k according to equations (5.1) and (5.2), and adds ωsin_i_old and ωcos_i_old to the multiplication results. In equation (5.1), ωsin_i_old is ωsin_i in the previous mechanical angle cycle, and in equation (5.2), ωcos_i_old is ωcos_i in the previous mechanical angle cycle. Furthermore, the speed variation phase corrector 34e calculates the arctangent of ωsin_i and ωcos_i according to equation (5.3) as the speed variation correction phase φωi. This speed variation correction phase φωi becomes the reference for the phase when performing torque control, and the phase delayed by π / 2 relative to this reference becomes the phase of the variable torque command value ΔT (corrected torque phase).

[0090] [Formula 5]

[0091] The orthogonal component separator 34f calculates the sin component (ωsin_i) and cos component (ωcos_i) of the velocity variation correction phase φωi based on the corrected torque amplitude |ΔT| and the velocity variation correction phase φωi, according to equations (6.1) and (6.2). This process also prevents divergence during phase correction based on the calculations in equations (5.1) and (5.2).

[0092] [Formula 6]

[0093] The corrected torque demodulator 34g calculates the variable torque command value ΔT based on the sin component (ωsin_i) and cos component (ωcos_i) of the speed variation correction phase φωi, according to equations (7.1) and (7.2). Through this process, the speed variation correction phase φωi is converted to a corrected torque phase delayed by π / 2, generating the instantaneous value of the variable torque command value ΔT under the mechanical angle phase θm.

[0094] [Formula 7]

[0095] In addition, the corrected torque demodulator 34g can also replace equations (7.1) and (7.2) to calculate the instantaneous value of the variable torque command value ΔT according to equation (8).

[0096] [Formula 8]

[0097] Furthermore, according to equation (9), adder 13 calculates the average torque command value To output by speed controller 12. The total torque command value T is calculated by adding the variable torque command value ΔT. .

[0098] [Formula 9]

[0099] <Structure of the voltage command value generator in the voltage saturation region> Figure 5 This diagram illustrates a structural example of the voltage command value generator for the voltage saturation region according to this embodiment. Figure 5 In the middle, the voltage saturation region voltage command value generator 14b has an output voltage limit command value generator 14b1, an induced voltage command value calculator 14b2, a current command value calculator 14b3, a temporary voltage command value calculator 14b4, a voltage vector angle calculator 14b5, and a voltage command value calculator 14b6.

[0100] Figure 6 This diagram illustrates a structural example of the output voltage limit command value generator according to this embodiment. Figure 6 In the output voltage limit command value generator 14b1, there are MTPI current command value calculator 14b1-1, MTPI voltage command value calculator 14b1-2, MTPI voltage amplitude calculator 14b1-3, average output voltage generator 14b1-4, MTPI voltage variation component extractor 14b1-5, adder 14b1-6, adder 14b1-8 and MTPI voltage amplitude limit processor 14b1-7.

[0101] The output voltage limit command value generator 14b1 generates the total torque command value T based on the total torque command value T. The output voltage limit command value Va is generated by taking the electrical angle estimated angular velocity ωe, the output voltage limit value Vdq_limit, the d-axis current Id, the q-axis current Iq, and the mechanical angle phase θm. The output voltage limit command value Va It is used to adjust the amplitude of the output voltage fluctuation within the range up to the output voltage limit Vdq_limit, and to make the phase of the output voltage fluctuation consistent with the phase of the output voltage fluctuation in the normal control region (MTPI control region).

[0102] exist Figure 6In the MTPI current command value calculator 14b1-1, the MTPI assuming d-axis current command value Id_mtpi is calculated. and the assumed q-axis current command value Iq_mtpi for MTPI The MTPI assumes a d-axis current command value of Id_mtpi. and the assumed q-axis current command value Iq_mtpi for MTPI It is the total torque command value T The intersection of the constant torque curve, which is the trajectory of a constant current, and the MTPI curve (maximum torque / current control curve). The intersection of the constant torque curve and the MTPI curve can be calculated, for example, using the motor torque formula of Equation (10) and the d-axis current formula on the MTPI curve when the q-axis current is known, i.e., Equation (11).

[0103] [Formula 10]

[0104] [Formula 11]

[0105] If the d-axis current Id is eliminated from equations (10) and (11), then as shown in equation (12), a quartic equation related to the q-axis current Iq can be obtained.

[0106] [Formula 12]

[0107] As a solution to the quartic equation shown in equation (12), by applying, for example, Newton's method to the quartic equation shown in equation (12), the total torque command value T can be derived. The MTPI assumed q-axis current command value Iq_mtpi at the intersection of the constant torque curve and the MTPI curve. A fairly good solution.

[0108] MTPI Current Command Value Calculator 14b1-1 Based on the MTPI Assumption q-axis Current Command Value Iq_mtpi as a Solution to Equation (12) According to the d-axis current formula in equation (11), the assumed d-axis current command value Id_mtpi of MTPI is calculated. .

[0109] MTPI Voltage Command Value Calculator 14b1-2 Based on MTPI Assumptions: D-Axis Current Command Value Id_mtpi MTPI assumes the q-axis current command value is Iq_mtpi Based on the electrical angle and the estimated angular velocity ωe, and according to the PMSM voltage equations shown in equations (13.1) and (13.2), the assumed d-axis voltage Vd_mtpi of MTPI is calculated. And MTPI assumes q-axis voltage Vq_mtpi Furthermore, “p” in equations (13.1) and (13.2) is a differential operator.

[0110] [Formula 13]

[0111] Furthermore, in equations (13.1) and (13.2), the voltage drops “p·Ld·Id” and “p·Lq·Iq” (the voltage in the p term) in the inductor associated with the current changes based on torque control are considered. “Ld” represents the d-axis inductance of motor M, and “Lq” represents the q-axis inductance of motor M.

[0112] Here, the voltage term p is represented using the time derivative of the current change. However, if the change in the detected current is directly used as the derivative value, then MTPI assumes the d-axis voltage Vd_mtpi. And MTPI assumes q-axis voltage Vq_mtpi It reacts sensitively to current noise. Therefore, the differential value is generated based on the variation of the current fundamental frequency, for example, as follows.

[0113] To explain the generation of the p-term voltage, firstly, the variation components ΔIda and ΔIqa of the d-axis current Id and q-axis current Iq are defined as in equations (14.1) and (14.2).

[0114] [Formula 14]

[0115] Here, when the mechanical angle rotates once and causes one periodic change, “Ida” and “φd” in Equation (14.1) represent the amplitude of the change of ΔIda and the initial phase, respectively. “Iqa” and “φq” in Equation (14.2) represent the amplitude of the change of ΔIqa and the initial phase, respectively. “θm” in Equations (14.1) and (14.2) represents the instantaneous value of the mechanical angle phase.

[0116] Therefore, the p-term voltage generated by the fundamental current variation is shown in equations (15.1) and (15.2). That is, the phase of the d-axis current variation and the q-axis current variation is advanced by π / 2, and the d-axis current variation and the q-axis current variation with the phase advanced by π / 2 are multiplied by the mechanical angle estimated angular velocity ωm, thereby generating the differential value (p-term voltage).

[0117] [Formula 15]

[0118] MTPI Voltage Amplitude Calculator 14b1-3 Based on MTPI Assumptions: d-axis voltage Vd_mtpi And MTPI assumes q-axis voltage Vq_mtpi The assumed output voltage Va_mtpi of MTPI is calculated according to equation (16). .

[0119] [Formula 16]

[0120] The average output voltage generator 14b1-4 outputs the average output voltage command value Va0. The average output voltage command value Va0 The average values ​​of the d-axis current Id and q-axis current Iq, which vary with each revolution of the rotor of motor M, are adjusted to track the MTPI curve (Maximum Torque / Current Control Curve). For example, the average output voltage generator 14b1-4 calculates the d-axis current Idt on the MTPI curve based on the current q-axis current Iq, and adjusts the average output voltage command value Va0 through PI control, etc. This is to eliminate the error between the calculated d-axis current Idt and the current d-axis current Id. The average output voltage generator 14b1-4 calculates the average output voltage command value Va0, for example, according to equations (17.1) and (17.2). Additionally, at the average output voltage command value Va0 When the output voltage limit Vdq_limit is exceeded, the average output voltage generator 14b1-4 generates the average output voltage command value Va0 according to equation (18). The output voltage is limited to the maximum value Vdq_limit. This is achieved by setting the average output voltage command value Va0. The output voltage limit is set to Vdq_limit, which is called flux weakening control. "Ψa" represents the linkage flux of motor M.

[0121] [Formula 17]

[0122] [Formula 18]

[0123] The MTPI voltage variation component extractor 14b1-5 calculates MTPI as follows, assuming an output voltage Va_mtpi. The amplitude of the change |ΔVa_mtpi| and the instantaneous value ΔVa_mtpi.

[0124] The MTPI voltage variation component extractor 14b1-5 first extracts the assumed MTPI output voltage Va_mtpi according to equations (19.1) and (19.2). The fundamental component is separated into a sin component (Fourier coefficient Va_mtpi_sin) and a cos component (Va_mtpi_cos). The MTPI voltage variation component extractor 14b1-5 calculates the assumed output voltage Va_mtpi of the MTPI in each mechanical angle cycle. The Fourier coefficients of the fundamental component can be used to extract the assumed output voltage Va_mtpi of MTPI after removing higher harmonic components. fundamental wave component.

[0125] [Formula 19]

[0126] Next, the MTPI voltage variation component extractor 14b1-5 calculates the assumed MTPI output voltage Va_mtpi based on the Fourier coefficients Va_mtpi_sin and Va_mtpi_cos calculated according to equation (19.1) and equation (19.2), according to equation (20). The amplitude of the fundamental component is |ΔVa_mtpi|. Furthermore, the Fourier coefficients Va_mtpi_sin and Va_mtpi_cos are updated values ​​for each mechanical angle period; therefore, the amplitude |ΔVa_mtpi| is also updated for each mechanical angle period.

[0127] [Formula 20]

[0128] Furthermore, the MTPI voltage variation component extractor 14b1-5 calculates the assumed output voltage Va_mtpi of MTPI according to equation (21). The instantaneous value of the fundamental component is ΔVa_mtpi.

[0129] [Formula 21]

[0130] Adder 14b1-6 calculates the average output voltage command value Va0 according to equation (22). With MTPI, the assumed output voltage Va_mtpi The amplitudes |ΔVa_mtpi| of the fundamental component are added together, and the assumed peak value of the output voltage variation Va_mtpi_peak of MTPI is calculated from this sum.

[0131] [Formula 22]

[0132] The MTPI voltage amplitude limiting processor 14b1-7 generates a variable output voltage limiting instruction value ΔVa_limit_mtpi and outputs the generated variable output voltage limiting instruction value ΔVa_limit_mtpi. This variable output voltage limiting instruction value ΔVa_limit_mtpi is adjusted to the addition result in adder 14b1-6, i.e., the MTPI assumes that the peak value of the output voltage fluctuation Va_mtpi_peak is below the output voltage limit value Vdq_limit.

[0133] For example, the MTPI voltage amplitude limiting processor 14b1-7 compares the average output voltage instruction value Va0. The MTPI assumes the peak output voltage fluctuation Va_mtpi_peak and the output voltage limit Vdq_limit. The amplitude ratio scale of the output voltage fluctuation component is calculated. By multiplying the amplitude ratio scale by the MTPI-assumed output voltage fluctuation component ΔVa_mtpi, the variable output voltage limit command value ΔVa_limit_mtpi is generated. Thus, a variable output voltage limit command value ΔVa_limit_mtpi that has a phase consistent with the MTPI-assumed output voltage fluctuation component ΔVa_mtpi can be generated.

[0134] For example, the MTPI voltage amplitude limiting processor 14b1-7 calculates the amplitude ratio scale of the output voltage variation component according to equations (23.1) to (23.3), and generates the variable output voltage limiting instruction value ΔVa_limit_mtpi based on the calculated amplitude ratio scale according to equation (23.4).

[0135] [Formula 23]

[0136] Adder 14b1-8, according to equation (24), uses the average output voltage command value Va0. The output voltage limit command value Va is calculated by adding it to the variable output voltage limit command value ΔVa_limit_mtpi. Adder 14b1-8 will calculate the output voltage limit command value Va. Output to the induced voltage command value calculator 14b2 and the voltage command value calculator 14b6.

[0137] [Formula 24]

[0138] exist Figure 5In the calculation, the induced voltage command value calculator 14b2 calculates the output voltage limit command value Va based on the current d-axis current Id, q-axis current Iq, and electrical angle estimated angular velocity ωe, according to the motor model shown in equations (25.1) and (25.2). Induced voltage command value Vo The following shows the induced voltage command value Vo. The details of the calculation.

[0139] The voltage equations (d-axis voltage Vd, q-axis voltage Vq), the theoretical formula for the output voltage amplitude Va, and the theoretical formula for the induced voltage Vo of the motor M are expressed by equations (25.1) to (27).

[0140] [Formula 25]

[0141] [Formula 26]

[0142] [Formula 27]

[0143] Furthermore, according to equations (25.1) to (27), the output voltage limit command value Va is... With the induced voltage command value Vo The formula for establishing the relationship is shown in equation (28). Therefore, the induced voltage command value calculator 14b2 calculates the induced voltage command value Vo according to equation (28). The calculated induced voltage command value Vo Output to the current command value calculator 14b3.

[0144] [Formula 28]

[0145] Current command value calculator 14b3 based on total torque command value T The trajectory of the constant current, i.e., the constant torque curve, corresponds to the induced voltage command value Vo. And by estimating the angular velocity ωe from the electrical angle, the trajectory of the constant current, i.e., the intersection of the constant induced voltage ellipse, is used to calculate the q-axis current command value Iq. and d-axis current command value Id (Reference Figure 1B The current command value calculator 14b3 will calculate the q-axis current command value Iq. and d-axis current command value Id Output to the temporary voltage command value calculator 14b4.

[0146] The intersection of the constant torque curve and the constant induced voltage ellipse can be calculated, for example, using the motor torque equation (29) and the induced voltage equation (30).

[0147] [Formula 29]

[0148] [Formula 30]

[0149] If the d-axis current Id is eliminated from equations (29) and (30), then a quartic equation related to the q-axis current Iq can be obtained as in equation (31). In equation (31), "ΔL = Ld - Lq".

[0150] [Formula 31]

[0151] As a solution to the quartic equation shown in equation (31), by applying, for example, Newton's method to the quartic equation shown in equation (31), the total torque command value T can be derived. The trajectory of the constant current, i.e., the constant torque curve, and the induced voltage Vo and the estimated angular velocity ωe, are the points where the q-axis current command value Iq intersects the ellipse representing the constant induced voltage. Equivalent solution (refer to) Figure 1B ).

[0152] The current command value calculator 14b3 calculates the q-axis current command value Iq. Then, according to Equation (32), which transforms the induced voltage equation (30) into the d-axis current equation, based on the q-axis current command value Iq... Calculate the d-axis current command value Id .

[0153] [Formula 32]

[0154] Here, in equation (32), as The sign used, whether positive or negative, is determined by calculating the torque at the point where the straight line parallel to the Iq axis and passing through point M (-Ψa / Ld, 0), which is the center of the constant induced voltage ellipse (hereinafter sometimes referred to as the "M-point boundary line") intersects the constant induced voltage ellipse (hereinafter sometimes referred to as the "torque on the M-point boundary T_M"). This torque is then compared with the total torque command value T. That's for you to decide.

[0155] The following shows the d-axis current command value Id. and the q-axis current command value Iq The calculation steps. Figure 7A and Figure 7B This is a diagram illustrating an example of the operation of the current command value calculator according to this embodiment.

[0156] The current command value calculator 14b3 first calculates the d-axis current Id_M at point M according to equation (33).

[0157] [Formula 33]

[0158] Next, the current command value calculator 14b3 calculates the q-axis current Iq_M at the point where the boundary line of point M intersects with the constant induced voltage ellipse. The q-axis current Iq_M can be calculated by substituting the d-axis current Id_M at point M into equation (30), and therefore is calculated according to equation (34).

[0159] [Formula 34]

[0160] Therefore, the current command value calculator 14b3 calculates the torque T_M on the boundary of point M according to equation (35).

[0161] [Formula 35]

[0162] Furthermore, the current command value calculator 14b3 is based on the total torque command value T. The relationship between the magnitude of the torque T_M at the boundary of point M and the torque T_M is used to determine the d-axis current command value Id according to equations (36.1) and (36.2). Equation (36.1) shows the "total torque command value T". The d-axis current command value Id under the condition of torque T_M on the boundary of point M ≤ (Reference Figure 7A Equation (36.2) shows the "total torque command value T". >The d-axis current command value Id under the condition of torque T_M on the boundary of point M. (Reference Figure 7B ).

[0163] [Formula 36]

[0164] The current command value calculator 14b3 will calculate the d-axis current command value Id as described above. and the q-axis current command value Iq Output to the temporary voltage command value calculator 14b4.

[0165] exist Figure 5 In the middle, the temporary voltage command value calculator 14b4 estimates the angular velocity ωe based on the electrical angle and the d-axis current command value Id. and the q-axis current command value Iq Based on the motor model shown in equations (37.1) and (37.2), the temporary d-axis voltage command value Vd_m and the temporary q-axis voltage command value Vq_m are calculated via feedforward. The temporary voltage command value calculator 14b4 outputs the calculated temporary d-axis voltage command value Vd_m and the temporary q-axis voltage command value Vq_m to the voltage vector angle calculator 14b5. Furthermore, by calculating the temporary voltage command value via feedforward, saturation (saturation phenomenon) that occurs in integrators such as PI control due to input saturation can be prevented.

[0166] [Formula 37]

[0167] Furthermore, in equations (37.1) and (37.2), the voltage drop in the inductor “p·Ld·Id” and “p·Lq·Iq” (the voltage of term p) associated with the current change based on torque control are taken into account.

[0168] The voltage vector angle calculator 14b5 calculates the voltage vector angle δ based on the temporary d-axis voltage command value Vd_m and the temporary q-axis voltage command value Vq_m, according to equation (38). The voltage vector angle calculator 14b5 outputs the calculated voltage vector angle δ to the voltage command value calculator 14b6. That is, as shown in the figure... Figure 8 As shown, the voltage vector angle calculator 14b5 calculates the angle between the output voltage vector with amplitude Va calculated as in equation (1) and the q-axis as the voltage vector angle δ. Therefore, in the voltage saturation region where the output voltage amplitude is limited to below the DC voltage that the inverter can output, the total torque command value T can be generated through calculation. The corresponding voltage vector angle δ. Therefore, vibration reduction control can be performed without adjusting the voltage vector angle, thus improving the vibration reduction effect of the motor M without adjusting the voltage vector angle. Figure 8 This is a diagram illustrating an example of the operation of the voltage vector angle calculator involved in this embodiment.

[0169] [Formula 38]

[0170] Voltage command value calculator 14b6 is based on voltage vector angle δ and output voltage limit command value Va. Based on equations (39.1) and (39.2), a coordinate transformation from polar coordinates to orthogonal coordinates is performed, thereby calculating the d-axis voltage command value Vd. and the q-axis voltage command value Vq .

[0171] [Equation 39]

[0172] <Operation of MTPI Voltage Amplitude Limitation Processor> Figure 9 is a diagram for illustrating an operation example of the MTPI voltage amplitude limitation processor according to the present embodiment.

[0173] For example, as shown in Figure 9 case (a), when the peak value Va_mtpi_peak of the MTPI assumed output voltage variation component ΔVa_mtpi that varies around the average output voltage command value Va0 is equal to or less than the output voltage limit value Vdq_limit, the condition of Expression (23.2) is satisfied, so the MTPI voltage amplitude limitation processor 14b1-7 sets the amplitude ratio scale of the output voltage variation component to "1". Further, the MTPI voltage amplitude limitation processor 14b1-7 sets "scale=1" in Expression (23.4), and directly outputs the MTPI assumed output voltage variation component ΔVa_mtpi as the variable output voltage limitation command value ΔVa_limit_mtpi. As a result, the output voltage limitation command value Va matches the MTPI assumed output voltage variation component ΔVa_mtpi.

[0174] Further, for example, as shown in Figure 9 case (b), when the peak value Va_mtpi_peak of the MTPI assumed output voltage variation component ΔVa_mtpi that varies around the average output voltage command value Va0 exceeds the output voltage limit value Vdq_limit and the average output voltage command value Va0 does not exceed the output voltage limit value Vdq_limit, the condition of Expression (23.3) is satisfied, so the MTPI voltage amplitude limitation processor 14b1-7 sets the amplitude ratio scale of the output voltage variation component to "(Vdq_limit-Va0 ) / |ΔVa_mtpi|". Further, the MTPI voltage amplitude limitation processor 14b1-7 outputs the value obtained by setting "scale=(Vdq_limit-Va0 The variable output voltage limit command value ΔVa_limit_mtpi is generated by taking the output voltage variation component ΔVa_mtpi with the phase consistent with the MTPI assumed output voltage variation component ΔVa_mtpi and the peak value based on the variation amplitude becomes the output voltage limit value Vdq_limit. .

[0175] Additionally, for example, such as Figure 9 As shown in case (c), under the MTPI assumption, the average output voltage command value Va0 of the output voltage variation component ΔVa_mtpi is... When the output voltage exceeds the limit value Vdq_limit, the condition of equation (23.1) is met. Therefore, the MTPI voltage amplitude limiting processor 14b1-7 sets the amplitude ratio scale of the output voltage variation component to "0". Furthermore, the MTPI voltage amplitude limiting processor 14b1-7 sets scale=0 in equation (23.4), sets the variable output voltage limiting command value ΔVa_limit_mtpi to "0", and outputs it. As a result, the output voltage limiting command value Va... It is consistent with the output voltage limit value Vdq_limit.

[0176] By controlling the output voltage limit command value Va in this way ,like Figure 10 As shown in the example of the output voltage waveform, even after the control region of the motor M has just transitioned from the normal control region to the voltage saturation region, the output voltage amplitude Va can be maintained below the output voltage limit value Vdq_limit, and the output voltage amplitude Va can be made consistent between the normal control region and the voltage saturation region. Therefore, the switching shock during the transition from the normal control region to the voltage saturation region can be reduced. Furthermore, the motor control device 100 has a voltage saturation region voltage command value generator 14b, thereby enabling the response to the output voltage limit command value Va even in the voltage saturation region. The center of variation is the average output voltage command value Va0. The case where the output voltage is limited by the limit value Vdq_limit.

[0177] <Operation of the voltage command value generator in the typical control area> When the control switching determination unit 15 determines that the current control region of the motor M is a normal control region, the voltage command value generator 14a generates a voltage command value based on the total torque command value T. Calculate the d-axis voltage command value Vd based on the electrical angle estimated angular velocity ωe, d-axis current Id, q-axis current Iq, and mechanical angle phase θm. and the q-axis voltage command value Vq .

[0178] In the typically limited region voltage command value generator 14a, MTPI control (maximum torque / current control) is performed, for example, for torque control. In this method, the d-axis current command value Id and q-axis current command value Iq Based on the total torque command value T The calculation is based on the intersection of the constant torque curve (which represents the trajectory of a constant current) and the MTPI curve. Additionally, it is calculated using the q-axis current command value Iq. The q-axis voltage command value Vq is calculated using PI control based on the difference between the q-axis current Iq and the q-axis current error (q-axis current error). Additionally, by performing a command on the d-axis current value Id... The PI control is used to calculate the d-axis voltage command value Vd based on the difference between the d-axis current Id and the d-axis current (d-axis current error). .

[0179] In addition, regarding the d-axis current command value Id and the q-axis current command value Iq It can also correct the response delay when calculating the intersection of the constant torque curve and the MTPI curve, as well as the phase error and amplitude error caused by dq-axis interference. Additionally, regarding the d-axis voltage command value Vd... and the q-axis voltage command value Vq Alternatively, it can be output as the final voltage command value after decoupling control. Furthermore, the d-axis voltage command value Vd is calculated. and the q-axis voltage command value Vq There are no restrictions on the method used, and torque control methods other than MTPI control can also be used.

[0180] <Research on Rotor Position Estimation Based on Steady-State Model> Thus far, the control command value (d-axis voltage command value Vd) of motor M has been calculated in both the normal control region and the voltage saturation region. and the q-axis voltage command value Vq The method for estimating the rotor position of motor M has been explained. The following explains the method for estimating the rotor position of motor M.

[0181] As a method for estimating the rotor position based on the d-axis current Id and the q-axis current Iq, the shaft error calculation formula in steady state, which utilizes the extended induced voltage model shown in equation (40), is widely used.

[0182] [Formula 40]

[0183] In equation (40), R is the resistance of motor M, and Lq is the q-axis inductance of motor M. Additionally, Vd and Vq are the d-axis and q-axis voltages applied to motor M, respectively. Id and Iq are the d-axis and q-axis currents flowing through motor M, respectively. Furthermore, the arctangent function (tan... -1 The numerator in the equation is the γ-axis induced voltage, and the denominator is the δ-axis induced voltage. Here, the γ-axis and δ-axis are assumed rotating coordinate systems for control purposes.

[0184] When estimating the rotor position, the shaft error Δθ is calculated according to equation (40). The electrical angle ωe is estimated using the shaft error Δθ, and the electrical angle phase (dq axis phase) θe and mechanical angle phase θm representing the rotor position are estimated using the electrical angle ωe. In addition, in the calculation of the shaft error Δθ, the d-axis voltage command value Vd is used as Vd and Vq in equation (40). and the q-axis voltage command value Vq As Id and Iq, the detected values ​​of the motor current are used, namely the d-axis current Id and the q-axis current Iq.

[0185] Here, the relationship between the torque control described above and the motor current (d-axis current Id and q-axis current Iq) will be explained. In cases where the load torque acting on the motor M varies periodically, such as in the operation of a single-rotor compressor, if the torque of the motor M is not adjusted, it is assumed that the speed (electrical estimated angular velocity ωe) of the motor M will also vary periodically due to the periodic variation of the load torque. In this situation, there is a possibility of vibration and noise, and difficulty in stably controlling the motor M. The torque control described above is a control method that adjusts the torque of the motor M in conjunction with the variation of the load torque to suppress such speed variations.

[0186] In torque control, the d-axis current command value Id is adjusted. and q-axis current command value Iq To generate torque as the target, based on the adjusted d-axis current command value Id and q-axis current command value Iq Generate d-axis voltage command value Vd and the q-axis voltage command value Vq In this case, it is assumed that the d-axis current Id and q-axis current Iq flowing through the motor M also change periodically in accordance with the periodic variation of the load torque.

[0187] The inventors have observed that, under conditions where the d-axis current Id and the q-axis current Iq fluctuate periodically, if torque control using the aforementioned equation (40) is performed, oscillations occur near the peak point of the periodically fluctuating current (hereinafter, sometimes referred to as the current peak), and consequently, power consumption sometimes deteriorates. In particular, it is known that in the voltage saturation region where the output voltage amplitude Va of the motor M is limited by the DC voltage, during torque control (torque control performed by the aforementioned voltage saturation region voltage command value generator 14b) that balances the suppression of voltage fluctuations and speed fluctuations, significant oscillations occur near the current peak (see [reference]). Figure 12 (etc.). This may cause unstable control of motor M and increased power consumption.

[0188] The following is for reference Figure 10 The reasons for the oscillations in the current are examined. For example, in Figure 10 The diagram illustrates the case where the output voltage amplitude Va varies periodically in the normal control region. This periodic variation of the output voltage amplitude Va is a result of controlling the torque of the motor M in accordance with the periodic variation of the load torque. Furthermore, in the normal control region, the output voltage amplitude Va falls below the output voltage limit value Vdq_limit. Therefore, it is not necessary to limit the output voltage amplitude Va. In this case where the output voltage amplitude Va is not limited, for example, the d-axis current command value Id is set... and q-axis current command value Iq The main component is the q-axis current command value Iq that causes the motor M to generate torque. Control that varies periodically. In this case, the d-axis current command value Id The variation is greater than the q-axis current command value Iq Smaller.

[0189] On the other hand, in the voltage saturation region, the output voltage amplitude Va is limited by the output voltage limit value Vdq_limit. In the voltage command value generator 14b in the voltage saturation region, the d-axis current command value Id is adjusted. and q-axis current command value Iq This is to ensure that the output voltage amplitude Va does not exceed the output voltage limit Vdq_limit and to suppress speed variations. In this case, not only the q-axis current command value Iq... The variation increases, and the d-axis current command value Id The variation also increases, resulting in the d-axis current Id and q-axis current Iq flowing in motor M fluctuating periodically with relatively large variations. Thus, in torque control within the voltage saturation region, it can be said that both voltage variation suppression and speed variation suppression are achieved by varying the d-axis current Id.

[0190] The extended induced voltage model represented by equation (40) is a steady-state model based on the premise of steady-state conditions. In steady-state conditions, the dq-axis current (and γδ-axis current) are considered as DC. Therefore, in equation (40), the variations of the d-axis current Id and the q-axis current Iq (i.e., the time variations of the d-axis current Id and the q-axis current Iq) are not considered, and the transient response of the current is not reflected when estimating the axis error Δθ. Therefore, it is believed that as the variation components of the d-axis current Id and the q-axis current Iq increase, the estimation accuracy of the axis error Δθ decreases. As a result, it is believed that positional offset occurs during torque control, and oscillations occur near the current peak.

[0191] Rotor position estimation based on a transient model that takes into account current variations. With this in mind, the inventors constructed a transient model that considers the variations in d-axis current Id and q-axis current Iq. Equation (41) is the formula for calculating the axis error in the transient model. Furthermore, in Equation (41), "p" is the differential operator, and Ld is the d-axis inductance in the motor M.

[0192] [Formula 41]

[0193] Equation (41) includes the inductor voltage “p·Ld·Id” and “p·Ld·Iq” (the voltage term p) associated with the current change in torque control. That is, in the transient model considering the current variation shown in Equation (41), the inductor voltage (the voltage term p) is considered as the differential value of the current. Thus, the effect of current variation in torque control and the like (the effect of transient changes in current) can be reflected.

[0194] For example, in the extended induced voltage model based on steady-state conditions, expressed by equation (40), the inductor voltage associated with current changes is not considered, thus generating model errors. In particular, to make the axis error Δθ zero, the accuracy of the model of the γ-axis induced voltage in the numerator of the arctangent function is important, but the inductor voltage (p·Ld·Id) generated by the current change (d-axis current variation) of the d-axis current Id is not included in the numerator of the arctangent function of equation (40). Therefore, it is believed that the model error in equation (40) becomes larger, especially in torque control in the voltage saturation region where the d-axis current Id changes significantly, and significant oscillations occur near the current peak.

[0195] In contrast, in the model shown in equation (41), the inductor voltage (p·Ld·Id) generated by the change in the d-axis current Id is reflected when calculating the shaft error Δθ. Therefore, even when the d-axis current Id varies during torque control in the voltage saturation region, the shaft error Δθ can be calculated with high accuracy. The following is a detailed explanation of the process for calculating the shaft error Δθ using the model shown in equation (41). Figure 2 The operation of each part of the current variation extractor 35, inductor voltage calculator 36, and shaft error calculator 30 shown.

[0196] <Action of the current fluctuation extractor> The current variation extractor 35 extracts the periodic variation components of the motor current, i.e., the current variation components. The current variation components are the periodic variation components of the d-axis current Id and the q-axis current Iq generated by torque control. The current variation extractor 35 extracts the d-axis current variation component ΔId from the d-axis current Id and the q-axis current variation component ΔIq from the q-axis current Iq.

[0197] In this embodiment, the current variation extractor 35 extracts the current variation components by performing a Fourier series expansion on the motor currents (d-axis current Id and q-axis current Iq). Specifically, a computing device such as a microcomputer constituting the motor control device 100 performs a process to calculate the Fourier coefficients of the Fourier series expansion on both the d-axis current Id and the q-axis current Iq. This process is, for example, equivalent to the process of extracting periodic variation components by performing a Fourier transform on the d-axis current Id and the q-axis current Iq.

[0198] As will be described later, in the calculation of the inductor voltage (p-term voltage), the differential value of the current is used, obtained by differentiating the current variation component. The current differential value is a parameter whose value is easily affected by noise, etc. In contrast, by using Fourier series expansion, the current variation component that suppresses the influence of noise on the d-axis current Id and q-axis current Iq can be extracted. Therefore, the value of the current differential is stable, improving the accuracy of the inductor voltage calculation.

[0199] Furthermore, in this embodiment, the current variation extractor 35 extracts two or more current variation components with different periods. For example, in the case of operating a single-rotor compressor, the load torque vibrates with a period that is the same as the mechanical angle phase θm of the motor M. In this case, if torque control is performed, higher-order current variation components, such as a primary current variation component that varies with the same period as the mechanical angle phase θm and a secondary current variation component that varies with twice the period of the mechanical angle phase θm, are generated in the d-axis current Id and the q-axis current Iq. The current variation extractor 35 extracts the primary current variation component and the higher-order current variation components from the d-axis current Id and the q-axis current Iq, respectively. By using these current variation components, the calculation accuracy of the inductor voltage can be improved.

[0200] In this embodiment, the current variation extractor 35 extracts the primary and secondary current variation components of the motor currents (d-axis current Id and q-axis current Iq) by performing a Fourier series expansion. For example, the more types of current variation components used for rotor position estimation, the higher the estimation accuracy, but the longer the processing time. Therefore, by using both primary and secondary current variation components, it is possible to achieve both high accuracy in position estimation and reduced processing time.

[0201] Hereinafter, the number of current variation components will be recorded as n (n=1 or 2). In addition, the nth d-axis current variation component will be recorded as ΔIdn, and the nth q-axis current variation component will be recorded as ΔIqn.

[0202] First, the method for calculating the nth-order d-axis current variation component ΔIdn is explained. The current variation extractor 35 separates the nth-order d-axis current variation component ΔIdn into sin and cos components for calculation. Specifically, the current variation extractor 35 calculates the sin component Idn_sin of the nth-order d-axis current variation component ΔIdn according to equation (42.1), and calculates the cos component Idn_cos of the nth-order d-axis current variation component ΔIdn according to equation (42.2).

[0203] [Formula 42]

[0204] Equations (42.1) and (42.2) are numerical expressions representing the nth order Fourier coefficients. The nth order mechanical angle phase θmn is the first mechanical angle phase θm1 when n=1, and the second mechanical angle phase θm2 when n=2. Furthermore, the nth order mechanical angle phase θmn (θm1 or θm2) is determined by a reference... Figure 2 The position estimator 32 calculates the instantaneous value. The sin component Idn_sin and cos component Idn_cos of the d-axis current variation component ΔIdn are calculated n times per mechanical angle cycle. This allows for the removal of noise and other higher harmonic components.

[0205] The current variation extractor 35 uses the sin component Idn_sin and cos component Idn_cos of the nth d-axis current variation component ΔIdn to calculate the amplitude |ΔIdn| of the nth d-axis current variation component ΔIdn according to equation (43.1), and calculates the reference phase φdn of the nth d-axis current variation component ΔIdn according to equation (43.2).

[0206] [Formula 43]

[0207] The nth d-axis current variation component ΔIdn is expressed using the amplitude |ΔIdn| of equation (43.1) and the reference phase of equation (43.2) as in equation (44).

[0208] [Formula 44]

[0209] The nth mechanical angle phase θmn recorded in equation (44) is a variable that changes with the rotation of the motor M. Therefore, the waveform of the nth d-axis current variation component ΔIdn becomes a sin waveform that vibrates with an amplitude |ΔIdn| with the reference phase φdn as the initial phase. Thus, the process of extracting the nth d-axis current variation component ΔIdn is the process of calculating the parameters (amplitude |ΔIdn| and reference phase φdn) that can represent its waveform.

[0210] Next, the method for calculating the nth q-axis current variation component ΔIqn will be explained. The calculation method for the nth q-axis current variation component ΔIqn is basically the same as that for the nth d-axis current variation component ΔIdn. Specifically, the current variation extractor 35 calculates the sin component Iqn_sin of the nth q-axis current variation component ΔIqn according to equation (45.1), and calculates the cos component Iqn_cos of the nth q-axis current variation component ΔIqn according to equation (45.2).

[0211] [Formula 45]

[0212] In addition, the current variation extractor 35 uses the sin component Iqn_sin and cos component Iqn_cos of the nth q-axis current variation component ΔIqn to calculate the amplitude |ΔIqn| of the nth q-axis current variation component ΔIqn according to equation (46.1), and calculates the reference phase φqn of the nth q-axis current variation component ΔIqn according to equation (46.2).

[0213] [Formula 46]

[0214] The nth q-axis current variation component ΔIqn is expressed using the amplitude |ΔIqn| of equation (46.1) and the reference phase φqn of equation (46.2) as in equation (47).

[0215] [Formula 47]

[0216] As shown in equation (47), the waveform of the nth q-axis current variation component ΔIqn becomes a sin waveform that oscillates with an amplitude |ΔIqn|, taking the reference phase φqn as the initial phase. Thus, the process of extracting the nth q-axis current variation component ΔIqn is the process of calculating the parameters (amplitude |ΔIqn| and reference phase φqn) that can represent its waveform.

[0217] Equations (48.1) to (48.4) represent the current variation components calculated by Fourier series expansion in the current variation extractor 35. Equation (48.1) is the first-order d-axis current variation component ΔId1, and equation (48.2) is the second-order d-axis current variation component ΔId2. In addition, equation (48.3) is the first-order q-axis current variation component ΔIq1, and equation (48.4) is the second-order q-axis current variation component ΔIq2.

[0218] [Formula 48]

[0219] In the current variation extractor 35, the amplitudes (|ΔId1|, |ΔId2|, |ΔIq1|, |ΔIq2|) and reference phases (φd1, φd2, φq1, φq2) in each of equations (48.1) to (48.4) are calculated as current variation components. These parameters are output to the inductor voltage calculator 36.

[0220] <Operation of the Inductor Voltage Calculator> The inductance voltage calculator 36 calculates the induced voltage, i.e., the inductance voltage, generated by the current variation component, based on the differential values ​​of the inductance and current variation components of the motor M. Here, the inductance voltage is the p-term voltage (p·Ld·Id and p·Ld·Iq) shown in equation (41). Therefore, the d-axis inductance Ld is used as the inductance of the motor M.

[0221] Furthermore, the differential operator "p" only operates on the variation components of the parameters that are the objects of operation (the differential value becomes 0 with respect to the DC component). Therefore, the d-axis current Id and q-axis current Iq in the p-term voltage can be obtained using the current variation components (ΔId1, ΔId2, ΔIq1, ΔIq2) calculated by the current variation extractor 35.

[0222] Here, the current component of the d-axis current Id related to the primary mechanical angle phase θm1 is recorded as the current-related value Id1, and the current component related to the secondary mechanical angle phase θm2 is recorded as the current-related value Id2. The current-related value Id1 is the primary d-axis current variation component ΔId1, and the current-related value Id2 is the secondary d-axis current variation component ΔId2. Similarly, for the q-axis current Iq, the current component related to the primary mechanical angle phase θm1 is also recorded as the current-related value Iq1, and the current component related to the secondary mechanical angle phase θm2 is recorded as the current-related value Iq2. The current-related value Iq1 is the primary q-axis current variation component ΔIq1, and the current-related value Iq2 is the secondary q-axis current variation component ΔIq2.

[0223] For example, in the d-axis current Id, the inductor voltage based on the current variation with the same period as the first mechanical angle phase θm1 is calculated using the current-related value Id1 according to equations (49.1) to (49.4).

[0224] [Formula 49]

[0225] In this case, as shown in equation (49.1), the current-dependent value Id1 is used as the d-axis current Id of the p-term voltage, and the time derivative of the current-dependent value Id1 is performed. In equation (49.2), the time derivative of the current-dependent value Id1 is converted into a derivative based on the first mechanical angle phase θm1. Accompanying this, a term (dθm1 / dt) is generated that is a time derivative of the first mechanical angle phase θ1, but as shown in equation (49.3), this term is represented by the estimated angular velocity ωm of the mechanical angle. In addition, in equation (49.3), the current-dependent value Id1 is replaced by the first d-axis current variation component ΔId1.

[0226] If we apply equation (48.1) to equation (49.3) and differentiate the primary d-axis current variation component ΔId1 with the primary mechanical angle phase θm1, we obtain equation (49.4). Thus, we can use the estimated angular velocity ωm, d-axis inductance Ld, amplitude |ΔId1|, and reference phase φd1 to calculate the inductor voltage (p·Ld·Id1) corresponding to the primary component of the d-axis current Id. Furthermore, the primary mechanical angle phase θm1 described in equation (49.4) is a variable that changes with the rotation of the motor M. Therefore, by inputting the instantaneous value of the primary mechanical angle phase θm1 into equation (49.4), the value of the inductor voltage (p·Ld·Id1) at any given time can be calculated.

[0227] The inductor voltage (p·Ld·Iq1) corresponding to the first component of the q-axis current Iq can also be calculated in the same way as described above. Equation (50) shows p·Ld·Iq1.

[0228] [Formula 50]

[0229] Furthermore, the inductor voltage (p·Ld·Id2) corresponding to the second component of the d-axis current Id and the inductor voltage (p·Ld·Iq2) corresponding to the second component of the q-axis current Iq can also be calculated in the same way. Equation (51) shows p·Ld·Id2, and Equation (52) shows p·Ld·Iq2.

[0230] [Formula 51]

[0231] [Formula 52]

[0232] Furthermore, during the process of deriving the second component of the inductor voltage, the time derivative (dθm2 / dt) of the second mechanical angle phase θm2 appears. The value of dθm2 / dt, as shown in equation (53), is twice the time derivative of the first mechanical angle phase θm1, becoming 2ωm.

[0233] [Formula 53]

[0234] Thus, the inductor voltage calculator 36 calculates the inductor voltage for each of two or more current variation components with different frequencies, based on the differential value of the current variation component. In this embodiment, for example, the primary and secondary inductor voltages are calculated for the d-axis current Id (or q-axis current Iq), but both are induced voltages generated by the current variation of the d-axis current Id (or q-axis current Iq).

[0235] The induced voltage generated by the current variation of the d-axis current Id (or q-axis current Iq) can be calculated as the voltage obtained by adding the primary inductor voltage and the secondary inductor voltage. Equation (54) is the inductor voltage p·Ld·Id based on the variation component of the d-axis current Id, and Equation (55) is the inductor voltage p·Ld·Iq based on the variation component of the q-axis current Iq.

[0236] [Formula 54]

[0237] [Formula 55]

[0238] Thus, the inductor voltage calculator 36 calculates the total inductor voltage (p·Ld·Id and p·Ld·Iq) by adding the inductor voltages of two or more current variation components with different frequencies. This allows it to reflect not only the induced voltage caused by a single current variation but also the induced voltage caused by higher-order current variations, improving the accuracy of the inductor voltage calculation. This inductor voltage is used in the calculation of the shaft error Δθ.

[0239] For example, the inductor voltage p·Ld·Id generated by the d-axis current variation is calculated by inputting the instantaneous values ​​of the first mechanical angle phase (θm1) and the second mechanical angle phase (θm2) into equations (49.4) and (51) and summing these values ​​according to equation (54). Similarly, the inductor voltage p·Ld·Iq generated by the q-axis current variation is calculated by inputting the instantaneous values ​​of the first mechanical angle phase (θm1) and the second mechanical angle phase (θm2) into equations (50) and (52) and summing these values ​​according to equation (54). The calculated inductor voltages are output to the axis error calculator 30.

[0240] <Actions of the shaft error calculator> The shaft error calculator 30 calculates the shaft error Δθ according to the shaft error calculation formula in the transient model shown in equation (41). As a result, the shaft error Δθ can be calculated with high precision by taking into account the inductor voltage (p-term voltage) of the periodic current changes of the d-axis current Id and the q-axis current Iq generated in torque control, etc.

[0241] For example, for terms other than the inductor voltage (p-term voltage), as Vd and Vq, the d-axis voltage command value Vd is used. and the q-axis voltage command value Vq For Id and Iq, the d-axis current Id and q-axis current Iq, which are the detected values ​​of the motor current, are used. In addition, the inductor voltage (p-term voltage) uses the inductor voltage p·Ld·Id generated by the d-axis current variation and the inductor voltage p·Ld·Iq generated by the q-axis current variation, which are output from the inductor voltage calculator 36.

[0242] Therefore, the shaft error Δθ reflects the effect of the induced voltage (inductance voltage) caused by the current variation component. Furthermore, the shaft error Δθ is used for estimating the rotor position (mechanical angular phase θm, electrical angular phase θe). Thus, in the motor control device 100, the rotor position of the motor M is estimated based on the inductance voltage. Therefore, by incorporating the induced voltage generated by the current variation component, i.e., the inductance voltage, into the calculation to estimate the rotor position, the accuracy of the rotor position estimation can be improved.

[0243] Furthermore, in this embodiment, the total inductance voltage shown in equations (54) and (55) above is used as the inductance voltage. That is, the rotor position is estimated based on the total inductance voltage. As a result, for example, the influence of the induced voltage caused by frequency components other than the frequency of the load torque can be reflected, and the estimation accuracy of the rotor position can be further improved.

[0244] <Action results in steady-state and transient models> Hereinafter, the motor control using the steady-state model shown in Equation (40) will be used as a comparative example, and the operation results will be compared with the motor control using the transient model of this embodiment shown in Equation (41).

[0245] Figure 11 This is a coordinate graph representing the measured data during motor control based on the steady-state model and the transient model involved in this embodiment, as comparative examples. Figure 11 The horizontal axis of each coordinate graph shown represents time t [msec]. Here, data is shown during the switch from motor control using a steady-state model to motor control using a transient model in the control of the motor M operating a single-rotor compressor.

[0246] The switch from the steady-state model to the transient model occurs at t=8000ms. Furthermore, the data were measured during torque control (torque control performed by the voltage command value generator 14b in the voltage saturation region) to suppress voltage fluctuations. Additionally, to easily understand and represent oscillations near current peaks observed when using the steady-state model for motor control, this measurement was performed under an overload condition where the motor M is subjected to a load exceeding its rated capacity. Moreover, even under normal operating conditions that are not overloaded, oscillations near current peaks can occur when using the steady-state model.

[0247] Figure 11 The coordinate graph on the upper left is a coordinate graph representing the mechanical angular velocity, depicting the estimated mechanical angular velocity ωm of the motor M and the commanded mechanical angular velocity ωm. The vertical axis of the coordinate graph represents the rotational speed [rps (rotation per second: r / s)]. The mechanical angular velocity command value ωm at the time of measurement is also shown. The time before and after the switch is set to 35rps without changing.

[0248] Figure 11 The coordinate graph on the left side of the middle section is a coordinate graph of the d-axis current and the q-axis current, depicting the current command value (d-axis current command value Id). and q-axis current command value Iq The graph shows the current values ​​(d-axis current Id and q-axis current Iq). The vertical axis of the graph represents the current value [A].

[0249] Figure 11 The lower left side of the graph is a curve plotting the voltage along the d-axis and q-axis, depicting the voltage detection values ​​(d-axis voltage Vd and q-axis voltage Vq). The vertical axis of the graph represents the voltage value [V].

[0250] Figure 11 The upper right coordinate graph is a coordinate graph of the output voltage amplitude Va and the DC voltage Vdc. The vertical axis of the coordinate graph is the voltage value [V]. The output voltage amplitude Va and the DC voltage Vdc are data in the dq dimension. The output voltage amplitude Va in the dq dimension is represented by the d-axis voltage Vd and the q-axis voltage Vq by the following equation (56).

[0251] [Formula 56]

[0252] In addition, if the DC voltage Vdc in the dq dimension is set as Vdc_2φ, and the DC voltage in the stationary coordinate (uvw dimension) is set as Vdc_3φ, then the relationship between Vdc_2φ and Vdc_3φ is expressed by the following equation (57).

[0253] [Formula 57]

[0254] Figure 11 The coordinate graph on the right side of the middle section is a coordinate graph representing the axis error Δθ. The vertical axis of the coordinate graph is the angle [deg]. In the first half of the coordinate graph (t < 8000 msec), the axis error Δθ is calculated according to equation (40). In the second half of the coordinate graph (t ≥ 8000 msec), the axis error Δθ is calculated according to equation (41). Here, the data for the axis error Δθ is depicted after smoothing the calculated values ​​from each equation using an LPF (low-pass filter) with a time constant of 1 msec.

[0255] Figure 11 The lower right corner of the graph is a coordinate graph representing the power consumption Pinv of the inverter (IPM25). The vertical axis of the graph is power [W]. The power consumption Pinv is represented by the d-axis voltage Vd and q-axis voltage Vq, as well as the d-axis current Id and q-axis current Iq, by the following equation (58).

[0256] [Formula 58]

[0257] Here, as data for Pinv, the calculated values ​​from Equation (58) are smoothed using an LPF with a time constant of 1000 msec.

[0258] Figure 12 This is a coordinate graph representing the measured data during motor control based on a steady-state model, used as a comparative example. Figure 12 The middle shows Figure 11 The data shown represents the measurement data for the period before the switching time t=8000ms (0ms ≤ t ≤ 100ms). The configuration of each coordinate graph is shown below. Figure 11 same.

[0259] As described above, the load torque of the single-rotor compressor varies periodically with respect to the mechanical angle. In this measurement, torque control was performed to suppress the variation in rotational speed caused by such load torque variation. As a result, compared to the case without torque control, the amplitude (variation range) of the estimated angular velocity ωm of the mechanical angle can be suppressed.

[0260] For example in Figure 12 In the upper left coordinate graph, the estimated angular velocity ωm of the mechanical angle varies periodically. The period of this variation is the same as the mechanical angle period, suggesting that the periodic variation of the estimated angular velocity ωm is due to the periodic variation of the load torque of the single-rotor compressor. In this measurement, torque control was implemented to remove the variation amplitude of the higher harmonic components of the estimated angular velocity ωm relative to the commanded mechanical angle velocity ωm. It is suppressed to approximately ±4 rps. Furthermore, without torque control, the variation in the estimated angular velocity ωm of the mechanical angle becomes larger.

[0261] In torque control, the d-axis current command value Id and q-axis current command value Iq It was adjusted to suppress variations in the rotational speed (mechanically estimated angular velocity ωm) of the motor M. The result is as follows: Figure 12 As shown in the coordinate graph on the left side of the middle section, the d-axis current command value Id and q-axis current command value Iq (The dashed coordinate graph) shows the periodic changes in mechanical angles.

[0262] Furthermore, this measurement was performed in the voltage saturation region. In this case, the voltage command value generator 14b in the aforementioned voltage saturation region activates, adjusting the d-axis current command value Id. and q-axis current command value Iq This is to ensure that the output voltage amplitude Va is below the DC voltage Vdc. For example, under the conditions measured in this study, as shown in the coordinate graph, the d-axis current command value Id... Adjusted to the q-axis current command Iq that generates torque in motor M. The same degree of amplitude change. Accompanying this, such as Figure 12 As shown in the coordinate graph on the lower left, this results in a significant change in the d-axis voltage Vd.

[0263] In this way, the d-axis voltage Vd (d-axis current command value Id) is made... In torque control that uses variations in output voltage amplitude Va to suppress variations, oscillations are observed near the current peak when the shaft error Δθ is estimated using the steady-state model shown in equation (40). For example, in Figure 12 From the coordinate graph on the left side of the middle part, it can be seen that the current command value Iq on the q-axis is related to the current command value. In contrast, the q-axis current Iq, as the detected value, oscillates near its peak value. Similarly, oscillations also occur with the d-axis current Id, and a correlation with the d-axis current command value Id is observed. The deviation of the waveform.

[0264] Figure 13 This is a coordinate graph representing the measurement data during motor control based on a transient model, as described in this embodiment. Figure 13 The middle shows Figure 11 The data shown represents the measurement data for the period following the switching point t = 8000 msec (15000 msec ≤ t ≤ 15100 msec). The configuration of each coordinate graph is as follows: Figure 11 same.

[0265] like Figure 13 As shown in the coordinate graph on the left side of the middle section, it can be seen that when motor control based on the transient model is implemented, compared with the case using the steady-state model ( Figure 12 Compared to the coordinate graph on the left side of the middle section, the oscillations near the peak value of the q-axis current Iq are reduced. Furthermore, regarding the d-axis current, the waveform distortion accompanying the oscillations is also eliminated, compared to the d-axis current command value Id. The waveform deviation becomes smaller.

[0266] In addition, such as Figure 13 As shown in the lower left coordinate graph, by reducing the oscillations near the peak of the q-axis current Iq, the subtle oscillations of the q-axis voltage Vq near the current peak are also suppressed. Furthermore, it can be seen that the d-axis voltage Vd varies in the same manner as when using the steady-state model, thus appropriately maintaining torque control in the voltage saturation region.

[0267] It is believed that this suppression of oscillations near the current peak is due to the improved estimation accuracy of the shaft error Δθ by using the transient model of equation (41). For example, if we observe... Figure 13The coordinate graph on the right side of the middle section shows the difference between the axis error Δθ calculated using the transient model and the case using the steady-state model. Figure 12 Compared to the coordinate graph on the right side of the middle section, the variation range of the values ​​is smaller. For example, the depth of the peak value of the trough generated by the mechanical angle period and the variation range of the high-frequency variation components compared to the mechanical angle period are suppressed. In this way, the shaft error Δθ can be stably estimated by using a transient model.

[0268] In addition, such as Figure 13 As shown in the coordinate graph on the upper left, when using the transient model, the periodic variation of the estimated velocity ωm of the mechanical angle is also similar to that when using the steady-state model. Figure 12 The same level as the coordinate graph on the upper left is suppressed. Furthermore, it can be seen that high-frequency variation components are suppressed compared to the mechanical angle period, enabling stable control of the rotational speed.

[0269] Furthermore, by suppressing oscillations near the current peak, power consumption can be reduced. For example, if we observe... Figure 11 The coordinate graph on the lower right shows that the power consumption Pinv decreases with the switching timing as a boundary, eventually stabilizing at a certain level. Thus, based on the behavior of the power consumption Pinv, it can be concluded that the motor M can be stably controlled.

[0270] In the motor control device 100 described in this embodiment, the rotor position of the motor M is estimated based on the periodic variation components (d-axis current variation component ΔId and q-axis current variation component ΔIq) included in the motor current (d-axis current Id and q-axis current Iq). Therefore, even when the motor current (d-axis current Id and q-axis current Iq) varies periodically, the rotor position can be estimated with high accuracy.

[0271] In this embodiment, the shaft error calculation formula of the transient model shown in Equation (41) is used in the estimation of shaft error Δθ. Equation (41) is a formula that calculates shaft error Δθ by considering the inductor voltage generated by the periodic current variation component. By incorporating the inductor voltage, the model error of the extended induced voltage model constructed as the steady-state model shown in Equation (40) can be reduced when the motor current varies periodically. As a result, the estimation accuracy of rotor position can be improved.

[0272] Through this effect, for example, in torque control where the motor current varies periodically, oscillations near the current peak can be suppressed. This reduces the power consumption of the motor M. Furthermore, by suppressing oscillations, the estimated value of the shaft error Δθ stabilizes, allowing for stable estimation of the rotor position. As a result, stable motor control can be achieved.

[0273] Furthermore, in this embodiment, considering the periodicity of current fluctuations under torque control, the current fluctuation component is extracted by performing a Fourier series expansion on the motor current (calculating the Fourier coefficients of the motor current). By differentiating this current fluctuation component, the differential value of the current, which becomes the inductor voltage (p-term voltage), is calculated. For example, in a method that generates the differential value of the current based on the current change detected in each control cycle without using Fourier coefficients, the differential value of the current is unstable due to current noise, potentially leading to control instability. In contrast, in this embodiment, by using Fourier coefficients, the differential value of the current can be calculated stably, and model errors corresponding to the inductor voltage can be appropriately suppressed.

[0274] Furthermore, in this embodiment, in addition to the primary current variation component which varies with the same period as the load torque, a secondary current variation component which varies with twice the period of the load torque is also extracted as the current variation component. This allows for high-precision estimation of the shaft error Δθ by considering not only the primary inductor voltage but also the secondary inductor voltage. Furthermore, by limiting the number of extracted current variation components to two, the estimation accuracy of the shaft error Δθ can be improved without unnecessarily increasing the computational load.

[0275] <Other Implementation Methods> The present invention is not limited to the embodiments described above, and can be implemented in various other ways.

[0276] <Switching of Shaft Error Calculation Methods> The following explains the structure of the calculation method for the switching axis error Δθ.

[0277] In the above embodiments, a method for calculating the shaft error Δθ according to the shaft error calculation formula of the transient model shown in equation (41) is described, regardless of whether the control region of the motor is a normal control region or a voltage saturation region. It is not limited to this, and the method for calculating the shaft error Δθ can be switched between the normal control region and the voltage saturation region.

[0278] For example, in the motor control device 100 shown in Figure 1, the control switching determination unit 15 determines whether the current control region is a normal control region or a voltage saturation region. This determination result can also be used to switch the formula for calculating the shaft error Δθ in the shaft error calculator 30. In this configuration, if the region is determined to be a normal control region, formula (40) is used to calculate the shaft error Δθ. In the normal control region, unlike the voltage saturation region, there is no need to limit the output voltage amplitude; therefore, for example, the d-axis current command value Id... The variation in d-axis current Id also decreases, and the periodic variation component of d-axis current Id also decreases. Therefore, even when using equation (40), the axis error Δθ can be estimated with sufficient accuracy.

[0279] On the other hand, if the region is determined to be a voltage saturation region, the shaft error Δθ is calculated using equation (41). That is, if the control region of the motor is a voltage saturation region, the rotor position can also be estimated based on the current variation component. For example, in the voltage saturation region, through the operation of the voltage command value generation unit 14b in the voltage saturation region described above, the q-axis current command value Iq is calculated. In addition, the d-axis current command value Id The variation in current also increases, and the variation in d-axis current Id also increases along with the variation in q-axis voltage Iq. Therefore, the effect of the inductor voltage accompanying the periodic current variation cannot be ignored. In such a case, for example, by using the transient model of Equation (41), the rotor position can be estimated with high accuracy compared to the case of using the steady-state model of Equation (40).

[0280] Furthermore, in the above embodiments, the case of torque control performed to suppress the variation in rotational speed caused by the load torque applied to the motor was explained. In the motor control device 100 shown in FIG1, torque control is performed when the variable torque command value ΔT output from the correction torque generator 34 is not 0 (ΔT≠0). Moreover, when the variable torque command value ΔT=0, the mechanical angular velocity command value ωm is achieved. Speed ​​control is achieved by controlling the rotational speed in this manner.

[0281] For example, in situations where variations in rotational speed are permissible (e.g., where the variation in rotational speed is sufficiently small at high speeds), torque control may not be necessary. In such cases, speed control can be performed, for example, by setting the variable torque command value ΔT = 0. Thus, the motor control device can also be configured to switch torque control on (ON) and off (OFF). In such a configuration, when torque control is set to off, the shaft error Δθ is calculated using equation (40). Without torque control, for example, compared to the case with torque control, the q-axis current command value Iq... and d-axis current command value Id The variation also becomes smaller. Therefore, even when using equation (40), the axis error Δθ can be estimated with sufficient accuracy.

[0282] On the other hand, when torque control is set to ON, the shaft error Δθ is calculated using equation (41). That is, when torque control of the motor is performed, the rotor position can also be estimated based on the current variation component. For example, during torque control, the q-axis current command value Iq and d-axis current command value Id It also varies periodically in conjunction with the periodic variation of the load torque, resulting in periodic variations in the q-axis voltage Iq and the d-axis current Id. That is, the motor current becomes prone to periodic variations. In such cases, for example, by using the transient model of equation (41), the rotor position can be estimated with high accuracy compared to the case of using the steady-state model of equation (40).

[0283] In the above embodiments, the case of operating a single-rotor compressor was mainly described as an example. In this case, the load torque varies with the same period as the mechanical angle period. Therefore, in the motor control, a primary current variation component that varies with the same period as the mechanical angle period and a secondary current variation component with twice the period are used. The type of compressor to which this invention can be applied is not limited.

[0284] For example, a twin-rotor compressor can also be used. In this case, the load torque becomes a periodic variation with twice the mechanical angle period. Therefore, as a current variation component, a secondary current variation component with twice the mechanical angle period, a fourth current variation component with four times the period, etc., can also be extracted. In this way, by extracting the current variation component corresponding to the number of torque controls executed by the motor control device and using its current derivative, the estimation accuracy of the shaft error Δθ can be reliably improved.

[0285] In the above, a method for calculating the inductor voltage based on the current variation component of the motor current and using the inductor voltage to calculate the shaft error Δθ according to equation (41) was explained. For example, a method can also be used to adjust the shaft error Δθ using the current variation component without calculating the inductor voltage. For example, the adjustment amount corresponding to the amplitude and phase of the current variation component can be determined through prior experiments and used for motor control. In this case, the amplitude and phase of the current variation component are calculated, and the shaft error Δθ is adjusted sequentially using the adjustment amount corresponding to the calculation result. Alternatively, for example, an adjustment amount corresponding to the differential value of the current variation component can also be used. Apart from this, there are no limitations on the method of estimating the rotor position based on the current variation component.

[0286] At least two of the feature portions described above can also be combined. That is, the various feature portions described in each embodiment can be arbitrarily combined without distinguishing between embodiments. In addition, the various effects described above are merely illustrative and not limiting; other effects may also be achieved.

[0287] Symbol Explanation M… motor 25…IPM 28…3φ Current Calculator 29…u,v,w / dq converters 35… Current Variation Extractor 36…Inductor Voltage Calculator 30…axis error calculator 31…PLL controller 32… Position estimator 33…1 / Pn processor 100… Motor control device.

Claims

1. An electric motor control device, comprising: The current detection unit detects the motor current flowing through the motor; The current variation extraction unit extracts the periodic variation component of the motor current, i.e., the current variation component; and The position estimation unit estimates the rotor position of the motor based on the current variation component.

2. The motor control device according to claim 1, wherein, The motor control device further includes an inductor voltage calculation unit, which calculates the induced voltage, i.e., the inductor voltage, generated by the current variation component based on the inductance of the motor and the differential value of the current variation component. The position estimation unit estimates the rotor position based on the inductor voltage.

3. The motor control device according to claim 2, wherein, The current variation extraction unit extracts two or more current variation components with different periods. The inductor voltage calculation unit calculates the inductor voltage for each of the two or more current variation components based on the differential value of the current variation component, and calculates the total inductor voltage obtained by adding the inductor voltages of each of the two or more current variation components. The position estimation unit estimates the rotor position based on the total inductance voltage.

4. The motor control device according to claim 2, wherein, The current variation extraction unit extracts the current variation component by performing a Fourier series expansion on the motor current.

5. The motor control device according to claim 3, wherein, The current variation extraction unit extracts the primary and secondary current variation components of the motor current by performing Fourier series expansion on the motor current.

6. The motor control device according to claim 1, wherein, When performing torque control for the motor, the position estimation unit estimates the rotor position based on the current variation component.

7. The motor control device according to claim 1, wherein, When the control region of the motor is in the voltage saturation region, the position estimation unit estimates the rotor position based on the current variation component.

Citation Information

Patent Citations

  • Motor control device

    JP2021125898A