Motor control device

By obtaining at least 2 current detection values ​​in each calculation period in the motor control device and obtaining more than two duty cycle instructions, the problem of degradation of motor control performance during high rotation is solved, and the effect of improving control performance without increasing the processing load is achieved.

CN119895711APending Publication Date: 2025-04-25ASTEMO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202280100224.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2022-10-31
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

During high rotation, the number of responses to the current detection value in the motor control decreases, resulting in a decrease in control performance and problems such as torque error, pulsation and overcurrent. The prior art is difficult to improve motor control performance while suppressing the increase in processing load.

Method used

A motor control device is designed to obtain the current detection value at least twice in each operation cycle, and calculate at least two or more duty cycle instructions in each operation cycle, and reflect it in the gate signal to improve the motor control performance.

Benefits of technology

During high rotation, the motor control performance can be improved while suppressing the increase in processing load, reducing torque errors and pulsation, and improving control stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119895711A_ABST
    Figure CN119895711A_ABST
Patent Text Reader

Abstract

This motor control device is provided with: a current detection unit that acquires a current detection value corresponding to a current flowing through an AC motor; a current control unit that acquires a current command value for the AC motor, and calculates a voltage command value for the AC motor for each predetermined calculation cycle on the basis of the current command value and the current detection value; and a voltage control unit that performs a control calculation based on the voltage command value in each calculation cycle and obtains a duty command for generating a gate signal, the current detection unit acquires the current detection value at least twice in each calculation cycle, and the voltage control unit performs a control calculation based on the voltage command value in each calculation cycle and obtains a duty command for generating a gate signal. The voltage control unit determines at least two or more types of duty commands for each of the operation cycles and reflects the duty commands in the gate signal.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a device for controlling an electric motor. Background Art

[0002] Conventionally, electric motors used for driving automobiles and the like are required to be compact, have high output, and have high efficiency. In order to achieve these characteristics, high-speed electric motors having higher rotation speeds than before have been increasingly adopted in recent years.

[0003] When a three-phase AC synchronous motor driven by an inverter is rotated at a high speed, the electrical angular frequency of the motor is higher than that of a normal motor drive, and the time of one electrical angle cycle becomes shorter. Therefore, in a motor control device that detects the current flowing through the motor and controls the drive of a switching element of the inverter based on the current detection value to control the motor, the number of times that the current detection value can be reflected in the motor control within one electrical angle cycle is reduced. This reduction in the number of times the current detection value is reflected in the motor control at high rotation may lead to a decrease in the motor control performance, causing errors, pulsations, overcurrents, etc. in the torque generated by the motor.

[0004] In order to increase the number of reflections of the current detection value in the motor control at high rotation, it is sufficient to speed up the motor control operation performed by the motor control device to shorten its operation cycle. However, the time required for the motor control operation is determined by the processing power of the microcomputer that performs the operation. The increase in the processing power of the microcomputer will lead to an increase in manufacturing cost and power consumption. Therefore, there is a limit to the speed of the motor control operation.

[0005] Regarding the motor control at high rotation, for example, there is a known technology in Patent Document 1. Patent Document 1 describes a control device for a motor drive device, which, when the synchronous control mode is selected, performs a current detection process IS for detecting the current flowing through the coil of the AC motor in each reference operation cycle T0 set to 1 / 2 of the carrier cycle, and performs a voltage control process VC in a cycle of N times (N is an integer greater than 2) the reference operation cycle T0, and feeds back the N current detection values ​​detected by the N current detection processes IS to perform a voltage control process VC once. Thus, the overall operation load is suppressed within the processing capacity of the operation processing unit, and is appropriately reflected in the current detection value detected in a short cycle to suppress the generation of aliasing of current sampling. Prior art literature Patent Literature

[0006] Patent Document 1: Japanese Patent Application Publication No. 2011-83068 Summary of the invention Technical problem to be solved by the invention

[0007] The technology of Patent Document 1 can speed up the current detection process, but the cycle of the voltage control process is the same as the carrier cycle. Therefore, the number of times the current detection value can be reflected in the motor control during one electrical angle cycle remains unchanged, and the number of times the current detection value is reflected in the motor control during high rotation cannot be increased.

[0008] In order to solve the above-mentioned problems, an object of the present invention is to improve the motor control performance while suppressing an increase in the processing load in the motor control at high rotation speed. Technical means for solving technical problems

[0009] The motor control device involved in the present invention generates a gate signal for controlling the operation of the switching elements for an inverter having multiple switching elements, and outputs the generated gate signal to the inverter, thereby controlling the drive of the AC motor connected to the inverter. The motor control device includes: a current detection unit, which obtains a current detection value corresponding to the current flowing through the AC motor; a current control unit, which obtains a current command value for the AC motor, and calculates a voltage command value for the AC motor in each specified calculation cycle based on the current command value and the current detection value; and a voltage control unit, which performs a control operation based on the voltage command value in each calculation cycle to obtain a duty cycle command for generating the gate signal, the current detection unit obtains the current detection value at least twice in each calculation cycle, and the voltage control unit obtains at least two or more duty cycle commands in each calculation cycle and reflects them in the gate signal. Effects of the Invention

