Control device for an electric motor
By adjusting the current sampling and position inference processing cycle, the problem of reduced controllability of the motor at high rotational speeds or modulation rates was solved, achieving high-precision control and stability of the motor.
Patent Information
- Application Number
- CN202080080533.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-07-08
- Filing Date
- 2020-10-26
- Publication Date
- 2026-03-03
- Estimated Expiration
- 2040-10-26
AI Technical Summary
In vector control of electric motors, when the rotor's rotational speed or modulation rate is high, the duty cycle of the drive signal does not match the voltage command value, resulting in a decrease in the motor's controllability.
By adjusting the current sampling and position inference processing cycles in control circuits in control cycles, the processing load is reduced. At high rotation speeds or modulation rates, the number of current samples is increased to improve position inference accuracy. High-precision position calculation is used to calculate voltage command values and suppress duty cycle variations in drive signals.
At high rotational speeds or modulation rates, the reduction in motor controllability is suppressed, the processing load on the control circuit is reduced, and the control accuracy and stability of the motor are improved.
Smart Images

Figure CN114731132B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a control device for an electric motor. Background Technology
[0002] As a control device for an electric motor, there exists a device that uses the position of the motor rotor to convert the three-phase alternating current flowing in the motor into d-axis current and q-axis current, calculates a voltage command value by making the d-axis current and q-axis current approximately equal to a current command value, and controls the motor drive by using a drive signal corresponding to the comparison result between the voltage command value and the carrier wave. This is known as a device that controls the motor drive via vector control. Patent Document 1 is a related technology.
[0003] Patent Document 1: Japanese Patent Application Publication No. 2001-169590
[0004] However, in the above-mentioned control device, if the rotor's rotational speed (speed) or the modulation rate corresponding to the rotor's rotational speed is relatively large, the duty cycle of the drive signal will not change in line with the voltage command value, raising concerns about reduced controllability of the motor drive. Summary of the Invention
[0005] One objective of this invention is to suppress the decrease in the controllability of the motor drive when the rotor rotation speed and modulation rate of the motor are relatively high in a control device that controls the drive of the motor by vector control.
[0006] As one aspect of the present invention, a motor control device includes: an inverter circuit that drives the rotor of the motor by comparing a voltage command value with a carrier wave; and a control circuit that calculates the voltage command value by using the current flowing in the motor and the rotational speed and position of the rotor in a control cycle.
[0007] The control circuit reduces the control cycle as the rotor's rotational speed or the modulation rate corresponding to the rotor's rotational speed increases.
[0008] Therefore, even if the rotational speed or modulation rate of the motor rotor becomes relatively large, it is possible to suppress the situation where the duty cycle of the drive signal does not change according to the voltage command value, thus suppressing the situation where the controllability of the motor decreases.
[0009] Alternatively, the control circuit can be configured to infer the rotor's rotational speed and position using the current flowing in the motor, with each control cycle as a unit.
[0010] In addition, as one aspect of the present invention, the motor control device includes: an inverter circuit that drives the rotor of the motor by comparing a voltage command value with a carrier wave; and a control circuit that uses the current flowing in the motor and the rotational speed and position of the rotor to determine the voltage command value by vector control.
[0011] The control circuit can also be configured to reduce the control cycle of the acquisition process for obtaining the current flowing in the motor and the inference process for inferring the position using the acquired current as the rotational speed or modulation rate increases, and set the control cycle of processes other than the acquisition process and the inference process to be constant.
[0012] Therefore, by increasing the number of samples of the current flowing in the motor as the rotational speed or modulation rate increases, the accuracy of position estimation can be improved. Thus, using this position to calculate the voltage command value can suppress any decrease in the motor's controllability. Furthermore, by reducing the control cycle of a portion of the overall control circuit processing and keeping the control cycles of other processes constant, the processing load on the control circuit can be reduced.
[0013] According to the present invention, in a control device that controls the drive of an electric motor by vector control, when the rotational speed and modulation rate of the motor rotor are relatively large, the reduction in the controllability of the motor drive can be suppressed. Attached Figure Description
[0014] Figure 1 This is a diagram showing an example of a control device for an electric motor according to the first embodiment.
[0015] Figure 2 The figure shows another example of the control device for the electric motor according to the first embodiment.
[0016] Figure 3 This is a diagram representing an example of a carrier wave, voltage command value, and drive signal. Detailed Implementation
[0017] <First Implementation>
[0018] The embodiments are described in detail below with reference to the accompanying drawings.
[0019] Figure 1 This is a diagram showing an example of a control device for an electric motor according to the first embodiment.
[0020] Figure 1 The control device 1 shown is, for example, a device for controlling the drive of the electric motor M mounted on a vehicle such as an electric forklift or a plug-in hybrid vehicle, and it includes an inverter circuit 2, a control circuit 3, and current sensors Se1 to Se3.
[0021] Inverter circuit 2 is an inverter circuit that drives motor M with DC power supplied from DC power source P. It includes capacitor C and switching elements SW1 to SW6 (e.g., IGBTs (Insulated Gate Bipolar Transistors)). Specifically, one end of capacitor C is connected to the positive terminal of DC power source P and the collector terminals of switching elements SW1, SW3, and SW5; the other end of capacitor C is connected to the negative terminal of DC power source P and the emitter terminals of switching elements SW2, SW4, and SW6. The connection point between the emitter terminal of switching element SW1 and the collector terminal of switching element SW2 is connected to the U-phase input terminal of motor M via current sensor Se1. The connection point between the emitter terminal of switching element SW3 and the collector terminal of switching element SW4 is connected to the V-phase input terminal of motor M via current sensor Se2. The connection point between the emitter terminal of switching element SW5 and the collector terminal of switching element SW6 is connected to the W-phase input terminal of motor M via current sensor Se3.
[0022] Capacitor C will smooth the voltage output from DC power supply P and input to inverter circuit 2.
[0023] Switching element SW1 is turned on or off based on the drive signal S1 output from control circuit 3. Switching element SW2 is turned on or off based on the drive signal S2 output from control circuit 3. Switching element SW3 is turned on or off based on the drive signal S3 output from control circuit 3. Switching element SW4 is turned on or off based on the drive signal S4 output from control circuit 3. Switching element SW5 is turned on or off based on the drive signal S5 output from control circuit 3. Switching element SW6 is turned on or off based on the drive signal S6 output from control circuit 3. Switching elements SW1 to SW6 are turned on or off respectively, thereby converting the DC power output from DC power supply P into three AC power supplies with phases 120 degrees apart. These AC power supplies are then input to the U-phase, V-phase, and W-phase input terminals of motor M, causing the rotor of motor M to rotate.
[0024] Current sensors Se1 to Se3 are composed of Hall elements, shunt resistors, etc. Current sensor Se1 detects the current Iu flowing in the U phase of motor M and outputs it to control circuit 3; current sensor Se2 detects the current Iv flowing in the V phase of motor M and outputs it to control circuit 3; current sensor Se3 detects the current Iw flowing in the W phase of motor M and outputs it to control circuit 3.
[0025] The control circuit 3 includes a driver circuit 4 and an arithmetic unit 5.
[0026] The driver circuit 4, composed of an integrated circuit (IC), compares the voltage command values Vu*, Vv*, and Vw* output from the arithmetic unit 5 with a carrier wave (triangular wave, sawtooth wave, or inverse sawtooth wave, etc.) in control cycles. It then outputs drive signals S1 to S6 corresponding to the comparison results to the gate terminals of the switching elements SW1 to SW6. For example, when the voltage command value Vu* is greater than or equal to the carrier wave, the driver circuit 4 outputs a high-level drive signal S1 and a low-level drive signal S2; when the voltage command value Vu* is less than the carrier wave, it outputs a low-level drive signal S1 and a high-level drive signal S2. Similarly, when the voltage command value Vv* is greater than or equal to the carrier wave, the driver circuit 4 outputs a high-level drive signal S3 and a low-level drive signal S4; when the voltage command value Vv* is less than the carrier wave, it outputs a low-level drive signal S3 and a high-level drive signal S4. In addition, when the voltage command value Vw* is above the carrier wave, the driver circuit 4 outputs a high-level drive signal S5 and a low-level drive signal S6. When the voltage command value Vw* is less than the carrier wave, it outputs a low-level drive signal S5 and a high-level drive signal S6.
[0027] Furthermore, when the amplitude values of the voltage command values Vu*, Vv*, and Vw* are less than the amplitude value of the carrier wave, the driver circuit 4 performs control (PWM (Pulse Width Modulation) control) to repeatedly turn the switching elements SW1 to SW6 on and off within one cycle of the voltage command values Vu*, Vv*, and Vw*.
[0028] In addition, when the amplitude values of the voltage command values Vu*, Vv*, and Vw* are greater than the amplitude value of the carrier wave, the driver circuit 4 performs over-modulation control by repeatedly turning the switching elements SW1 to SW6 on and off during a part of a cycle of the voltage command values Vu*, Vv*, and Vw*, and always turning the switching elements SW1 to SW6 on or off during the remaining period.
[0029] In addition, when the amplitude values of the voltage command values Vu*, Vv*, and Vw* are further greater than the amplitude value of the carrier wave, the driver circuit 4 performs control (rectangular wave control) to keep the switching elements SW1 to SW6 always on or always off during half a cycle of the voltage command values Vu*, Vv*, and Vw*, and to keep the switching elements SW1 to SW6 always on or always off during the remaining half cycle.
[0030] Furthermore, without specifically distinguishing between the voltage command values Vu*, Vv*, and Vw*, they are simply referred to as the voltage command value V*. Also, without specifically distinguishing between the drive signals S1 to S6, they are simply referred to as drive signals S.
[0031] The arithmetic unit 5 is composed of a microcomputer or the like, and includes an inference unit 6, a subtraction unit 7, a speed control unit 8, a subtraction unit 9, 10, a current control unit 11, a coordinate transformation unit 12, and a coordinate transformation unit 13. For example, the microcomputer executes a program stored in a storage unit (not shown), thereby implementing the inference unit 6, the subtraction unit 7, the speed control unit 8, the subtraction unit 9, 10, the current control unit 11, the coordinate transformation unit 12, and the coordinate transformation unit 13.
[0032] The inference unit 6 uses the d-axis voltage command value Vd* and q-axis voltage command value Vq* output from the current control unit 11, and the d-axis current Id and q-axis current Iq output from the coordinate transformation unit 13, in control cycle units, to infer the rotational speed (rotational speed) ω^ and position θ^ of the rotor of the motor M.
[0033] For example, the deduction unit 6 calculates the back electromotive force ed^ and the back electromotive force eq^ using Equations 1 and 2 below. Furthermore, R represents the resistance of the motor M, and L represents the inductance of the coils in the motor M.
[0034] ed^=Vd*-R×Id+ω^×L×Id···Equation 1
[0035] eq^=Vq*-R×Iq-ω^×L×Iq···Equation 2
[0036] Next, the inference unit 6 calculates the error θe^ using the following equation 3.
[0037] θe^=tan -1 (ed^ / eq^)···Form 3
[0038] Next, the inference unit 6 calculates the rotational speed ω^ such that the error θe^ becomes zero in Equation 4 below. Furthermore, Kp represents the constant of the proportional term in PI (Proportional Integral) control, and Ki represents the constant of the integral term in PI control.
[0039] ω^=Kp×θe^+Ki×∫(θe^)dt···Equation 4
[0040] Furthermore, the inference unit 6 calculates the position θ^ using the following equation 5. Additionally, s denotes the Laplace operator.
[0041] θ^=(1 / s)×ω^···Equation 5
[0042] Subtraction unit 7 calculates the difference Δω between the externally input rotational speed command value ω* and the rotational speed ω^ output from inference unit 6, using control cycles as the unit.
[0043] The speed control unit 8 converts the difference Δω output from the subtraction unit 7 into the q-axis current command value Iq* in control cycles.
[0044] For example, the speed control unit 8 calculates the q-axis current command value Iq* such that the difference Δω becomes zero in the following equation 6.
[0045] Iq*=Kp×Δω+Ki×∫(Δω)dt···Equation 6
[0046] The subtraction unit 9 calculates the difference ΔId between the predetermined d-axis current command value Id* and the d-axis current Id output from the coordinate transformation unit 13, using the control cycle as the unit.
[0047] The subtraction unit 10 calculates the difference ΔIq between the q-axis current command value Iq* output from the speed control unit 8 and the q-axis current Iq output from the coordinate transformation unit 13, using the control cycle as the unit.
[0048] The current control unit 11 converts the difference ΔId output from the subtraction unit 9 and the difference ΔIq output from the subtraction unit 10 into the d-axis voltage command value Vd* and the q-axis voltage command value Vq*, respectively, in control cycle units.
[0049] For example, the current control unit 11 uses Equation 7 below to calculate the d-axis voltage command value Vd*, and uses Equation 8 below to calculate the q-axis voltage command value Vq*. Furthermore, Lq represents the q-axis inductance of the coil of the motor M, Ld represents the d-axis inductance of the coil of the motor M, and Ke represents the induced voltage constant.
[0050] Vd*=Kp×ΔId+Ki×∫(ΔId)dt-ωLqIq···Equation 7
[0051] Vq*=Kp×ΔIq+Ki×∫(ΔIq)dt+ωLdId+ωKe···Equation 8
[0052] The coordinate transformation unit 12 uses the position θ^ output from the inference unit 6 to convert the d-axis voltage command value Vd* and the q-axis voltage command value Vq* into voltage command values Vu*, Vv*, and Vw*, respectively, in units of control cycles.
[0053] For example, the coordinate transformation unit 12 uses the transformation matrix C1 shown in Equation 9 below to convert the d-axis voltage command value Vd* and the q-axis voltage command value Vq* into voltage command values Vu*, Vv*, and Vw*, respectively.
[0054] [Number 1]
[0055]
[0056] For example, the coordinate transformation unit 12 sets the calculation result of the following equation 10 as the phase angle δ.
[0057] δ=tan -1 (-Vq* / Vd*)···Equation 10
[0058] Next, the coordinate transformation unit 12 sets the sum of the phase angle δ and the position θ^ as the target position θv.
[0059] Next, the coordinate transformation unit 12 sets the calculation result of the following equation 11 as the modulation rate ′. Furthermore, it is set that 0 < modulation rate ′ < 1. Additionally, Vin is set as the voltage of the DC power supply P.
[0060] [Number 2]
[0061]
[0062] Next, the coordinate transformation unit 12 sets the calculation result of the following equation 12 as the modulation rate. In addition, it is set that -1 < modulation rate < 1.
[0063] Modulation rate = 2 × Modulation rate' - 1 ... Equation 12
[0064] Furthermore, the coordinate transformation unit 12 refers to the information stored in a storage unit (not shown) indicating the correspondence between the target position θv and the voltage command values Vu*, Vv*, and Vw*, and calculates the voltage command values Vu*, Vv*, and Vw* corresponding to the target position θv.
[0065] The coordinate transformation unit 13 uses the position θ^ output from the inference unit 6 to convert the currents Iu, Iv, and Iw detected by the current sensors Se1 to Se3 into d-axis current Id and q-axis current Iq, using the control cycle as the unit.
[0066] For example, the coordinate transformation unit 13 uses the transformation matrix C2 shown in Equation 13 below to convert the currents Iu, Iv, and Iw into the d-axis current Id and the q-axis current Iq.
[0067] [Number 3]
[0068]
[0069] Figure 2 This is a diagram showing another example of the control device 1 for the electric motor M according to the first embodiment. Furthermore, regarding... Figure 1 Structures with the same structure shown are labeled with the same reference numerals and their descriptions are omitted.
[0070] exist Figure 2 In the control device 1 shown, with Figure 1 The difference in the control device 1 shown is that it has a position detection unit Sp (resolver, etc.) that detects the position θ of the rotor of the motor M and outputs the detected position θ to the control circuit 3.
[0071] In addition, Figure 2 In the control device 1 shown, with Figure 1 Another difference of the control device 1 shown is that it has an arithmetic unit 5′ instead of an arithmetic unit 5.
[0072] The arithmetic unit 5′ is composed of a microcomputer or the like, and includes an inference unit 6′, a subtraction unit 7, a speed control unit 8, subtraction units 9 and 10, a current control unit 11, a coordinate transformation unit 12′, and a coordinate transformation unit 13′. For example, the microcomputer executes a program stored in a storage unit (not shown), thereby implementing the inference unit 6′, subtraction unit 7, speed control unit 8, subtraction unit 9 and 10, current control unit 11, coordinate transformation unit 12′, and coordinate transformation unit 13′.
[0073] The inference unit 6′ infers the rotational speed ω^ of the rotor of the motor M using the position θ detected by the position detection unit Sp, in units of control cycles.
[0074] For example, the inference unit 6′ infers the rotational speed ω^ by dividing the position θ by the control cycle of the control circuit 3.
[0075] In addition, the coordinate transformation unit 12′ uses the position θ detected by the position detection unit Sp to convert the d-axis voltage command value Vd* and the q-axis voltage command value Vq* into voltage command values Vu*, Vv*, and Vw*, respectively, in units of control cycles.
[0076] For example, the coordinate transformation unit 12′ uses the transformation matrix C1 shown in Equation 9 above to convert the d-axis voltage command value Vd* and the q-axis voltage command value Vq* into voltage command values Vu*, Vv*, and Vw*, respectively. Furthermore, in Equation 9 above, the position θ^ is replaced with the position θ.
[0077] For example, the coordinate transformation unit 12′ uses Equations 10 to 12 described above, along with information pre-stored in a storage unit (not shown), to convert the d-axis voltage command value Vd* and the q-axis voltage command value Vq* into voltage command values Vu*, Vv*, and Vw*, respectively. Furthermore, when determining the target position θv, the position θ^ is replaced with the position θ.
[0078] The coordinate transformation unit 13′ uses the position θ detected by the position detection unit Sp to convert the currents Iu, Iv, and Iw detected by the current sensors Se1 to Se3 into d-axis current Id and q-axis current Iq, using the control cycle as the unit.
[0079] For example, the coordinate transformation unit 13′ uses the transformation matrix C2 shown in Equation 13 above to convert the currents Iu, Iv, and Iw into the d-axis current Id and the q-axis current Iq. Furthermore, in Equation 13 above, the position θ^ is replaced with the position θ.
[0080] Figure 1 or Figure 2 The control circuit 3 shown sets its control period to control period T1 when the rotational speed ω^ is below the threshold ωth or the modulation rate is below the threshold Mth. When the rotational speed ω^ is above the threshold ωth or the modulation rate is above the threshold Mth, the control period of the control circuit 3 is set to control period T2, which is shorter than control period T1. The threshold ωth is set to the maximum value of the rotational speed ω^ when the inference accuracy of the rotational speed ω^ does not decrease. Furthermore, the threshold Mth is set to the maximum value of the modulation rate when the inference accuracy of the rotational speed ω^ does not decrease.
[0081] also, Figure 1 or Figure 2 The control circuit 3 shown can also be configured such that, when the rotational speed ω^ is below the threshold ωth1 or the modulation rate is below the threshold Mth1, the control cycle of the entire processing of the control circuit 3 is set to control cycle T1; when the rotational speed ω^ is greater than the threshold ωth1 or the modulation rate is greater than the threshold Mth1, the control cycle of the entire processing of the control circuit 3 is set to control cycle T2; and when the rotational speed ω^ is above the threshold ωth2 or the modulation rate is above the threshold Mth2, the control cycle of the entire processing of the control circuit 3 is set to control cycle T3. Threshold ωth1 < threshold ωth2. Furthermore, threshold Mth1 < threshold Mth2. Furthermore, control cycle T1 > control cycle T2 > control cycle T3. Furthermore, threshold ωth1 is set to the maximum value of the rotational speed ω^ when the inference accuracy of the rotational speed ω^ does not decrease. Furthermore, threshold Mth1 is set to the maximum value of the modulation rate when the inference accuracy of the rotational speed ω^ does not decrease. That is, Figure 1 or Figure 2 The control circuit 3 shown can also be configured to reduce the control cycle of the entire processing of the control circuit 3 as the rotation speed ω or modulation rate increases.
[0082] Figure 3 (a) and Figure 3 (b) is a diagram showing an example of the carrier wave, voltage command value Vu*, and drive signal S1. Furthermore, Figure 3 (a) and Figure 3 (b) shows a two-dimensional coordinate system where the horizontal axis represents the target position θv and the vertical axis represents the voltage. Furthermore, the frequency of the voltage command value Vu* at positions θ2–θ5 is higher than the frequency of the voltage command value Vu* at positions θ1–θ2. That is, the rotational speed ω^ at positions θ1–θ2 is below the threshold ωth, while the rotational speed ω^ at positions θ2–θ5 is greater than the threshold ωth. Alternatively, the modulation rate at positions θ1–θ2 is below the threshold Mth, while the modulation rate at positions θ2–θ5 is greater than the threshold Mth. Additionally, Figure 3 (a) The control period T1 of the control circuit 3 shown is constant between positions θ1 and θ5. Furthermore, in Figure 3 In (b), the control period T2 of the control circuit 3 at positions θ2 to θ5 is shorter than the control period T1 of the control circuit 3 at positions θ1 to θ2. Additionally... Figure 3 (a) and Figure 3 (b) shows that the amplitude and frequency of the carrier wave are constant at positions θ1 to θ5.
[0083] exist Figure 3 In positions θ1 to θ2 shown in (a), the duty cycle of the drive signal S1 (the proportion of the high-level period of the drive signal S1 relative to one period of the carrier wave) varies with the amplitude of the voltage command value Vu*. That is, in Figure 3 In positions θ1 to θ2 shown in (a), if the amplitude of the voltage command value Vu* increases towards the positive side, the duty cycle of the drive signal S1 increases; if the amplitude of the voltage command value Vu* increases towards the negative side, the duty cycle of the drive signal S1 decreases.
[0084] On the other hand, Figure 3 In positions θ2 to θ5 shown in (a), compared to positions θ1 to θ2, there are cases where the rotational speed ω^ or modulation rate increases, but the duty cycle of the drive signal S1 does not correspond to the change in the amplitude of the voltage command value Vu*. That is, in Figure 3 In the example shown in (a), although it is desirable for the drive signal S1 to be low during the period from position θ3 to θ4, the voltage command value Vu* is above the carrier wave in position θ3, so the drive signal S1 is high during the period from position θ3 to θ4. Thus, if the rotational speed ω^ or the modulation rate becomes relatively large, there may be a situation where the duty cycle of the drive signal S1 does not change according to the amplitude of the voltage command value Vu*.
[0085] Therefore, in the control device 1 of the first embodiment, such as Figure 3As shown in (b), the control period T2 for positions θ2 to θ5 is made shorter than the control period T1 for positions θ1 to θ2. Therefore, the number of samples per unit time for the currents Iu, Iv, and Iw at positions θ2 to θ5, and for positions θ^ or θ, increases compared to the number of samples per unit time for the currents Iu, Iv, and Iw at positions θ1 to θ2, and for positions θ^ or θ. The number of comparisons between the carrier wave and the voltage command value Vu* per unit time for positions θ2 to θ5 also increases compared to the number of comparisons per unit time for the carrier wave and the voltage command value Vu* for positions θ1 to θ2. This suppresses the situation where the duty cycle of the drive signal S1 does not change according to the amplitude of the voltage command value Vu*. That is, in Figure 3 In the example shown in (b), during the period from position θ3 to θ4, when it is desired that the drive signal S1 be low, the drive signal S1 becomes low at a portion of the positions from θ3 to θ4.
[0086] Thus, in the control device 1 of the first embodiment, the control cycle is reduced as the rotational speed ω^ or modulation rate of the rotor of the motor M increases. Therefore, even if the rotational speed ω^ or modulation rate of the rotor of the motor M becomes relatively large, the situation where the duty cycle of the drive signal S does not change according to the voltage command value V* can be suppressed, thereby suppressing the reduction of the controllability of the motor M.
[0087] Furthermore, in the control device 1 of the first embodiment, when the rotational speed ω^ or modulation rate of the rotor of the motor M is relatively small, the control cycle becomes larger compared to when the rotational speed ω^ or modulation rate of the rotor of the motor M is relatively large. Therefore, the number of processing times per unit time of the control circuit 3 can be reduced, and the load applied to the control circuit 3 can be reduced.
[0088] <Second Implementation>
[0089] In the control device of the first embodiment, as the rotational speed ω^ or modulation rate of the rotor of the motor M increases, the control cycle of all processes in the control circuit 3—the process of obtaining the current flowing in the motor M and the process of using the current to infer the position θ^—is reduced, while the control cycle of other processes is set to constant. Furthermore, the structure of the control device in the second embodiment is similar to... Figure 1 The control device 1 shown has the same structure.
[0090] That is, the coordinate transformation unit 13 obtains the currents Iu, Iv, and Iw flowing in each phase of the motor M in units of the first control cycle, and uses the position θ^ output from the inference unit 6 to convert the currents Iu, Iv, and Iw into the d-axis current Id and the q-axis current Iq.
[0091] In addition, the inference unit 6 uses the d-axis voltage command value Vd* and q-axis voltage command value Vq* output from the current control unit 11, and the d-axis current Id and q-axis current Iq output from the coordinate transformation unit 13, in a first control cycle, to infer the rotor's rotational speed ω^ and position θ^.
[0092] In addition, the subtraction unit 7 calculates the difference Δω between the externally input rotational speed command value ω* and the rotational speed ω^ output from the inference unit 6, using the second control cycle as the unit.
[0093] In addition, the speed control unit 8 converts the difference Δω into the q-axis current command value Iq* in units of the second control cycle.
[0094] In addition, the subtraction unit 9 calculates the difference ΔId between the predetermined d-axis current command value Id* and the d-axis current Id output from the coordinate transformation unit 13, using the second control cycle as the unit.
[0095] In addition, the subtraction unit 10 calculates the difference ΔIq between the q-axis current command value Iq* output from the speed control unit 8 and the q-axis current Iq output from the coordinate transformation unit 13, using the second control cycle as the unit.
[0096] In addition, the current control unit 11 converts the difference ΔId and the difference ΔIq into the d-axis voltage command value Vd* and the q-axis voltage command value Vq* in units of the second control cycle.
[0097] In addition, the coordinate transformation unit 12 uses the position θ^ output from the inference unit 6 to convert the d-axis voltage command value Vd* and the q-axis voltage command value Vq* into voltage command values Vu*, Vv*, and Vw* corresponding to the motor M, using the second control cycle as the unit.
[0098] In addition, the driver circuit 4 compares the voltage command values Vu*, Vv*, and Vw* output from the arithmetic unit 5 with the carrier wave in units of the second control cycle, and outputs the drive signals S1 to S6 corresponding to the comparison results to the gate terminals of the switching elements SW1 to SW6 respectively.
[0099] Furthermore, the control circuit 3 reduces the first control cycle as the rotational speed ω or modulation rate increases, and keeps the second control cycle constant.
[0100] For example, assuming that when the rotational speed ω^ is below the threshold ωth, the first and second control cycles are set as control cycle T1; and when the rotational speed ω^ is greater than the threshold ωth, the first control cycle is set as control cycle T2 while the second control cycle remains at control cycle T1. Furthermore, control cycle T2 is shorter than control cycle T1.
[0101] In this case, when the rotational speed ω^ is greater than the threshold ωth, compared to when the rotational speed ω^ is below the threshold ωth, the number of samples per unit time (e.g., one cycle of currents Iu, Iv, Iw) of the currents flowing in the motor M increases, therefore the number of samples per unit time for the d-axis current Id and the q-axis current Iq also increases. Consequently, by calculating the moving average of the d-axis current Id and the q-axis current Iq using the increase in the d-axis current Id and the q-axis current Iq, the errors contained in the d-axis current Id and the q-axis current Iq can be reduced. Therefore, as the errors contained in the d-axis current Id and the q-axis current Iq decrease, the accuracy of the position θ^ inferred using the d-axis current Id and the q-axis current Iq can be improved.
[0102] Thus, in the control device of the first embodiment, the control cycle for acquiring the current flowing in the motor M and for inferring the position θ^ using the acquired current decreases as the rotational speed ω^ or modulation rate increases. Therefore, the number of samples of the current flowing in the motor M increases as the rotational speed ω^ or modulation rate increases, improving the accuracy of the position θ^ estimation. Consequently, the voltage command values Vu*, Vv*, and Vw* can be calculated with high accuracy using the position θ^, thus suppressing the decrease in the controllability of the motor M. In other words, according to the control device of the second embodiment, even if the rotational speed ω^ or modulation rate of the rotor of the motor M becomes relatively large, the calculation accuracy of the voltage command value V* can be improved, thus suppressing the decrease in the controllability of the motor M.
[0103] Furthermore, in the control device of the first embodiment, the control cycle of a portion of the processing in the entire processing of the control circuit 3 is reduced, while the control cycle of the other processing is kept constant, thus suppressing the processing load of the control circuit 3.
[0104] Furthermore, the present invention is not limited to the above-described embodiments, and various improvements and modifications can be made without departing from the spirit of the present invention.
[0105] Explanation of reference numerals in the attached figures
[0106] 1…control device
[0107] 2…Inverter circuit
[0108] 3…Control Circuit
[0109] 4…Driver circuit
[0110] 5, 5′… Arithmetic Unit
[0111] 6, 6′…Inference Section
[0112] 7… Subtraction Section
[0113] 8…Speed Control Department
[0114] 9… Subtraction Department
[0115] 10… Subtraction Section
[0116] 11…Current Control Section
[0117] 12, 12′… Coordinate Transformation Section
[0118] 13, 13′… Coordinate transformation section.
Claims
1. A control device for an electric motor, characterized in that, have: An inverter circuit that drives the rotor of a motor by comparing a carrier wave with a voltage command value; and The control circuit, using the current flowing in the motor and the rotational speed and position of the rotor, calculates the d-axis voltage command value and the q-axis voltage command value through vector control, in control cycles. The control circuit reduces the control cycle as the rotational speed of the rotor or the modulation rate corresponding to the rotational speed of the rotor increases.
2. The control device for the electric motor according to claim 1, characterized in that, The control circuit uses the current flowing in the motor to infer the rotational speed and position of the rotor, based on the control cycle.
3. A control device for an electric motor, characterized in that, have: An inverter circuit that drives the rotor of a motor by comparing a carrier wave with a voltage command value; and The control circuit uses the current flowing in the motor and the rotational speed and position of the rotor to determine the voltage command value through vector control. As the rotational speed or the modulation rate corresponding to the rotational speed of the rotor increases, the control circuit reduces the control cycle of the acquisition process of obtaining the current flowing in the motor and the inference process of using the acquired current to infer the position in all the processes of the control circuit, and sets the control cycle of the acquisition process and the inference process other than the acquisition process and the inference process to a constant.
Citation Information
Patent Citations
Motor control device
JP2001169590A
Control device of motor drive device
CN102577093A
Motor control device
US20010002784A1