[0010] According to the present invention, in the motor control at high rotation speed, the motor control performance can be improved while suppressing an increase in the processing load. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] Figure 1 It is an overall configuration diagram of a motor drive system including a motor control device according to an embodiment of the present invention. Figure 2 This is a block diagram showing a functional configuration of a motor control device according to an embodiment of the present invention. Figure 3 This is a block diagram of a current conversion unit according to one embodiment of the present invention. Figure 4 This is a block diagram of a voltage control unit according to one embodiment of the present invention. Figure 5 4 is a comparison diagram of the dead time compensation in the prior art example and the present invention. Figure 6 It is a comparison diagram between the conventional example and the calculation processing in the present invention. DETAILED DESCRIPTION

[0012] Hereinafter, a mode for carrying out the present invention will be described in detail with reference to the drawings. In this embodiment, an application example of a motor drive system mounted on an electric vehicle such as an electric car or a hybrid car will be described.

[0013] Figure 1 FIG. 1 is an overall configuration diagram of a motor drive system including a motor control device according to an embodiment of the present invention. Figure 1 In the embodiment, the motor drive system 100 includes a motor control device 1 , an AC motor (hereinafter simply referred to as “motor”) 2 , an inverter 3 , a rotation position detector 4 , and a high-voltage battery 5 .

[0014] The motor control device 1 controls the operation of the inverter 3 based on the torque command T* corresponding to the target torque requested from the vehicle to the motor 2, thereby generating a gate signal for controlling the drive of the motor 2. Then, the generated gate signal is output to the inverter 3. In addition, the details of the motor control device 1 will be described later.

[0015] The inverter 3 has an inverter circuit 31, a gate drive circuit 32, and a smoothing capacitor 33. The gate drive circuit 32 generates a gate drive signal for controlling each switching element of the inverter circuit 31 based on the gate signal input from the motor control device 1, and outputs it to the inverter circuit 31. The inverter circuit 31 has switch elements corresponding to the upper arm and the lower arm of the U phase, the V phase, and the W phase, respectively. By controlling these switch elements respectively according to the gate drive signal input from the gate drive circuit 32, the direct current supplied from the high-voltage battery 5 is converted into alternating current and output to the motor 2. The smoothing capacitor 33 smoothes the direct current supplied from the high-voltage battery 5 to the inverter circuit 31.

[0016] The motor 2 is a synchronous motor that is rotationally driven by the alternating current supplied from the inverter 3, and has a stator and a rotor. When the alternating current input from the inverter 3 is applied to the armature coils Lu, Lv, and Lw provided on the stator, the three-phase alternating currents Iu, Iv, and Iw in the motor 2 are conducted, and armature magnetic flux is generated in each armature coil. An attractive force and a repulsive force are generated between the armature magnetic flux of each armature coil and the magnetic flux of the permanent magnets arranged on the rotor, thereby generating a torque on the rotor and driving the rotor to rotate.

[0017] The motor 2 is provided with a rotational position sensor 8 for detecting the rotational position θ of the rotor. The rotational position detector 4 calculates the rotational position θ based on the input signal of the rotational position sensor 8. The calculation result of the rotational position θ obtained by the rotational position detector 4 is input to the motor control device 1 and is used in the phase control of the alternating current performed by the motor control device 1 based on the phase of the induced voltage of the motor 2.

[0018] Here, for the rotation position sensor 8, a rotary transformer composed of an iron core and a winding is more preferred, but there is no problem even if a sensor using a magnetoresistive element such as a GMR sensor or a Hall element is used. In addition, the rotation position detector 4 can use the three-phase AC current Iu, Iv, Iw flowing through the motor 2 or the three-phase AC voltage Vu, Vv, Vw applied from the inverter 3 to the motor 2 to estimate the rotation position θ without using the input signal from the rotation position sensor 8.

[0019] The current sensor 7 is arranged between the inverter 3 and the motor 2. The current sensor 7 detects the three-phase AC currents Iu, Iv, and Iw (U-phase AC current Iu, V-phase AC current Iv, and W-phase AC current Iw) that energize the motor 2. The current sensor 7 is constituted by, for example, a Hall current sensor or the like. The detection results of the three-phase AC currents Iu, Iv, and Iw obtained by the current sensor 7 are input to the motor control device 1 and are used for the phase control of the AC power by the motor control device 1 in the same manner as the calculation results of the rotation position θ obtained by the rotation position detector 4. In addition, Figure 2 , an example in which the current sensor 7 is composed of three current detectors is shown, but the current detector may be set to two, and the remaining one-phase AC current may be calculated based on the fact that the sum of the three-phase AC currents Iu, Iv, and Iw is zero. In addition, the pulsed DC current flowing from the high-voltage battery 5 to the inverter 3 may be detected by inserting a shunt resistor or the like between the smoothing capacitor 33 and the inverter 3, and the three-phase AC currents Iu, Iv, and Iw may be obtained based on the DC current and the three-phase AC voltages Vu, Vv, and Vw applied from the inverter 3 to the motor 2.

[0020] Next, the details of the motor control device 1 will be described. Figure 2 1 is a block diagram showing a functional configuration of a motor control device 1 according to an embodiment of the present invention. Figure 2In the embodiment, the motor control device 1 includes each functional block of a current command generating unit 10, a speed calculating unit 11, a current detecting unit 12, a current converting unit 13, a current controlling unit 14, a carrier frequency controlling unit 15, a voltage controlling unit 16, and a gate signal generating unit 17. The motor control device 1 is composed of, for example, a microcomputer, and these functional blocks can be realized by executing a predetermined program in the microcomputer. Alternatively, some or all of these functional blocks can be realized using hardware circuits such as logic ICs or FPGAs.

[0021] The current command generating unit 10 calculates the d-axis current command Id* and the q-axis current command Iq* based on the input torque command T* and the voltage Vdc of the high-voltage battery 5. Here, for example, a preset current command map, mathematical formula, etc. are used to obtain the d-axis current command Id* and the q-axis current command Iq* corresponding to the torque command T*.

[0022] The speed calculation unit 11 calculates the motor rotation speed ω indicating the rotation speed (rotation speed) of the motor 2 based on the time change of the rotation position θ. The motor rotation speed ω may be a value expressed by either an angular velocity (rad / s) or a rotation speed (rpm). In addition, these values ​​may be converted to each other.

[0023] The current detection unit 12 samples the detection signals of the three-phase AC currents Iu, Iv, and Iw input from the current sensor 7 in each prescribed sampling cycle, and obtains the first three-phase AC current detection values ​​Iua, Iva, and Iwa (the first U-phase AC current detection value Iua, the first V-phase AC current detection value Iva, and the first W-phase AC current detection value Iwa) and the second three-phase AC current detection values ​​Iub, Ivb, and Iwb (the second U-phase AC current detection value Iub, the second V-phase AC current detection value Ivb, and the second W-phase AC current detection value Iwb) at different timings. Here, the current detection unit 12 samples the three-phase AC currents Iu, Iv, and Iw at a sampling cycle that is half the operation cycle of the current control operation performed by the current control unit 14, and saves the sampling results in the microcomputer registers, respectively, as the first three-phase AC current detection values ​​Iua, Iva, and Iwa and the second three-phase AC current detection values ​​Iub, Ivb, and Iwb. Here, the first three-phase AC current detection values ​​Iua, Iva, and Iwa are currents detected before half a cycle of the current control operation cycle from the time when the current control operation task is started. The second three-phase AC current detection values ​​Iub, Ivb, and Iwb are currents detected when the current control operation task is started. In addition, in order to prevent detection errors caused by delays in current sensors and circuits, the timing of current detection is delayed by about a few μs from the time when the current control operation task is started and before half a cycle. That is, the current detection unit 12 acquires the current detection value twice in each operation cycle of the current control operation, and uses the current detection value acquired for the first time as the first three-phase AC current detection value Iua, Iva, and Iwa, and uses the current detection value acquired for the second time as the second three-phase AC current detection value Iub, Ivb, and Iwb, and outputs these current detection values ​​to the current conversion unit 13 in each operation cycle.

[0024] The current conversion unit 13 performs dq conversion on the first three-phase AC current detection values ​​Iua, Iva, Iwa and the second three-phase AC current detection values ​​Iub, Ivb, Iwb acquired by the current detection unit 12, respectively, based on the rotation position θ and the rotation speed ω, and performs calculations on the d-axis current Id and the q-axis current value Iq based on the results of these dq conversions. At this time, the current conversion unit 13 obtains the average current values ​​of the d-axis and the q-axis based on the first d-axis current value Id1 and the first q-axis current value Iq1 obtained by performing dq conversion on the first three-phase AC current detection values ​​Iua, Iva, Iwa, and the second d-axis current value Id2 and the second q-axis current value Iq2 obtained by performing dq conversion on the second three-phase AC current detection values ​​Iub, Ivb, Iwb. Then, the obtained current average values ​​are output as the d-axis current value Id and the q-axis current value Iq. Note that the details of the method for calculating the d-axis current value Id and the q-axis current value Iq obtained by the current conversion unit 13 will be described later.

[0025] The current control unit 14 calculates the d-axis voltage command Vd* and the q-axis voltage command Vq* corresponding to the torque command T* based on the deviations between the d-axis current command Id* and the q-axis current command Iq* outputted from the current command generating unit 10 and the d-axis current value Id and the q-axis current value Iq outputted from the current converting unit 13 so that these values ​​are consistent with each other. Here, considering the calculation delay from the detection of the rotation position θ and the three-phase AC currents Iu, Iv, and Iw to the output of the gate signal to the inverter 3 by the motor control device 1, for example, the d-axis voltage command Vd* corresponding to the deviation between the d-axis current command Id* and the d-axis current value Id, and the q-axis voltage command Vq* corresponding to the deviation between the q-axis current command Iq* and the q-axis current value Iq are obtained for each predetermined calculation cycle by current control calculation using a control method such as PI control.

[0026] The carrier frequency control unit 15 calculates a carrier frequency fc, which indicates the frequency of a carrier used in generating the PWM pulse signal, based on the rotation position θ obtained by the rotation position detector 4 and the rotation speed ω obtained by the speed calculation unit 11. For example, the carrier frequency fc is calculated so that the number of carriers per rotation of the motor 2 matches the specified number Nc.

[0027] The voltage control unit 16 uses the rotation position θ, the motor rotation speed ω, the voltage Vdc of the high-voltage battery 5, and the carrier frequency fc to obtain the duty cycle command values ​​Dua, Dub, Dva, Dvb, Dwa, and Dwb corresponding to the first half and the second half of the carrier of each phase according to the d-axis voltage command Vd* and the q-axis voltage command Vq* calculated by the current control unit 14. At this time, the voltage control unit 16 performs three-phase conversion on the d-axis voltage command Vd* and the q-axis voltage command Vq* to obtain the three-phase voltage commands Vu*, Vv*, and Vw* (U-phase voltage command value Vu*, V-phase voltage command value Vv*, and W-phase voltage command value Vw*). Then, based on the obtained three-phase voltage instructions Vu*, Vv*, Vw* and the triangular carrier that changes periodically with the carrier frequency fc, PWM operation is performed to determine the pulse width of the gate drive signal to be output to each switching element, thereby obtaining the duty cycle instruction values ​​Dua, Dub, Dva, Dvb, Dwa, and Dwb. In addition, the details of the calculation method of the duty cycle instruction values ​​Dua, Dub, Dva, Dvb, Dwa, and Dwb obtained by the voltage control unit 16 will be described later.

[0028] The gate signal generating unit 17 generates gate signals (PWM pulse signals) Gup, Gun, Gvp, Gvn, Gwp, and Gwn for controlling the operation of the inverter 3 based on the duty cycle command values ​​Dua, Dub, Dva, Dvb, Dwa, and Dwb obtained by the voltage control unit 16. For example, the gate signals Gup, Gun, Gvp, Gvn, Gwp, and Gwn are generated by converting the duty cycle command values ​​Dua, Dub, Dva, Dvb, Dwa, and Dwb into predetermined voltage signals, respectively. The gate signal generated by the gate signal generating unit 17 is output from the motor control device 1 to the gate drive circuit 32 of the inverter 3, and is converted into a gate drive signal by the gate drive circuit 32. Thus, each switching element of the inverter circuit 31 is controlled to be turned on / off, and the output voltage of the inverter 3 is adjusted.

[0029] Next, the current conversion unit 13 in the motor control device 1 will be described in detail. Figure 3 1 is a block diagram of the current conversion unit 13 according to one embodiment of the present invention. The current conversion unit 13 includes functional blocks of a first current conversion unit 131 , a second current conversion unit 132 , adders 133 and 134 , and multipliers 135 and 136 .

[0030] Here, the current input to the current conversion unit 13 is described. As described above, the current detection unit 12 detects the first three-phase AC current detection value Iua, Iva, Iwa and the second three-phase AC current detection value Iub, Ivb, Iwb in a cycle that is half the operation cycle of the current control operation performed by the current control unit 14, and stores them in the microcomputer register. The first three-phase AC current detection value Iua, Iva, Iwa is the current detected before the half cycle of the current control operation cycle from the start of the current control operation task. The second three-phase AC current detection value Iub, Ivb, Iwb is the current detected when the current control operation task is started. The first three-phase AC current detection value Iua, Iva, Iwa and the second three-phase AC current detection value Iub, Ivb, Iwb stored in the microcomputer register in each control cycle are simultaneously input to the current conversion unit 13. The number of current control operations is once per control operation cycle, so the current detected twice in the control operation cycle is averaged in the current conversion unit 13 and output as twice sampled data to the current control unit 14. As a method of averaging the current, the first three-phase AC current detection values ​​Iua, Iva, Iwa and the second three-phase AC current detection values ​​Iub, Ivb, Iwb are dq converted and averaged on the dq axis.

[0031] The first current conversion unit 131 performs dq conversion on the first three-phase AC current detection values ​​Iua, Iva, and Iwa input from the current detection unit 12 based on the rotation position θ and the rotation speed ω. The first three-phase AC current detection values ​​Iua, Iva, and Iwa are currents detected half a cycle before the start of the current control operation, and the rotation position θ and the rotation speed ω are the rotation position and rotation speed detected when the current control operation starts. Therefore, the timing of detecting the current is different from the timing of detecting the rotation position θ. Therefore, it is necessary to calculate the rotation angle from the current detection to the rotation position detection, and to estimate the rotation angle at the current detection timing to perform dq conversion. The phase θa used in the dq conversion is calculated as in formula (1). θa=θ+(Ts[n-1] / 2)×ω···(1) In formula (1), Ts[n-1] is the control period at the last interruption. If the rotation angular velocity ω changes slowly and does not change during the control period, the rotation angle at the current detection timing can be calculated by formula (1). Then, the obtained dq conversion results are output as the first d-axis current value Id1 and the first q-axis current value Iq1.

[0032] The second current conversion unit 132 performs dq conversion on the second three-phase AC current detection values ​​Iub, Ivb, and Iwb input from the current detection unit 12 based on the rotation position θ and the rotation speed ω. Then, the obtained dq conversion results are output as the second d-axis current value Id2 and the second q-axis current value Iq2. The detection timing of the second three-phase AC current detection values ​​Iub, Ivb, and Iwb is the same as the rotation position θ, so there is no need to correct the phase of the dq conversion as in the first current conversion unit.

[0033] The adding unit 133 adds the first d-axis current value Id1 output from the first current conversion unit 131 and the second d-axis current value Id2 output from the second current conversion unit 132. The multiplying unit 135 multiplies the sum by 0.5 and outputs it as the d-axis current value Id. Thus, the d-axis current value Id is obtained from the average value of the first d-axis current value Id1 and the second d-axis current value Id2.

[0034] The adding unit 134 adds the first q-axis current value Iq1 output from the first current conversion unit 131 and the second q-axis current value Iq2 output from the second current conversion unit 132. The multiplying unit 136 multiplies the sum by 0.5 and outputs it as the q-axis current value Iq. Thus, the q-axis current value Iq is obtained from the average value of the first q-axis current value Iq1 and the second q-axis current value Iq2.

[0035] As described above, in the current conversion unit 13, the first three-phase AC current detection values ​​Iua, Iva, Iwa and the second three-phase AC current detection values ​​Iub, Ivb, Iwb can be dq-converted to obtain the d-axis current value Id and the q-axis current value Iq. By this method, the current detection period can be doubled without changing the current control operation period.

[0036] Next, the voltage control unit 16 in the motor control device 1 will be described in detail. Figure 4 1 is a block diagram of a voltage control unit 16 according to an embodiment of the present invention. The voltage control unit 16 includes a first voltage conversion unit 161, a second voltage conversion unit 162, overmodulation gain multiplication units 163a, 163b, zero-phase addition units 164a, 164b, duty cycle conversion units 165a, 165b, dead time compensation addition units 166a, 166b, and a duty cycle output unit 167.

[0037] The first voltage conversion unit 161 performs three-phase conversion on the d-axis voltage command Vd* and the q-axis voltage command Vq* input from the current control unit 14 based on the rotation position θ and the rotation speed ω, and obtains the three-phase voltage command value used in the PWM operation. At this time, the first voltage conversion unit 161 obtains the three-phase voltage command value corresponding to the rotation position θ at the time delayed by 1.25 control cycles from the acquisition time of the rotation position θ and the first three-phase AC current detection value Iua, Iva, Iwa, as the three-phase voltage command value for the first half of the next control cycle. Then, the obtained three-phase conversion result is output as the first three-phase voltage command value Vua*, Vva*, Vwa* (the first U-phase voltage command value Vua*, the first V-phase voltage command value Vva*, and the first W-phase voltage command value Vwa*) corresponding to the first half of the carrier.

[0038] The second voltage conversion unit 162 performs three-phase conversion on the d-axis voltage command Vd* and the q-axis voltage command Vq* input from the current control unit 14 based on the rotation position θ and the rotation speed ω, and obtains the three-phase voltage command value used in the PWM operation. At this time, the second voltage conversion unit 162 obtains the three-phase voltage command value corresponding to the rotation position θ at the moment delayed by 1.75 control cycles from the acquisition time of the rotation position θ and the first three-phase AC current detection value Iua, Iva, Iwa, as the three-phase voltage command value for the second half of the next control cycle. Then, the obtained three-phase conversion result is output as the second three-phase voltage command value Vub*, Vvb*, Vwb* (second U-phase voltage command value Vub*, second V-phase voltage command value Vvb* and second W-phase voltage command value Vwb*) corresponding to the second half of the carrier.

[0039] The overmodulation gain multiplication units 163a and 163b multiply the first three-phase voltage command values ​​Vua*, Vva*, Vwa* output from the first voltage conversion unit 161 and the second three-phase voltage command values ​​Vub*, Vvb*, Vwb* output from the second voltage conversion unit 162 by a predetermined overmodulation gain, based on the voltage Vdc of the high-voltage battery 5. The overmodulation gain is a gain used when performing overmodulation control to increase the output voltage of the inverter 3 to a value higher than the amplitude of the fundamental wave component, and is set to a value greater than 1, for example. In addition, when no overmodulation control is performed, the overmodulation gain can be set to 1.

[0040] The zero-phase adding units 164a and 164b respectively add a predetermined zero-phase voltage value to the first three-phase voltage command values ​​Vua*, Vva*, Vwa* and the second three-phase voltage command values ​​Vub*, Vvb*, Vwb* after being multiplied by the overmodulation gain multiplying units 163a and 163b by the overmodulation gain. The zero-phase voltage value is a process for improving the output of the AC voltage relative to the voltage Vdc of the high-voltage battery 5 (improving the voltage utilization rate), and is determined, for example, based on a combination of the first three-phase voltage command values ​​Vua*, Vva*, Vwa* or the second three-phase voltage command values ​​Vub*, Vvb*, Vwb*, the rotation position θ, etc. In addition, the addition of the zero-phase voltage value is not necessarily required, and therefore, the zero-phase adding units 164a and 164b can be omitted in the voltage control unit 16.

[0041] The duty ratio conversion units 165a and 165b perform PWM operations on the first three-phase voltage command values ​​Vua*, Vva*, Vwa* and the second three-phase voltage command values ​​Vub*, Vvb*, Vwb* after the zero-phase voltage value is multiplied by the zero-phase addition units 164a and 164b, respectively, so as to convert these three-phase voltage command values ​​into duty ratio values ​​for each phase of the U phase, the V phase, and the W phase, wherein the above-mentioned PWM operation uses a carrier that periodically changes with a carrier period fc. In addition, as described above, the first three-phase voltage command values ​​Vua*, Vva*, and Vwa* are generated corresponding to the first half of the carrier, and the second three-phase voltage command values ​​Vub*, Vvb*, and Vwb* are generated corresponding to the second half of the carrier. Therefore, in the duty ratio conversion unit 165a, the duty ratio values ​​of each phase corresponding to the first half of the carrier are obtained based on the first three-phase voltage command values ​​Vua*, Vva*, and Vwa*. On the other hand, the duty ratio conversion unit 165b obtains the duty ratio value of each phase corresponding to the second half of the carrier wave based on the second three-phase voltage command values ​​Vub*, Vvb*, and Vwb*.

[0042] The dead time compensation adding units 166a and 166b perform dead time compensation by adding a predetermined dead time compensation value Udt, Vdt, and Wdt to the duty cycle values ​​of each phase obtained by the duty cycle converting units 165a and 165b, respectively. The dead time compensation value is a value added to the duty cycle value of each phase as required to prevent the switching elements of the upper arm and the lower arm of each phase from being turned on at the same time. In addition, the details of the dead time compensation performed by the dead time compensation adding units 166a and 166b will be described later.

[0043] The duty ratio output unit 167 outputs the duty ratio command values ​​Dua, Dub, Dva, Dvb, Dwa, and Dwb based on the duty ratio values ​​of each phase after the dead time compensation by the dead time compensation adder 166a and 166b. At this time, the duty ratio output unit 167 outputs the dead time compensated duty ratio values ​​Dua, Dva, and Dwa corresponding to the first half of the carrier outputted from the dead time compensation adder 166a based on the first three-phase voltage command values ​​Vua*, Vva*, and Vwa*, and outputs the dead time compensated duty ratio values ​​Dub, Dvb, and Dwb corresponding to the second half of the carrier outputted from the dead time compensation adder 166b based on the second three-phase voltage command values ​​Vub*, Vvb*, and Vwb*.

[0044] As described above, the voltage control unit 16 can obtain the duty ratio command values ​​Dua, Dub, Dva, Dvb, Dwa, and Dwb corresponding to the first and second halves of the carrier of each phase from the d-axis voltage command Vd* and the q-axis voltage command Vq*.

[0045] Next, refer to Figure 5 The following describes in detail the dead time compensation performed by the dead time compensation adding units 166 a and 166 b. Figure 5 FIG. 4 is a comparison diagram of dead time compensation in a conventional example and in the present invention.

[0046] Figure 5 (a) shows a case where the dead time compensation in the conventional example of the present invention is not applied. When the current flowing through the motor 2 is positive, as the duty ratio value before the dead time compensation for any phase, for example, input Figure 5 In this case, by adding a predetermined compensation duty ratio dt corresponding to the dead time compensation value before and after the target pulse, the positions of the falling edge and the rising edge of the target pulse are moved respectively, generating Figure 5 (a) shows a dead time compensated pulse waveform. Based on the dead time compensated pulse waveform thus generated, pulse waveforms of the upper arm and the lower arm are generated by setting a dead time difference to each other, thereby generating an output pulse corresponding to the original target pulse.

[0047] When the current flowing through the motor 2 is negative, as the duty ratio value before dead time compensation for any phase, for example, Figure 5 In this case, by subtracting a predetermined compensation duty ratio dt corresponding to the dead time compensation value from the head and the tail of the target pulse, the positions of the falling edge and the rising edge of the target pulse are moved respectively, and a Figure 5(a) shows a dead time compensated pulse waveform. Based on the dead time compensated pulse waveform thus generated, pulse waveforms of the upper arm and the lower arm are generated by setting a dead time difference to each other, thereby generating an output pulse corresponding to the original target pulse.

[0048] Furthermore, it can be seen that, regardless of whether the current is positive or negative, in the output pulse of the conventional example generated as described above, a delay corresponding to the compensated duty ratio dt is generated compared to the original target pulse before dead time compensation.

[0049] Figure 5 (b) shows a case where the dead time compensation in the embodiment of the present invention is applied. When the current flowing through the motor 2 is positive, as the duty ratio value before the dead time compensation for any phase, for example, Figure 5 The target pulse shown on the left side of (b) is input to the dead time compensation adding section 166a, 166b. In this case, the dead time compensation adding section 166a does not perform dead time compensation, and the dead time compensation adding section 166b adds the value obtained by doubling the compensation duty ratio dt to the target pulse, thereby moving the position of the rising edge of the target pulse to generate Figure 5 (b) shows a dead time compensated pulse waveform. Based on the dead time compensated pulse waveform thus generated, pulse waveforms of the upper arm and the lower arm are generated by setting a dead time difference to each other, thereby generating an output pulse corresponding to the original target pulse.

[0050] When the current flowing through the motor 2 is negative, the duty ratio value before dead time compensation for any phase is, for example, Figure 5 The target pulse shown on the right side of (b) is input to the dead time compensation adding section 166a, 166b. In this case, the dead time compensation adding section 166b does not perform dead time compensation, and the dead time compensation adding section 166a subtracts the target pulse from the value obtained by doubling the compensation duty ratio dt, thereby moving the position of the falling edge of the target pulse to generate Figure 5 (b) shows a dead time compensated pulse waveform. Based on the dead time compensated pulse waveform thus generated, pulse waveforms of the upper arm and the lower arm are generated by setting a dead time difference to each other, thereby generating an output pulse corresponding to the original target pulse.

[0051] Furthermore, it can be seen that, regardless of whether the current is positive or negative, the output pulse of the present invention generated as described above does not cause a delay as in the conventional example compared to the original target pulse before dead time compensation.

[0052] Figure 6 It is a comparison diagram of the operation processing in the conventional example and the present invention.

[0053] Figure 6 (a) shows a case where the operation processing in the conventional example of the present invention is not applied. In the conventional example, a series of operation processing from current detection to PWM duty cycle command is repeated in each period of the triangular carrier that changes periodically at the carrier frequency fc, so that the gate signal of the output pulse corresponding to the torque command T* is output from the motor control device 1 to the inverter 3.

[0054] Here, in Figure 6 In the operation process of the conventional example shown in (a), current detection is performed only once in each control cycle. In addition, for the duty cycle of the next control cycle, the result of the operation process performed in each control cycle is reflected only once in the valley part of the carrier. For example, during the control cycle Ts[n], current detection is first performed in the valley part of the carrier, and the operation process is performed based on the current detection result. The duty cycle command value obtained by the operation process of the control cycle Ts[n] is output in the valley part of the carrier as a gate signal for adjusting the output voltage of the inverter 3 in the next control cycle Ts[n+1].

[0055] Figure 6 (b) shows a case where the operation processing in the embodiment of the present invention is applied. In the present embodiment, current detection is performed twice in each period of the triangular carrier that changes periodically at the carrier frequency fc. Then, using the current detection results of the previous two times, a series of operation processing similar to the conventional example is repeated, so that the gate signal of the output pulse corresponding to the torque command T* is output from the motor control device 1 to the inverter 3.

[0056] Here, in Figure 6 In the operation processing of the present embodiment shown in (b), current detection is performed twice in each control cycle. In addition, for the duty cycle of the next control cycle, the results of the operation processing performed in each control cycle are reflected in the valley part and the peak part of the carrier respectively. For example, during each period of the control cycles Ts[n-1] and Ts[n], current detection is performed in the valley part and the peak part of the carrier respectively. The operation processing of the control cycle Ts[n] is performed based on the current value detected in the peak part of the carrier in the immediately preceding control cycle Ts[n-1] and the current value detected in the valley part of the first carrier of the control cycle Ts[n]. The duty cycle command value obtained by the operation processing of the control cycle Ts[n] is output in the valley part and the peak part of the carrier respectively as a gate signal for adjusting the output voltage of the inverter 3 in the next control cycle Ts[n+1].

[0057] In the motor control device 1 of the present embodiment, the motor 2 is controlled via the inverter 3 through the calculation processing described above. As a result, the current detection value can be obtained twice in each calculation cycle, and two types of duty cycle instructions can be obtained and reflected in the control of the motor 2. Therefore, the control of the motor 2 that reflects the detection result of the current flowing through the motor 2 in more detail than the conventional example can be realized without increasing the number of current control calculations per carrier, and the motor control performance can be improved.

[0058] In addition, the present embodiment describes the following example: the current detection value is acquired twice in each operation cycle, and two types of duty cycle instructions are obtained in each operation cycle based on these current detection values, but the present invention is not limited to this, and the number of times the current detection value is acquired in each operation cycle and the number of types of duty cycle instructions obtained in each operation cycle can be set to more than 3. If the current detection value is acquired at least twice in each operation cycle and at least two or more types of duty cycle instructions are obtained in each operation cycle, the present invention can be applied.

[0059] According to one embodiment of the present invention described above, the following effects are achieved.

[0060] (1) A motor control device 1 generates a gate signal for controlling the operation of a switching element for an inverter 3 having a plurality of switching elements, and outputs the generated gate signal to the inverter 3, thereby controlling the driving of an AC motor 2 connected to the inverter 3. The motor control device 1 includes: a current detection unit 12 that obtains a current detection value corresponding to the current flowing through the AC motor 2; a current control unit 14 that obtains a current command value for the AC motor 2 and calculates a voltage command value for the AC motor 2 in each predetermined calculation cycle based on the current command value and the current detection value; and a voltage control unit 16 that performs a control calculation based on the voltage command value in each calculation cycle to obtain a duty cycle command for generating a gate signal. The current detection unit 12 obtains the current detection value at least twice in each calculation cycle, and the voltage control unit 16 obtains at least two or more duty cycle commands in each calculation cycle and reflects them in the gate signal. As a result, in the motor control at high rotation speed, the motor control performance can be improved while suppressing an increase in processing load.

[0061] (2) The motor control device 1 includes a current conversion unit 13, which converts the detection value of the three-phase AC current obtained by the current detection unit 12 into a d-axis current value Id and a q-axis current value Iq. The current detection unit 12 obtains the first triangular AC current detection values ​​Iua, Iva, Iwa and the second three-phase AC current detection values ​​Iub, Ivb, Iwb at different timings within the calculation cycle. The current conversion unit 13 calculates the first d-axis current value Id1 and the first q-axis current value Iq1 based on the first triangular AC current detection values ​​Iua, Iva, Iwa, and the second d-axis current value Id2 and the second q-axis current value Iq2 based on the second three-phase AC current detection values ​​Iub, Ivb, Iwb through the first current conversion unit 131 and the second current conversion unit 132. Then, the d-axis current value Id is obtained from the average value of the first d-axis current value Id1 and the second d-axis current value Id2, and the q-axis current value Iq is obtained from the average value of the first q-axis current value Iq1 and the second q-axis current value Iq2 by the adding units 133 and 134 and the multiplying units 135 and 136. The current control unit 14 calculates the voltage command values ​​for the AC motor 2, that is, the d-axis voltage command Vd* and the q-axis voltage command Vq*, based on the d-axis current command value Id* and the q-axis current command value Iq* for the AC motor 2 and the d-axis current value Id and the q-axis current value Iq calculated by the current conversion unit 13. Therefore, the current control unit 14 can appropriately calculate the voltage command value for the AC motor 2 using the current detection value obtained twice in each calculation cycle by the current detection unit 12.

[0062] (3) The current control unit 14 calculates the d-axis voltage command Vd* and the q-axis voltage command Vq* in each predetermined operation cycle. The voltage control unit 16 calculates the first three-phase voltage command values ​​Vua*, Vva*, and Vwa* at the first timing in the operation cycle and the second three-phase voltage command values ​​Vub*, Vvb*, and Vwb* at the second timing different from the first timing in the operation cycle based on the d-axis voltage command Vd* and the q-axis voltage command Vq* through the first voltage conversion unit 161 and the second voltage conversion unit 162. In addition, the first duty cycle value based on the first three-phase voltage command value Vua*, Vva*, Vwa* and the second duty cycle value based on the second three-phase voltage command value Vub*, Vvb*, Vwb* are calculated by the overmodulation gain multiplication unit 163a, 163b, the zero-phase addition unit 164a, 164b, the duty cycle conversion unit 165a, 165b and the dead time compensation addition unit 166a, 166b. Then, the duty cycle command values ​​Dua, Dub, Dva, Dvb, Dwa, Dwb are obtained based on these duty cycle values ​​by the duty cycle output unit 167. Therefore, in the voltage control unit 16, two types of duty cycle commands can be reliably obtained in each operation cycle and reflected in the gate signal.

[0063] (4) The voltage control unit 16 performs dead time compensation by adding a predetermined dead time compensation value to the first three-phase voltage command value Vua*, Vva*, Vwa* and the second three-phase voltage command value Vub*, Vvb*, Vwb* through the dead time compensation adding units 166a and 166b, and respectively obtains the first duty cycle value and the second duty cycle value based on the first three-phase voltage command value Vua*, Vva*, Vwa* and the second three-phase voltage command value Vub*, Vvb*, Vwb* after dead time compensation. Therefore, the dead time compensation in the duty cycle command values ​​Dua, Dub, Dva, Dvb, Dwa, and Dwb can be reliably performed, and the upper arm and the lower arm of each phase in the inverter 3 can be prevented from being turned on at the same time.

[0064] In addition, the present invention is not limited to the above-described embodiment, and various modifications can be made within a scope not departing from the gist of the present invention. Description of symbols

[0065] 1 Motor control device 2 Electric motors 3 Inverter 4 Rotational position detector 5 High voltage battery 7. Current Sensor 8Rotary position sensor 10Current command generating unit 11Speed ​​calculation unit 12Current detection unit 13. Current conversion unit 14 Current control unit 15Carrier frequency control unit 16 Voltage control unit 17Gate signal generating unit 31 Inverter circuit 32 Gate drive circuit 33 Smoothing capacitor 100 electric motor drive system.

Claims

1. A motor control device, for an inverter having a plurality of switching elements, generating a gate signal for controlling the operation of the switching elements, and outputting the generated gate signal to the inverter, thereby controlling the drive of an AC motor connected to the inverter, the motor control device comprising: a current detection unit that acquires a current detection value corresponding to a current flowing through the AC motor; a current control unit that obtains a current command value for the AC motor and calculates a voltage command value for the AC motor in each predetermined calculation cycle based on the current command value and the current detection value; as well as a voltage control unit that performs a control operation based on the voltage command value in each operation cycle to obtain a duty cycle command for generating the gate signal; The current detection unit obtains the current detection value at least twice in each calculation cycle. The voltage control unit obtains at least two or more types of the duty ratio commands in each calculation cycle and reflects them in the gate signal.

2. The motor control device according to claim 1, characterized in that: A current conversion unit is included, which converts the current detection value into a d-axis current value and a q-axis current value, The current detection unit acquires a first current detection value and a second current detection value at different timings within the calculation cycle, The current conversion unit calculates a first d-axis current value and a first q-axis current value based on the first current detection value, and a second d-axis current value and a second q-axis current value based on the second current detection value. The d-axis current value is obtained based on an average value of the first d-axis current value and the second d-axis current value, The q-axis current value is obtained based on an average value of the first q-axis current value and the second q-axis current value, The current control unit calculates the voltage command value based on a d-axis current command value and a q-axis current command value for the AC motor and the d-axis current value and the q-axis current value obtained by the current conversion unit.

3. The motor control device according to claim 1, characterized in that: The current control unit calculates a d-axis voltage command value and a q-axis voltage command value in each calculation cycle. The voltage control unit calculates a first three-phase voltage command value at a first timing within the calculation cycle and a second three-phase voltage command value at a second timing different from the first timing within the calculation cycle based on the d-axis voltage command value and the q-axis voltage command value. calculating a first duty ratio value based on the first three-phase voltage command value and a second duty ratio value based on the second three-phase voltage command value, The duty ratio command is obtained based on the first duty ratio value and the second duty ratio value.

4. The motor control device according to claim 3, characterized in that: The voltage control unit performs dead time compensation by adding a specified dead time compensation value to the first three-phase voltage command value and the second three-phase voltage command value, respectively, and calculates the first duty cycle value and the second duty cycle value based on the first three-phase voltage command value and the second three-phase voltage command value after the dead time compensation.

Citation Information

Patent Citations

  • Device for controlling motor driver

    JP2011083068A