Motor control device

By adjusting current detection intervals based on inverter voltage, the system stabilizes motor torque fluctuations, enhancing precision in motor control systems.

JP7887037B2Active Publication Date: 2026-07-08ASTEMO LTD

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
ASTEMO LTD
Filing Date
2024-02-13
Publication Date
2026-07-08

AI Technical Summary

Technical Problem

Existing motor control systems face difficulty in easily suppressing changes in motor torque due to fluctuations in inverter voltage, which are dependent on the resolution of current detection.

Method used

The system samples the current detector's output during a current detection interval corresponding to the on/off combination of PWM signals, adjusting the length of this interval based on the DC power supply voltage to stabilize motor control.

Benefits of technology

This approach effectively suppresses changes in motor torque by stabilizing current detection intervals, ensuring precise motor control despite variations in inverter voltage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007887037000009
    Figure 0007887037000009
  • Figure 0007887037000010
    Figure 0007887037000010
  • Figure 0007887037000011
    Figure 0007887037000011
Patent Text Reader

Abstract

In a motor control device, a motor control method, and a motor control system according to the present invention, an output signal of a current detector of a one-shunt system is sampled in a current detection interval corresponding to an on-off combination of a PWM signal to detect a phase current of a motor, and the motor is controlled via an inverter on the basis of the detected phase current. The length of the current detection interval is changed on the basis of a voltage of a DC power supply of the inverter. Thus, a change in motor torque caused by a change in the inverter voltage can be easily suppressed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a motor control device. Place

Background Art

[0002] The motor control device of Patent Document 1 includes: PWM signal generation means for generating PWM (Pulse Width Modulation) signals with mutually shifted phases; an inverter circuit driven by the PWM signals; a single shunt resistor for detecting each-phase motor current; current detection means for detecting the motor current of the first phase at a first timing and the motor current of the second phase at a second timing based on the current flowing through the shunt resistor; and correction means for correcting the detected value of the motor current of the first phase with a first offset value and correcting the detected value of the motor current of the second phase with a second offset value. Furthermore, the motor control device of Patent Document 1 includes power supply voltage detection means for detecting the power supply voltage applied to the inverter circuit, and offset value change means for changing the first offset value and the second offset value according to the power supply voltage detected by the power supply voltage detection means.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] By the way, in order to prevent the motor torque from changing due to an increase or decrease in the voltage of the DC power supply of the inverter (hereinafter referred to as the inverter voltage), when changing the offset value according to the inverter voltage, since the suppression of torque change depends on the resolution of current detection, there has been a problem that it is difficult to easily suppress the change in motor torque due to the change in inverter voltage.

[0005] ​ This invention has been made in view of the conventional situation, and its purpose is to provide a motor control system that can easily suppress changes in motor torque due to changes in inverter voltage. Place The purpose is to provide. [Means for solving the problem]

[0006] According to one embodiment of the present invention, the output signal of a current detector that detects the current flowing between an inverter driven by a PWM signal and the DC power supply of the inverter is sampled in a current detection interval corresponding to the on / off combination of the PWM signal to detect the phase current of the motor, and the motor is controlled via the inverter based on the detected phase current, wherein the length of the current detection interval is the voltage of the DC power supply The lower the value, the longer it should be. [Effects of the Invention]

[0007] According to the present invention, changes in motor torque due to changes in inverter voltage can be easily suppressed. [Brief explanation of the drawing]

[0008] [Figure 1] This is a diagram showing the overall configuration of the motor control system. [Figure 2] This block diagram shows the various functional parts involved in correcting the current detection interval width. [Figure 3] This is a time chart showing the current detection interval in a single-shunt system. [Figure 4] Figure 3 is a circuit diagram showing the current flow in current detection section A. [Figure 5] Figure 3 is a circuit diagram showing the current flow in current detection section B. [Figure 6] This is a time chart showing the process of shifting the phase of a PWM signal. [Figure 7] This is a time chart showing the difference in offset amount due to differences in inverter voltage. [Figure 8]It is a time chart showing correction of a current detection interval width according to an inverter voltage. [Figure 9] It is a time chart showing the correlation between a current detection interval width and an offset amount. [Figure 10] It is a flowchart showing a limit process of a current detection interval width. [Figure 11] It is a flowchart showing a process of performing correction according to a condition of a rotation speed. [Figure 12] It is a flowchart showing a process of giving hysteresis to the execution and stop of correction. [Figure 13] It is a block diagram showing a low-pass filter processing function of an inverter voltage signal. [Figure 14] It is a block diagram showing a low-pass filter processing function of an output signal of an interval width correction unit. [Figure 15] It is a time chart showing a time diffusion process of interval width correction. [Figure 16] It is a diagram showing a steering torque when current detection interval width correction is not performed. [Figure 17] It is a diagram showing a steering torque when current detection interval width correction is performed.

Embodiments for Carrying Out the Invention

[0009] Hereinafter, a motor control device according to the present invention Place An embodiment will be described based on the drawings. FIG. 1 is a system diagram showing a basic configuration of a motor control system 1 including a motor control device. The motor control system 1 is applied, for example, to control of a motor that generates a steering force in an electric power steering device mounted on a vehicle.

[0010] The motor control system 1 includes a motor 2, an inverter circuit 3, a current detector 4, an inverter voltage detector 5, and a motor control device 6. The motor 2 is a three-phase brushless motor and has a three-phase winding set including a U-phase coil, a V-phase coil, and a W-phase coil. Motor 2 is equipped with a rotor angle sensor 2A that detects the angle of the rotor of motor 2.

[0011] The inverter circuit 3 is a three-phase bridge circuit consisting of six switching elements 3a-3f, which converts the DC from the DC power supply 7 into three-phase AC using a PWM signal, and drives the motor 2 with a sinusoidal wave (in other words, energizes it 180 degrees). Furthermore, semiconductor switching elements such as FETs (Field-Effect Transistors) are used as switching elements 3a-3f. Furthermore, the inverter circuit 3 is equipped with a smoothing capacitor 8 in parallel with the DC power supply 7.

[0012] The current detector 4 is a device that detects the current flowing between the inverter circuit 3 and the DC power supply 7, that is, the bus current of the inverter circuit 3. The current detector 4 includes a shunt resistor 4A connected in series between the inverter circuit 3 and ground, and detects the current by converting the potential difference across the shunt resistor 4A into a current value.

[0013] In other words, the motor control system 1 is a system that detects the phase current of each phase of the motor 2 using a single shunt method, and the current detection value by the current detector 4 is sampled at a timing corresponding to the combination of PWM signals for each phase. Furthermore, the inverter voltage detector 5 detects the voltage of the DC power supply 7, which is the power source for the inverter circuit 3, in other words, the inverter voltage.

[0014] The motor control device 6 is an electronic control device that includes a microcomputer 61 as a control unit or control section. The microcomputer 61 includes a CPU (Central Processing Unit), ROM (Read Only Memory), RAM (Random Access Memory), and other components.

[0015] The motor control device 6 has the following functional units: a motor control unit 6A, a switching signal generation unit 6B, and an analog-to-digital conversion unit 6C (hereinafter referred to as the AD conversion unit 6C). The motor control unit 6A is a functional unit that is executed as software by the microcomputer 61.

[0016] The motor control unit 6A converts the analog output signal of the current detector 4 using the AD conversion unit 6C at a predetermined timing to acquire the output of the current detector 4, that is, the detected value of the bus current of the inverter circuit 3, as a digital signal. The motor control unit 6A then obtains the current of each phase from the output of the current detector 4, compares the obtained currents with the command current, and performs feedback control to correct the currents of each phase to bring them closer to the command current, thereby performing PWM control of the switching elements 3a-3f of the inverter circuit 3.

[0017] The switching signal generation unit 6B acquires the switch timings THiu*, TLou*, THiv*, TLov*, THiw*, and TLow* generated by the motor control unit 6A (more specifically, the switch timing setting unit 20, which will be described later). The switching signal generation unit 6B then generates PWM signals (in other words, gate signals), which are the switching signals for the switching elements 3a-3f of the inverter circuit 3, based on the carrier period Tc as a time reference and the switch timings THiu*, TLou*, THiv*, TLov*, THiw*, TLow*, and supplies the generated PWM signals to the switching elements 3a-3f of the inverter circuit 3.

[0018] The motor control unit 6A has the following functional units: current detection unit 11, rotation angle / rotation speed detection unit 12, angular velocity calculation unit 13, 3-phase dq axis conversion unit 14, first phase compensation unit 15, current control unit 16, dq axis 3-phase conversion unit 17, second phase compensation unit 18, PWM duty cycle calculation unit 19, switch timing setting unit 20, AD timing setting unit 21, inverter voltage detection unit 22, and carrier frequency setting unit 23.

[0019] The current detection unit 11 reproduces the three-phase currents Iu, Iv, and Iw flowing through the motor 2 based on the motor rotation speed ω and the bus current IDC of the inverter circuit 3. The current detection unit 11 sets current detection intervals in which the current detector 4 can detect the phase current of the maximum voltage phase, and current detection intervals in which the current detector 4 can detect the phase current of the minimum voltage phase, based on the on / off combination of the PWM signal, and calculates the phase current of the intermediate voltage phase from the detected values ​​of the phase current of the maximum voltage phase and the phase current of the minimum voltage phase.

[0020] The rotation angle / rotation speed detection unit 12 acquires the output of the rotor angle sensor 2A, outputs a signal of the motor electrical angle θe0, and further calculates the motor rotation speed ω from the difference between the previous value and the current value of the motor electrical angle θe0, and outputs a signal of the motor rotation speed ω. The angular velocity calculation unit 13 calculates the electrical angular velocity ωe from the difference between the current and previous values ​​of the motor electrical angle θe0, and outputs a signal of the electrical angular velocity ωe.

[0021] The first phase compensation unit 15 acquires the motor electrical angle θe0, the electrical angular velocity ωe, and the carrier period Tc set by the carrier frequency setting unit 23. Then, the first phase compensation unit 15 takes into account the time difference between the current detection timing and the rotation angle detection timing, and outputs a motor electrical angle θe1 ​​signal which corrects the motor electrical angle θe0 as if the rotation angle detection had been performed at the current detection timing.

[0022] The 3-phase dq-axis conversion unit 14 performs a coordinate transformation for vector control, replacing the 3-phase AC current with 2-axis DC current based on the 3-phase currents Iu, Iv, Iw and the motor electrical angle θe1, and outputs a signal for the magnetic flux (d-axis) current Id and a signal for the torque (q-axis) current Iq. The current control unit 16 controls the d-axis command current Id supplied from an external source. * , q-axis command current Iq * The command current Id is set so that the actual currents Id and Iq determined by the 3-phase dq axis conversion unit 14 follow suit. * IQ *Based on the actual currents Id and Iq, and the electrical angular velocity ωe, the system outputs signals for the d-axis command voltage Vd* and the q-axis command voltage Vq*.

[0023] The second phase compensation unit 18 acquires signals for the motor electrical angle θe0, electrical angular velocity ωe, and carrier period Tc, and outputs a motor electrical angle θe2 signal that corrects the motor electrical angle θe0 as if the rotation angle detection had been performed at the voltage reflection timing, taking into account the time difference between the voltage reflection timing and the rotation angle detection timing.

[0024] The dq-axis three-phase conversion unit 17 performs a coordinate transformation based on the d-axis command voltage Vd* and q-axis command voltage Vq* and the motor electrical angle θe2 to convert the two-axis voltage commands Vd* and Vq* for vector control into three-phase voltage commands Vu*, Vv*, and Vw*, and outputs signals for the three-phase voltage commands Vu*, Vv*, and Vw*. The inverter voltage detection unit 22 acquires the output of the inverter voltage detector 5 and detects the inverter voltage VINV, that is, the voltage of the DC power supply 7, which is the power supply for the inverter circuit 3.

[0025] The PWM duty cycle calculation unit 19 calculates the three-phase command duty cycles DUu*, DUv*, and DUw* from the ratio of the three-phase voltage commands Vu*, Vv*, and Vw* to the inverter voltage VINV. The switch timing setting unit 20 compares the three-phase command duty cycles DUu*, DUv*, DUw* with the carrier period Tc and outputs the switch timings THiu*, TLou*, THiv*, TLov*, THiw*, TLow* for each switching element 3a-3f of the inverter circuit 3.

[0026] The switching signal generation unit 6B generates PWM signals, which are the switching signals for each of the switching elements 3a-3f of the inverter circuit 3, based on the carrier period Tc as a time reference and the switch timings THiu*, TLou*, THiv*, TLov*, THiw*, TLow*, and supplies the generated PWM signals to the switching elements 3a-3f of the inverter circuit 3. The AD timing setting unit 21 sets the AD timings TADI, TADθ, and TADV for obtaining the bus current IDC of the inverter circuit 3, the motor electrical angle θe0, and the inverter voltage VINV by AD conversion, based on the switch timings THiu*, TLou*, THiv*, TLov*, THiw*, and TLow*.

[0027] The AD conversion unit 6C performs AD conversion, i.e., sampling of the bus current IDC, motor electrical angle θe0, and inverter voltage VINV, based on the AD timings TADI, TADθ, and TADV, using a signal synchronized with the control period generated from the carrier period Tc as a reference. Then, the motor control unit 6A determines the switch timings THiu*, TLou*, THiv*, TLov*, THiw*, and TLow* for each switching element 3a-3f based on the bus current IDC, motor electrical angle θe0, and inverter voltage VINV sampled by the AD conversion unit 6C.

[0028] The carrier frequency setting unit 23 selects one of several pre-set carrier periods Tc based on the control conditions of the motor 2, and sets a control period Tcc that is an integer multiple of the carrier period Tc. The carrier frequency setting unit 23 then outputs signals of the carrier period Tc and control period Tcc to the angular velocity calculation unit 13, the first phase compensation unit 15, the current control unit 16, the second phase compensation unit 18, the switch timing setting unit 20, the switching signal generation unit 6B, the AD timing setting unit 21, and the AD conversion unit 6C.

[0029] Furthermore, if there is a detection error in the motor electrical angle θe0 detected by the rotor angle sensor 2A, the angular velocity ωe calculated by the angular velocity calculation unit 13 may oscillate. Therefore, the angular velocity calculation unit 13 determines the angular velocity ωe by including a process to remove the oscillation component of the angular velocity ωe using a digital filter.

[0030] Figure 2 is a block diagram showing the characteristic configuration of the motor control unit 6A of the motor control system 1 in this embodiment. In addition to the basic configuration shown in Figure 1, the motor control unit 6A of the motor control system 1 includes a current detection interval width correction unit 24, a PWM phase manipulation amount calculation unit 25, and a current detection feasibility determination unit 26.

[0031] Here, the current detection interval width correction unit 24 is a functional unit that corrects the width of the current detection interval (in other words, the length of time of the current detection interval), which is the interval in which the current detection unit 11 detects the phase current of the motor 2, according to the inverter voltage VINV. The PWM phase manipulation amount calculation unit 25 is a functional unit that calculates the amount by which the phases of the PWM signals of each phase are shifted relative to each other in order to secure the width of the current detection interval set by the current detection interval width correction unit 24.

[0032] Furthermore, the current detection feasibility determination unit 26 determines whether current detection is possible based on whether the width of the current detection section is set to a minimum width or greater, and outputs current detection feasibility information to the current detection unit 11 and the current control unit 16. The current detection interval is the interval in which a current corresponding to the phase current of one of the three phases flows through the shunt resistor 4A, and is the interval from the moment when the on / off combination of the PWM signal, which is the switching signal of the switching elements 3a-3f, switches, until the output signal of the current detector 4 is converted from AD and sampled.

[0033] The width of the current detection interval is set to be longer than a reference time, taking into account the delay time of the switching elements 3a-3f, the circuit stabilization time, the AD conversion time, etc. The AD conversion timing, or the end of the current detection interval, is defined as the point at which at least the reference time has elapsed from the moment the on / off combination of the PWM signal switches. The following sections will describe in detail the functions of the current detection interval width correction unit 24, the PWM phase manipulation amount calculation unit 25, and the current detection feasibility determination unit 26.

[0034] The current detection interval width correction unit 24 acquires a reference value TSPini, which is the reference length of the current detection interval width, and an input value INP that includes the inverter voltage VINV. It then calculates and outputs a current detection interval width TSPadj, which is the reference value TSPini corrected according to the inverter voltage VINV, and a current detection timing correction value TADIadj. The current detection interval width correction unit 24 performs a correction of the current detection interval in accordance with the inverter voltage VINV. This correction is performed to keep the offset generated in the current detected in the current detection interval by the current detector 4, which is a single-shunt type current sensor, constant, even when the inverter voltage VINV changes. Then, the current detection interval width correction unit 24 lengthens the current detection interval width TSPadj as the inverter voltage VINV decreases.

[0035] The PWM phase manipulation amount calculation unit 25 calculates and outputs switch timing correction values ​​ΔTHiu*, ΔTLou*, ΔTHiv*, ΔTLov*, ΔTHiw*, ΔTLow* based on the current detection interval width TSPadj and the three-phase command duty cycles DUu*, DUv*, DUw* in order to ensure the current detection interval width TSPadj. In other words, if the PWM phase manipulation amount calculation unit 25 cannot secure the current detection interval width TSPadj without performing the process of shifting the phases of the PWM signals of each phase, it sets the amount of phase shift of the PWM signals so that the current detection interval width TSPadj can be secured by shifting the phases of the PWM signals.

[0036] In this case, when correcting the current detection interval width TSPadj according to the inverter voltage VINV, the current detection interval width TSPadj is lengthened as the inverter voltage VINV decreases. Therefore, the amount of phase shift in the process of shifting the phases of the PWM signals to ensure the current detection interval width TSPadj is set to a larger value as the inverter voltage VINV decreases. Therefore, when the three-phase command duty cycles DUu*, DUv*, and DUw* are the same, setting a larger phase shift in the PWM signal as the inverter voltage VINV decreases corresponds to increasing the current detection interval width TSPadj as the inverter voltage VINV decreases.

[0037] The switch timing setting unit 20 then calculates and outputs the switch timings THiu*, TLou*, THiv*, TLov*, THiw*, TLow* based on the three-phase command duty cycles DUu*, DUv*, DUw*, carrier period Tc, and switch timing correction values ​​ΔTHiu*, ΔTLou*, ΔTHiv*, ΔTLov*, ΔTHiw*, ΔTLow*. In other words, the switch timing setting unit 20 corrects the basic switch timings THiu*, TLou*, THiv*, TLov*, THiw*, TLow*, which are calculated from the three-phase command duty cycles DUu*, DUv*, DUw* and the carrier period Tc, based on the switch timing correction values ​​ΔTHiu*, ΔTLou*, ΔTHiv*, ΔTLov*, ΔTHiw*, ΔTLow*.

[0038] The AD timing setting unit 21 calculates the current detection timing TADI from the switch timings THiu*, TLou*, THiv*, TLov*, THiw*, TLow*, the current detection timing correction value TADIadj, and the carrier period Tc, and outputs the signal of the current detection timing TADI to the AD conversion unit 6C. The current detection feasibility determination unit 26 determines whether the current detector 4 can detect the phase current based on the reference value TSPini of the current detection interval width and the switch timings THiu*, TLou*, THiv*, TLov*, THiw*, TLow*, and outputs a signal indicating the determination result.

[0039] The following describes in detail the process for detecting the phase current of motor 2 in motor control system 1. Figures 3-5 are diagrams illustrating the basic bus current detection process.

[0040] Figure 3 shows one aspect of the correlation between the U-phase, V-phase, and W-phase PWM signals 101, 102, and 103 and the bus current 104 detected by the current detector 4. The PWM signals 101, 102, and 103 are PWM signals applied to the switching elements of the upper arm of each phase, and the switching elements of the upper arm and the switching elements of the lower arm are driven complementaryly.

[0041] In Figure 3, the U-phase PWM signal 101 is turned on at the U-phase ON timing 105 and turned off at the U-phase OFF timing 108. Furthermore, the V-phase PWM signal 102 is turned on at the V-phase ON timing 106 and turned off at the V-phase OFF timing 109. Furthermore, the W-phase PWM signal 103 is turned on at the W-phase ON timing 107 and turned off at the W-phase OFF timing 110.

[0042] Here, the ON / OFF timings of each PWM signal 101, 102, and 103 are in the following order in time series: U-phase ON timing 105, V-phase ON timing 106, W-phase ON timing 107, W-phase OFF timing 110, V-phase OFF timing 109, and U-phase OFF timing 108. In Figure 3, the ON period of the U-phase PWM signal 101 is the longest, the ON period of the W-phase PWM signal 103 is the shortest, and the ON period of the V-phase PWM signal 102 is in the middle. The U-phase is the maximum voltage phase, the W-phase is the minimum voltage phase, and the V-phase is the intermediate voltage phase.

[0043] The bus current 104 detected by the current detector 4 is zero when the U-phase PWM signal 101, V-phase PWM signal 102, and W-phase PWM signal 103 are all ON, that is, during the ON period of the W-phase PWM signal. Furthermore, the bus current 104 detected by the current detector 4 is zero when the U-phase PWM signal 101, V-phase PWM signal 102, and W-phase PWM signal 103 are all OFF, that is, before the U-phase ON timing 105 and after the U-phase OFF timing 108. On the other hand, current detection section A, in which the U-phase PWM signal 101 is ON, the V-phase PWM signal 102 is ON, and the W-phase PWM signal 103 is OFF, is the first current detection section in which the W-phase current Iw flows through the shunt resistor 4A of the current detector 4.

[0044] Figure 4 shows the on / off states of each switching element 3a-3f in current detection section A. In current detection section A, the switching element 3a on the upper arm of the U-phase is ON, the switching element 3b on the lower arm of the U-phase is OFF, the switching element 3c on the upper arm of the V-phase is ON, the switching element 3d on the lower arm of the V-phase is OFF, the switching element 3e on the upper arm of the W-phase is OFF, and the switching element 3f on the lower arm of the W-phase is ON.

[0045] Therefore, in current detection section A, the current flowing from the switching element 3a on the upper arm of the U-phase to the U-phase of the motor 2 and the current flowing from the switching element 3c on the upper arm of the V-phase to the V-phase of the motor 2 merge at the star connection point, and the current flows through the W-phase and the switching element 3f on the lower arm of the W-phase of the motor 2 to the shunt resistor 4A of the current detector 4. Therefore, in current detection section A, the bus current 104 detected by the current detector 4 is a negative W-phase current Iw, and by detecting the current flowing through the shunt resistor 4A in current detection section A, the phase current Iw of the W-phase, which is the lowest voltage phase, can be detected.

[0046] In this embodiment, in the three-phase windings of the motor 2 that are connected in a star configuration, the current flowing from the connection point where the three-phase windings are connected towards the windings is defined as a negative current, and the current flowing from the windings towards the connection point is defined as a positive current. Furthermore, current detection section B, where the U-phase PWM signal 101 is ON, the V-phase PWM signal 102 is OFF, and the W-phase PWM signal 103 is OFF, is the section in which the U-phase current Iu flows through the shunt resistor 4A of the current detector 4.

[0047] Figure 5 shows the on / off states of each switching element 3a-3f in the current detection section B. In section B, the switching element 3a on the upper arm of the U phase is ON, the switching element 3b on the lower arm of the U phase is OFF, the switching element 3c on the upper arm of the V phase is OFF, the switching element 3d on the lower arm of the V phase is ON, the switching element 3e on the upper arm of the W phase is OFF, and the switching element 3f on the lower arm of the W phase is ON.

[0048] Therefore, in current detection section B, the current flowing from the switching element 3a of the upper arm of the U-phase to the U-phase of the motor 2 branches into the V-phase and W-phase from the star connection point. Then, the current flowing through the V phase passes through the switching element 3d on the lower arm of the V phase, and the current flowing through the W phase passes through the switching element 3f on the lower arm of the W phase. The currents from the V phase and the W phase merge and flow into the shunt resistor 4A of the current detector 4.

[0049] Here, since the sum of the V-phase current and the W-phase current is the U-phase current, the current detected by the current detector 4 in the second current detection section, current detection section B, is the positive U-phase current Iu. By detecting the current flowing through the shunt resistor 4A in current detection section B, the phase current Iu of the U-phase, which is the maximum voltage phase, can be detected. Furthermore, the three-phase currents Iu, Iv, and Iw satisfy the relationship "Iu + Iv + Iw = 0". Therefore, if the W-phase current Iw is detected in current detection section A and the U-phase current Iu is detected in current detection section B, the V-phase current Iv can be determined from the relationship "Iu + Iv + Iw = 0". In other words, if the phase current is detected for two of the three phases by the current detector 4, the phase current of the remaining phase can be calculated without detection by the current detector 4.

[0050] Within one cycle of the PWM, the current detector 4 can detect the two-phase currents. The on / off combination patterns of the PWM signals 101, 102, and 103 include the patterns shown in Figure 3, as well as the following five patterns, depending on the combination of the maximum voltage phase, minimum voltage phase, and intermediate voltage phase. When the maximum voltage phase is the U phase and the minimum voltage phase is the V phase, the current detector 4 can detect a negative V phase current Iv in the section where the U phase PWM signal 101 is ON, the V phase PWM signal 102 is OFF, and the W phase PWM signal 103 is ON, and the current detector 4 can detect a positive U phase current Iu in the section where the U phase PWM signal 101 is ON, the V phase PWM signal 102 is OFF, and the W phase PWM signal 103 is OFF.

[0051] Furthermore, when the maximum voltage phase is the V phase and the minimum voltage phase is the W phase, the current detector 4 can detect a negative W phase current Iw in the section where the U phase PWM signal 101 is ON, the V phase PWM signal 102 is ON, and the W phase PWM signal 103 is OFF, and the current detector 4 can detect a positive V phase current Iv in the section where the U phase PWM signal 101 is OFF, the V phase PWM signal 102 is ON, and the W phase PWM signal 103 is OFF.

[0052] Furthermore, when the maximum voltage phase is the V phase and the minimum voltage phase is the U phase, the current detector 4 can detect a negative U phase current Iu in the section where the U phase PWM signal 101 is OFF, the V phase PWM signal 102 is ON, and the W phase PWM signal 103 is ON, and the current detector 4 can detect a positive V phase current Iv in the section where the U phase PWM signal 101 is OFF, the V phase PWM signal 102 is ON, and the W phase PWM signal 103 is OFF.

[0053] Furthermore, when the maximum voltage phase is the W phase and the minimum voltage phase is the U phase, the current detector 4 can detect a negative U phase current Iu in the section where the U phase PWM signal 101 is OFF, the V phase PWM signal 102 is ON, and the W phase PWM signal 103 is ON, and the current detector 4 can detect a positive W phase current Iw in the section where the U phase PWM signal 101 is OFF, the V phase PWM signal 102 is OFF, and the W phase PWM signal 103 is ON.

[0054] Furthermore, when the maximum voltage phase is the W phase and the minimum voltage phase is the V phase, the current detector 4 can detect a negative V phase current Iv in the section where the U phase PWM signal 101 is ON, the V phase PWM signal 102 is OFF, and the W phase PWM signal 103 is ON, and the current detector 4 can detect a positive W phase current Iw in the section where the U phase PWM signal 101 is OFF, the V phase PWM signal 102 is OFF, and the W phase PWM signal 103 is ON.

[0055] As described above, the interval in which the current detector 4 can detect the phase current is determined by the on / off combination of the PWM signals 101, 102, and 103. However, the length of the interval in which the on / off combination of the PWM signals 101, 102, and 103 is maintained changes according to the respective three-phase command duty cycles DUu*, DUv*, and DUw*, and there are cases in which the required length of the current detection interval cannot be secured. Therefore, the PWM phase manipulation amount calculation unit 25 of the motor control unit 6A maintains the pulse width corresponding to the three-phase command duty cycles DUu*, DUv*, and DUw*, while shifting the phases of the PWM signals relative to each other to secure the required current detection interval length (in other words, the current detection interval width).

[0056] Figure 6 is a time chart illustrating the process of shifting the phases of PWM signals relative to each other, illustrating the case where the phase current Iu of the U phase, which is the maximum voltage phase, and the phase current Iw of the W phase, which is the minimum voltage phase, are detected by the current detector 4. The upper part of Figure 6 shows the PWM signals without any process to shift the phases of the PWM signals relative to each other. Furthermore, the middle section of Figure 6 shows the PWM signals after the phases of the PWM signals have been shifted relative to each other in order to secure the reference value TSPini for the current detection interval width. Furthermore, the lower part of Figure 6 shows the PWM signal after the phases of the PWM signals have been shifted relative to each other in order to ensure a current detection interval width TSPadj (TSPadj > TSPini) obtained by correcting the reference value TSPini of the current detection interval width according to the inverter voltage VINV.

[0057] In the upper part of Figure 6, the U-phase current detection interval width 201 is the difference between the U-phase OFF timing and the V-phase OFF timing, and the W-phase current detection interval width 202 is the difference between the W-phase OFF timing and the V-phase OFF timing. The U-phase current detection interval width 201 and the W-phase current detection interval width 202 change according to the 3-phase command duty cycles DUu*, DUv*, and DUw*, but the minimum interval width required for current detection is predetermined as the reference value TSPini.

[0058] The reference value TSPini for the current detection interval width is determined by considering factors such as the delay time of switching elements 3a-3f, the dead time required to prevent the switching elements of the upper arm and the lower arm from being turned ON simultaneously, the stabilization time of the circuit that amplifies and detects the voltage drop that occurs when current flows through the shunt resistor 4A, and the AD conversion time required when sampling the amplified voltage drop with the AD conversion unit 6C. Therefore, if the current detection interval width is shorter than the reference value TSPini, the motor control unit 6A cannot obtain a stable current detection value and cannot be used for motor control. Therefore, in current detection, it is necessary to ensure a current detection interval width of at least the reference value TSPini, and to sample the output of the current detector 4 as the phase current detection value after at least the reference value TSPini has elapsed from the start of the current detection interval.

[0059] If the U-phase current detection interval width 201 and the W-phase current detection interval width 202 in the state shown in the upper part of Figure 6, without performing the phase shifting process, are shorter than the reference value TSPini, the motor control unit 6A performs a process to shift the phases of the PWM signals relative to each other, as shown in the middle part of Figure 6, in order to secure a current detection interval of the reference value TSPini. In detail, the PWM phase manipulation amount calculation unit 25 of the motor control unit 6A calculates the U-phase PWM shift amount 203 (in other words, the amount of shift of the U-phase PWM signal) by subtracting the U-phase current detection interval width 201 from the reference value TSPini, that is, the insufficient current detection interval width. Similarly, it calculates the W-phase PWM shift amount 204 (in other words, the amount of shift of the W-phase PWM signal) by subtracting the W-phase current detection interval width 202 from the reference value TSPini.

[0060] Then, the switch timing setting unit 20 of the motor control unit 6A applies the U-phase PWM shift amount 203 to the U-phase ON timing and the U-phase OFF timing to perform a shift process that delays the phase of the U-phase PWM signal by the U-phase PWM shift amount 203. Similarly, it applies the W-phase PWM shift amount 204 to the W-phase ON timing and the W-phase OFF timing to perform a shift process that advances the phase of the W-phase PWM signal by the W-phase PWM shift amount 204. The switch timing setting unit 20 of the motor control unit 6A adjusts the U-phase current detection interval width 205 and the W-phase current detection interval width 206 after the shift processing to be equal to the reference value TSPini by shifting the PWM signal as described above.

[0061] Then, the AD timing setting unit 21 of the motor control unit 6A sets the U-phase current detection timing 208 to the end of the U-phase current detection interval width 205 after the shift processing (in other words, the U-phase OFF timing after the shift processing), and sets the W-phase current detection timing 207 to the end of the W-phase current detection interval width 206 after the shift processing (in other words, the V-phase OFF timing). In this way, by shifting the PWM signal, the current detection interval width of the reference value TSPini is secured, and after the delay time of the switching elements 3a-3f and the circuit stabilization time have elapsed, the output of the current detector 4 can be sampled as the phase current detection value, allowing the motor control unit 6A to control the motor current with high precision.

[0062] Furthermore, in this embodiment, the current detection interval width correction unit 24 of the motor control unit 6A has the function of correcting the reference value TSPini according to the inverter voltage VINV to set the current detection interval width TSPadj (TSPadj≧TSPini). Furthermore, the PWM phase manipulation amount calculation unit 25 of the motor control unit 6A performs a process of shifting the phases of the PWM signals relative to each other, as shown in the lower part of Figure 6, even when securing a current detection interval width TSPadj that is longer than the reference value TSPini.

[0063] In detail, the PWM phase manipulation amount calculation unit 25 of the motor control unit 6A calculates the U-phase PWM shift amount 209 by subtracting the U-phase current detection interval width 201 from the current detection interval width TSPadj if the U-phase current detection interval width 201 and the W-phase current detection interval width 202 are less than the current detection interval width TSPadj, and calculates the W-phase PWM shift amount 210 by subtracting the W-phase current detection interval width 202 from the current detection interval width TSPadj. Then, the switch timing setting unit 20 of the motor control unit 6A applies the U-phase PWM shift amount 209 to the U-phase ON timing and the U-phase OFF timing to perform a shift process that delays the phase of the U-phase PWM signal by the U-phase PWM shift amount 209. Similarly, it applies the W-phase PWM shift amount 210 to the W-phase ON timing and the W-phase OFF timing to perform a shift process that advances the phase of the W-phase PWM signal by the W-phase PWM shift amount 210.

[0064] The switch timing setting unit 20 of the motor control unit 6A adjusts the U-phase current detection interval width 211 and the W-phase current detection interval width 212 after the shifting process to be equal to the current detection interval width TSPadj by shifting the PWM signal as described above. Furthermore, the AD timing setting unit 21 of the motor control unit 6A can set the U-phase current detection timing 213 to an arbitrary position between the U-phase current detection interval width 205 and the U-phase current detection interval width 211, starting from the V-phase OFF timing, thereby enabling stable detection of the U-phase current Iu.

[0065] Similarly, the AD timing setting unit 21 of the motor control unit 6A can set the W-phase current detection timing 214 to an arbitrary position between the W-phase current detection interval width 206 and the W-phase current detection interval width 212, starting from the W-phase OFF timing, thereby enabling stable detection of the W-phase current Iw. Although Figure 6 shows an example of a pattern for detecting positive U-phase current and negative W-phase current, it is clear that the necessary current detection interval width can also be secured for other phase current detection patterns by shifting the phases of the PWM signals.

[0066] Next, we will explain the current detection interval width TSPadj, which is corrected according to the inverter voltage VINV. Figure 7 is a time chart showing that the change in the three-phase current in each interval AG of the PWM period differs depending on whether the inverter voltage VINV is high or low.

[0067] In section A, where the U-phase PWM signal 101 is OFF, the V-phase PWM signal 102 is OFF, and the W-phase PWM signal 103 is OFF, the phase currents recirculate between the switching element of the lower arm of the inverter circuit 3 and the motor 2. In this case, the voltages of the three phases are equal, and the voltages converted to the d-axis and q-axis are zero, so the current in each phase hardly changes.

[0068] Furthermore, in section B, where the U-phase PWM signal 101 is OFF, the V-phase PWM signal 102 is ON, and the W-phase PWM signal 103 is OFF, the current changes so that it flows from the V-phase to the U-phase and W-phase, causing the V-phase current 305 to increase and the U-phase current 301 and W-phase current 309 to decrease. Furthermore, in section C, where the U-phase PWM signal 101 is OFF, the V-phase PWM signal 102 is ON, and the W-phase PWM signal 103 is ON, the current changes so that it flows from the V-phase and W-phase to the U-phase, causing the V-phase current 305 and W-phase current 309 to increase and the U-phase current 301 to decrease. In this section C, the absolute value of the slope of the current change decreases for the V-phase current 305 compared to section B, increases for the U-phase current 301 compared to section B, and is the same as section B for the W-phase current 309.

[0069] Furthermore, in section D, where the U-phase PWM signal 101 is ON, the V-phase PWM signal 102 is ON, and the W-phase PWM signal 103 is ON, the phase currents circulate back and forth between the switching element of the upper arm of the inverter circuit 3 and the motor 2, and, as in section A, the currents of each phase hardly change. Furthermore, in section E, where the U-phase PWM signal 101 is ON, the V-phase PWM signal 102 is OFF, and the W-phase PWM signal 103 is ON, the current changes so that it flows from the U-phase and W-phase to the V-phase. As a result, the V-phase current 305 decreases, while the U-phase current 301 and W-phase current 309 increase.

[0070] Furthermore, in section F where the U-phase PWM signal 101 is ON, the V-phase PWM signal 102 is OFF, and the W-phase PWM signal 103 is OFF, the current changes so that it flows from the U-phase to the V-phase and W-phase, causing the V-phase current 305 and W-phase current 309 to decrease and the U-phase current 301 to increase. The absolute value of the slope of the current change in this section F decreases at the V-phase current of 305, increases at the U-phase current of 301, and becomes the same at the W-phase current of 309, compared to section E.

[0071] Furthermore, in section G, where the U-phase PWM signal 101 is OFF, the V-phase PWM signal 102 is OFF, and the W-phase PWM signal 103 is OFF, the phase currents circulate back between the lower switching element of the inverter circuit 3 and the motor 2, just as in section A. Thus, since the waveform of each phase current oscillates in the PWM period interval AG, the average U-phase current 302, V-phase average current 306, and W-phase average current 310 that flow on average within the PWM period are considered to be the phase currents that actually flow through each phase of the motor 2.

[0072] Here, there exists a V-phase current offset 307, which is the difference between the V-phase detected current and the V-phase average current 306 at the end of section E where the V-phase current can be detected, and there also exists a U-phase current offset 303, which is the difference between the U-phase detected current and the U-phase average current 302 at the end of section F where the U-phase current can be detected. In other words, when the current flowing through the shunt resistor 4A, which is the DC bus resistor, is detected in each current detection section, the value obtained is offset from the average current of the currents actually flowing through each phase.

[0073] Therefore, when detecting the current flowing through the shunt resistor 4A as the phase current in each current detection section, it is necessary to correct the offset of the detected current by methods such as pre-measuring and storing the above offset value, and then determine the average current actually flowing through each phase from the current detected in each current detection section. For example, when the three-phase command duty cycles DUu*, DUv*, and DUw* are all set to the same value, the average current of each phase becomes zero. However, the phase currents detected in individual current detection intervals are offset from the average current, and these offset values ​​can be stored.

[0074] Furthermore, comparing the U-phase current waveform 304 when the inverter voltage VINV is high voltage with the U-phase current waveform 301 when the inverter voltage VINV is low voltage, the slope of the current change in the current-detectable sections B, C, E, and F is greater for the U-phase current waveform 304 at high voltage than for the U-phase current waveform 301 at low voltage, indicating a steeper current change. Therefore, when the inverter voltage VINV increases or decreases, the V-phase current offset 307 and the U-phase current offset 303 also increase or decrease.

[0075] Therefore, when correcting the detection current using a fixed offset correction value regardless of the inverter voltage VINV, a change in the inverter voltage VINV will result in a discrepancy between the actual offset amount and the offset correction value used to correct the detection current. Furthermore, if the motor control continues with the detection current used for motor control deviating from the actual current flowing through motor 2, the actual current flowing through motor 2 will deviate from the commanded current, causing the motor torque to change.

[0076] Therefore, in order to prevent the motor torque from changing due to increases or decreases in the inverter voltage VINV, it is necessary to address the actual offset amount that changes in accordance with the inverter voltage VINV. However, in order to effectively suppress changes in motor torque by changing the offset correction value used to correct the current detection value according to the inverter voltage VINV, the detection resolution of the current detector 4 must be sufficient. For example, in an electric power steering system using motor 2, if the resolution of current detection is insufficient, a change of one unit in the current detection resolution will cause a fluctuation in motor torque, and this fluctuation in motor torque will give the driver a sense of discomfort as a change in steering feel through the steering wheel.

[0077] Generally, there is a trade-off between the measurable current range and the current detection resolution. Therefore, in order to improve detection resolution while ensuring a measurable range of phase currents, it is necessary to switch the detection resolution, setting a high detection resolution in the low current range and a low detection resolution in the high current range. However, switching the current detection resolution requires adding detection circuits, modifying software, etc., which increases system costs.

[0078] Therefore, the motor control unit 6A in this embodiment is configured to apply a constant offset correction value even when the inverter voltage VINV changes, by adjusting the amount of offset that occurs in the detected current through correction of the current detection interval width and current detection timing, rather than changing the offset correction value for correcting the detected current in response to an increase or decrease in the inverter voltage VINV. In this configuration, the handling of the offset amount, which changes according to the inverter voltage VINV, depends not on the current detection resolution, but on the resolution of the current detection interval and current detection timing, and the motor inductance.

[0079] The current detection interval width and current detection timing resolution are determined by the clock frequency used to count the PWM period, and the clock frequency varies depending on the microcomputer 61 and the oscillator. For example, in the motor control of an electric power steering system, assuming a current detection resolution of approximately 0.1A, a clock frequency of 80MHz for counting the PWM period, and a motor inductance of 70uH, the change in current per clock cycle is approximately 0.001A. Therefore, adjusting the current detection interval width and current detection timing is equivalent to increasing the current detection resolution by 100 times.

[0080] On the other hand, increasing the current detection resolution by 100 times would require reducing the current measurement range to 1 / 100th, which is difficult to achieve. For example, in electric power steering systems, it is necessary to measure currents in a range of approximately ±100A for motor control.

[0081] Furthermore, even if the resolution of the AD converter used to detect current in the microcomputer 61 could be changed, it would need to be increased by 128 times, or 7 bits, which would lead to increased costs. Furthermore, while it is possible to improve the current detection resolution, there is a challenge in that there are limitations to the resolution of the voltage applied to motor 2.

[0082] In contrast, when the offset amount in the detected current is adjusted by correcting the current detection interval width and current detection timing, there is no need to switch the current resolution using hardware or software, and it is possible to achieve both a high current detection range and high current resolution. Furthermore, because the phase current can be adjusted more precisely than the detection resolution of the phase current, it is possible to improve the adjustment of motor torque and steering feel, and to improve the adjustment of the offset amount that changes according to the inverter voltage VINV.

[0083] Furthermore, the offset of the detected current can be adjusted more precisely than the detection resolution of the phase current, and since it does not depend on the detection resolution of the phase current, it is possible to reduce costs by lowering the detection resolution of the phase current. Furthermore, there is no need to change the offset correction value according to the inverter voltage VINV, and there is no need to pre-measure the slope between the inverter voltage VINV and the offset amount.

[0084] Below, we will determine the amount of current fluctuation during the current detection section. For the d and q axes, if we let Vd be the d-axis voltage, Vq be the q-axis voltage, R be the resistance, Id be the d-axis current, Iq be the q-axis current, Ld be the d-axis inductance, Lq be the q-axis inductance, ω be the motor rotational speed, and φ be the flux linkage, then the circuit equation in Equation 1 holds true.

number

[0085] Solving the circuit equation in Equation 1 for dId / dt and dIq / dt yields Equation 2.

number

[0086] Here, if we assume that the voltage drop due to the phase current and phase resistance, and the rotational speed are sufficiently low to be negligible, then we can consider ω=0 and RI=0, and equation 2 can be approximated as equation 3.

number

[0087] Furthermore, the current fluctuations ΔId and ΔIq within the current detection section TSP are the product of the slope and time, and can be calculated according to Equation 4.

number

[0088] In other words, the current fluctuations ΔId and ΔIq within the current detection section TSP are proportional to the width of the current detection section and the inverter voltage VINV. Then, from the current fluctuations ΔId and ΔIq along the dq axis, the fluctuations ΔIu, ΔIv, and ΔIw for each phase can be calculated by two-phase to three-phase conversion, and the above approximation holds true if the current detection interval TSP is sufficiently short.

[0089] Figure 8 is a time chart showing the function of the current detection interval width correction unit 24, which corrects the current detection interval width when the inverter voltage VINV changes, thereby keeping the amount of offset generated in the detected current constant. The left side of Figure 8 shows the phase current and current detection interval width when the inverter voltage VINV is the reference voltage, and the right side of Figure 8 shows the phase current and current detection interval width when the inverter voltage VINV is lower than the reference voltage.

[0090] When the inverter voltage VINV is equal to the reference voltage (see left side of Figure 8), an offset amount 403 occurs, which is the difference between the V-phase detected current 401 and the V-phase average current 402 detected at the end of section C where the V-phase current can be detected. Similarly, when the inverter voltage VINV is lower than the reference voltage (see the right side of Figure 8), an offset amount 406 occurs, which is the difference between the V-phase detected current 404 and the V-phase average current 405 detected at the end of the section G where the V-phase current can be detected.

[0091] Here, the width of section G is set to a width obtained by correcting the width of section C (i.e., the reference value TSPini for the current detection section width) according to the inverter voltage VINV, so that the offset amount 403 and the offset amount 406 are equal, or in other words, so that the offset amount remains constant even if the inverter voltage VINV changes from the reference voltage. Similarly, the same applies to sections D and H where the U-phase current can be detected. To ensure that the offset amount remains the same even when the inverter voltage VINV is lower than the reference voltage, the width of section H when the inverter voltage VINV is lower than the reference voltage is adjusted based on the width of section D when the inverter voltage VINV is the reference voltage. In other words, the current detection interval width correction unit 24 sets the current detection interval width to be longer than the reference value TSPini as the inverter voltage VINV falls below the reference voltage, so that the offset amount does not change even when the inverter voltage VINV falls below the reference voltage.

[0092] When the inverter voltage VINV is different, the slope of the fluctuations occurring in the detected current waveform in the current detection section will be different. When the slope is different, the amount of change in the detected current in the current detection section changes, and the offset amount, which is the difference between the detected current and the average current, changes. Here, the offset amount ΔOS is expressed by Equation 5 based on the inverter voltage VINV, the current detection interval width TSP, and the inductance L.

number

[0093] Therefore, the current detection interval width correction unit 24 changes the current detection interval width TSP to suppress the change in the offset amount ΔOS when the inverter voltage VINV changes from the reference voltage, based on the relationship in equation 5. In detail, the inverter reference voltage VINV0, inverter detection voltage VINVx, current detection interval width reference value TSPini, and corrected current detection interval width TSPadj satisfy the relationship in Equation 6, and the formula for calculating the current detection interval width TSPadj is given by Equation 7.

number

number

[0094] Figure 9 schematically illustrates how the current detection interval width TSPadj is determined based on Equation 7. For line 407, which has a greater slope than line 411, the offset 410, which is the difference between the value after a certain time 408 has elapsed and the value before that time 409, is greater than the offset 412, which is the difference between the value after a certain time 408 has elapsed and the value before that time 409 for line 411, which has a smaller slope than line 407.

[0095] Therefore, by allowing a certain amount of time 413 to pass so that the offset 412 of the straight line 411, which has a relatively small slope, becomes equal to the offset 410 of the straight line 407, an offset 414 equal to the offset 410 of the straight line 407, which has a large slope, can be obtained for the straight line 411, which has a small slope. In this way, even if the inverter voltage VINV fluctuates, the amount of offset generated in the detected current can be fixed by correcting the current detection interval width.

[0096] Furthermore, when the inverter voltage VINV is the same, increasing the current detection interval width increases the amplitude of the three-phase current within one PWM cycle, resulting in increased power consumption and electromagnetic noise. If no correction is applied to the current detection interval width according to the inverter voltage VINV, power consumption and electromagnetic noise decrease when the inverter voltage VINV is low compared to when it is high. However, even if a correction is applied to the current detection interval width according to the inverter voltage VINV, power consumption and electromagnetic noise do not increase at low voltage compared to high voltage when using high voltage as a reference.

[0097] Furthermore, as the rotational speed of motor 2 increases, the command duty cycle in PWM control increases, reducing the margin for securing the minimum current detection interval width required for current detection. Applying a correction to the current detection interval width according to the inverter voltage VINV may reduce the current detection rate. However, this reduction in the current detection rate can be suppressed by performing the processes shown in Figures 10 and 11, which will be explained later.

[0098] Furthermore, if an offset occurs in the detected current, the actual current flowing will be shifted from the detected current by the amount of the offset. By utilizing these characteristics and adjusting the offset amount, the actual current flowing can be adjusted. Compared to changing the offset correction value in units of current detection resolution, changing the amount of offset generated in units of resolution by correcting the current detection interval width and current detection timing allows for finer adjustment of the actual current flowing than the current detection resolution.

[0099] Furthermore, the current detection interval width correction unit 24 calculates the current detection interval width TSPadj as an offset amount ΔOSadd, when the inverter voltage VINV and the current command and the resolution of the detected current are input values ​​INP, by subtracting the remainder obtained by dividing the current command by the resolution of the detected current from the resolution of the detected current. In other words, the current detection interval width correction unit 24 calculates the current detection interval width TSPadj according to formula 8.

number

[0100] Figure 10 is a flowchart showing the process of limiting the current detection interval width TSPadj, which is performed by the motor control unit 6A. In step S501, the motor control unit 6A calculates the upper limit value TSPul of the current detection interval width TSPadj based on the command duty cycle.

[0101] Next, in step S502, the motor control unit 6A determines whether the current detection interval width TSPadj exceeds the upper limit value TSPul. Then, if the current detection interval width TSPadj exceeds the upper limit value TSPul, the motor control unit 6A proceeds to step S503, and if the current detection interval width TSPadj does not exceed the upper limit value TSPul, it bypasses step S503 and proceeds to step S504.

[0102] In step S503, the motor control unit 6A limits the current detection interval width TSPadj by the upper limit value TSPul. In other words, in step S502, the motor control unit 6A sets the current detection interval width TSPadj to the upper limit value TSPul, thereby limiting the current detection interval width TSPadj to a range that does not exceed the upper limit value TSPul. This prevents the misuse of the abnormal current detection interval width TSPadj.

[0103] In step S504, the motor control unit 6A determines whether the current detection interval width TSPadj is below a predetermined lower limit value TSPll. The lower limit TSPll is a value predetermined considering the delay time of the switching elements 3a-3f, the circuit stabilization time, the AD conversion time, etc., and is stored as a setting value in a non-volatile memory such as the ROM of the microcomputer 61.

[0104] The motor control unit 6A proceeds to step S505 if the current detection interval width TSPadj is below the lower limit value TSPll, and terminates the routine if the current detection interval width TSPadj is not below the lower limit value TSPll. In step S505, the motor control unit 6A sets the current detection interval width TSPadj to the lower limit value TSPll, thereby limiting the current detection interval width TSPadj to a range that does not fall below the lower limit value TSPll.

[0105] This makes it possible to avoid the effects of oscillations occurring in the current detected in a current detection interval shorter than the lower limit TSPll. As described above, the motor control unit 6A restricts the current detection interval width TSPadj to a value within the region between the upper limit value TSPul and the lower limit value TSPll by performing the processing shown in the flowchart of Figure 10.

[0106] Figure 11 is a flowchart showing the calculation process for the current detection interval width TSPadj performed by the motor control unit 6A, which shows the process of correcting the current detection interval width according to the inverter voltage VINV, when predetermined conditions are met, and more specifically when the rotation speed is within a predetermined range. In step S601, the motor control unit 6A determines whether the motor rotation speed is within a predetermined low rotation speed range, in other words, whether the motor rotation speed is below a predetermined threshold.

[0107] If the motor rotation speed is within a predetermined low rotation speed range, that is, if the rotation speed of motor 2 is below a threshold, the motor control unit 6A proceeds to step S602. In step S602, the motor control unit 6A corrects the reference value TSPini according to the inverter voltage VINV and calculates the current detection interval width TSPadj.

[0108] On the other hand, if the motor rotation speed is outside the predetermined low rotation speed range, that is, if the rotation speed of motor 2 exceeds the threshold, the motor control unit 6A proceeds to step S603. In step S603, the motor control unit 6A outputs the reference value TSPini as the current detection interval width TSPadj.

[0109] The low rotational speed range in which the current detection interval width TSPadj is corrected according to the inverter voltage VINV is set based on the range in which the driver can feel the change in motor torque through the steering wheel, for example, when motor 2 is a motor that generates steering force in an electric power steering system. In other words, the current detection interval width TSPadj is corrected according to the inverter voltage VINV, but only in the range where the change in motor torque is felt, thereby reducing the fluctuation in motor torque perceived by the driver. This prevents unnecessary correction of the current detection interval width TSPadj in accordance with the inverter voltage VINV in areas where the effect of suppressing changes in motor torque is difficult to perceive, thereby reducing the computational load on the motor control unit 6A, i.e., the microcomputer 61.

[0110] In the calculation process shown in the flowchart of Figure 11, the motor control unit 6A determines whether or not to perform correction of the current detection interval width TSPadj according to the inverter voltage VINV based on the rotational speed of the motor 2, but is not limited to the rotational speed condition. For example, the motor control unit 6A can switch whether or not to perform correction of the current detection interval width TSPadj according to the inverter voltage VINV, in accordance with the torque command or the modulation rate of the PWM, instead of the rotational speed condition.

[0111] Furthermore, the motor control unit 6A can switch whether or not to perform correction of the current detection interval width TSPadj according to the inverter voltage VINV, depending on a combination of several conditions including rotational speed, torque command, and modulation rate. Here, the motor control unit 6A switches between performing and stopping the correction according to the inverter voltage VINV based on the torque command and modulation rate conditions, which would result in torque changes exceeding the allowable level if the current detection interval width TSPadj is not corrected according to the inverter voltage VINV.

[0112] Figure 12 is a flowchart showing another aspect of the calculation process for the current detection interval width TSPadj performed by the motor control unit 6A, which shows a case where a hysteresis characteristic is applied to the process of switching whether or not to perform correction of the current detection interval width TSPadj according to the inverter voltage VINV. In step S701, the motor control unit 6A determines whether the motor rotation speed is within a predetermined first rotation speed range, or in other words, whether the motor rotation speed falls below a first threshold.

[0113] Then, if the motor rotation speed is within the first rotation speed range, the motor control unit 6A proceeds to step S702, sets a command to perform a correction of the current detection interval width TSPadj according to the inverter voltage VINV, and then proceeds to step S705. On the other hand, if the motor rotation speed is not within the first rotation speed range, the motor control unit 6A proceeds to step S703.

[0114] In step S703, the motor control unit 6A determines whether the motor rotation speed is within a predetermined second rotation speed range, or in other words, whether the motor rotation speed falls below a second threshold (second threshold > first threshold). If the motor rotation speed is not within a predetermined second rotation speed range, that is, if the motor rotation speed is above the second threshold, the motor control unit 6A proceeds to step S704.

[0115] In step S704, the motor control unit 6A cancels the command to perform correction of the current detection interval width TSPadj according to the inverter voltage VINV. On the other hand, if the motor rotation speed is below the second threshold, the motor control unit 6A bypasses step S704 and proceeds to step S705.

[0116] In step S705, the motor control unit 6A determines whether a command has been set to perform correction of the current detection interval width TSPadj according to the inverter voltage VINV. If an execution command has been set, the motor control unit 6A proceeds to step S706 and corrects the current detection interval width TSPadj according to the inverter voltage VINV. On the other hand, if the execution command is canceled, the motor control unit 6A proceeds to step S707 and outputs the reference value TSPini as the current detection interval width TSPadj without performing any correction according to the inverter voltage VINV.

[0117] In other words, when the motor rotation speed falls below the first threshold, the motor control unit 6A starts correcting the current detection interval width TSPadj according to the inverter voltage VINV. After that, even if the motor rotation speed rises above the first threshold, the correction process continues and only stops when it reaches or exceeds the second threshold, which is higher than the first threshold. Due to the hysteresis characteristics, when the motor rotation speed fluctuates near the first threshold, repeated execution and stopping of corrections are suppressed, thereby improving the stability of the correction control.

[0118] Next, we will explain a configuration for suppressing motor torque oscillations caused by noise components generated in the detected value of the inverter voltage VINV during the correction process of the current detection interval width TSPadj corresponding to the inverter voltage VINV. Figure 13 shows a configuration in which the inverter voltage VINV signal acquired by the current detection interval width correction unit 24 is the inverter voltage VINV signal from which noise components (i.e., high-frequency components) have been removed by the digital low-pass filter 27; in other words, the inverter voltage VINV signal that has passed through the digital low-pass filter 27.

[0119] Furthermore, in the configuration shown in Figure 14, the digital low-pass filter 28 removes noise components from the signal of the current detection interval width TSPadj output by the current detection interval width correction unit 24, and similarly, the digital low-pass filter 29 removes noise components from the signal of the current detection timing correction value TADIadj output by the current detection interval width correction unit 24. The PWM phase manipulation amount calculation unit 25 then acquires a signal of the current detection interval width TSPadj that has passed through the digital low-pass filter 28, and the AD timing setting unit 21 acquires a signal of the current detection timing correction value TADIadj that has passed through the digital low-pass filter 29. According to the configuration shown in Figure 13 or Figure 14, the motor torque is suppressed from being affected by noise components generated in the detected value of the inverter voltage VINV.

[0120] Figure 15 is a time chart showing the time diffusion process for correcting the current detection interval width TSPadj according to the inverter voltage VINV. The time-diffusion process shown in Figure 15 detects the phase current once every multiple PWM cycles, and reduces the amount of phase shift of the PWM signal when the phase current is not detected compared to when the phase current is detected. These multiple PWM cycles can be, for example, control cycles that update the duty cycle in the PWM.

[0121] In Figure 15, the control period is defined as the period during which the three-phase command duty cycles DUu*, DUv*, and DUw* are updated, and the control period consists of N PWM periods, from the first PWM period to the Nth PWM period. Then, in the first PWM cycle, a correction of the current detection interval width TSPadj according to the inverter voltage VINV is applied, and the phase current is detected with the current detection interval width TSPadj corrected according to the inverter voltage VINV.

[0122] For each PWM period from the second to the Nth PWM period, the current detection interval width is obtained by subtracting from the reference value TSPini an amount equal to the difference between the current detection interval width TSPadj applied in the first PWM period and the reference value TSPini, divided by "N-1". The average of the current detection interval widths over the control period is then adjusted to match the reference value TSPini. According to this configuration, the PWM period during which the current detection interval width TSPadj is increased from the reference value TSPini can be reduced, and the fluctuating amplitude of the three-phase current can be reduced as an average of the control period, thereby suppressing increases in power consumption and electromagnetic noise.

[0123] Figures 16 and 17 are diagrams showing the correlation between the steering torque generated by motor 2 and the steering angle for each level of inverter voltage VINV, when motor 2 is a motor that generates steering torque in an electric power steering system. Figure 16 shows the correlation between steering torque and steering angle without correcting the current detection interval width TSPadj according to the inverter voltage VINV, indicating that the steering torque generated by motor 2 shifts when the inverter voltage VINV changes.

[0124] On the other hand, Figure 17 shows the correlation between steering torque and steering angle when the current detection interval width TSPadj is corrected according to the inverter voltage VINV, indicating that approximately the same level of steering torque is generated even when the inverter voltage VINV changes. In other words, if the current detection interval width TSPadj is corrected according to the inverter voltage VINV, the average current (actual phase current) of each phase can be determined with high accuracy using a constant offset correction value, even if the inverter voltage VINV changes.

[0125] Furthermore, if the average current of each phase (in other words, the actual phase current) can be determined with high precision, the accuracy of the feedback control, which corrects the phase current to bring it closer to the command current, will increase, and changes in steering torque that occur in response to changes in the inverter voltage VINV will be suppressed. Furthermore, if the steering torque does not change even when the inverter voltage VINV changes, this change will not be transmitted to the driver as a change in steering feel through the steering wheel, thus preventing the driver from feeling any discomfort.

[0126] The technical concepts described in the above embodiments can be used in appropriate combinations, as long as no contradictions arise. Furthermore, although the contents of the present invention have been specifically described with reference to preferred embodiments, it will be obvious to those skilled in the art that various modifications can be taken based on the basic technical concept and teachings of the present invention.

[0127] For example, when the inverter voltage VINV becomes higher than the reference voltage, the motor control unit 6A can perform a process to shorten the current detection interval width to a value lower than the reference value. Furthermore, the motor control unit 6A can detect the phase current of the first phase of the three phases of the motor 2 in the first PWM period, and detect the phase current of the second phase in the second PWM period following the first PWM period.

[0128] Furthermore, while the above embodiment employs a three-phase PWM method that uses a double-edge triangular carrier as the carrier signal and centers the pulse, a three-phase PWM method using a single-edge triangular carrier as the carrier signal can also be applied to change the current detection interval width according to the inverter voltage VINV and to phase shift processing of the PWM signal to secure the current detection interval width. Furthermore, although the current detector 4 described above is a resistance-type current sensor using a shunt resistor 4A, a magnetic field-type current sensor can also be used as the current detector. [Explanation of Symbols]

[0129] 1…Motor control system, 2…Motor, 3…Inverter circuit, 4…Current detector, 4A…Shunt resistor, 5…Inverter voltage detector, 6…Motor control device, 6A…Motor control unit, 6B…Switching signal generation unit, 6C…AD conversion unit, 7…DC power supply, 20…Switch timing setting unit, 21…AD timing setting unit, 24…Current detection interval width correction unit, 25…PWM phase manipulation amount calculation unit, 61…Microcomputer (control unit, control unit)

Claims

1. A motor control device that controls a motor, The control unit included in the motor control device is The output signal of a current detector that detects the current flowing between an inverter driven by a PWM signal and the DC power supply of the inverter is acquired. The output signal of the current detector is sampled in current detection intervals corresponding to the on / off combination of the PWM signal to detect the phase current of the motor. Based on the detected phase current, the motor is controlled via the inverter. A signal relating to the voltage of the DC power supply is acquired, and the length of the current detection interval is changed based on the voltage of the DC power supply. The lower the voltage of the DC power supply, the longer the current detection interval. Motor control device.

2. A motor control device according to claim 1, The current detection interval is the interval from the moment the on / off combination of the PWM signal switches until the output signal of the current detector is sampled. Motor control device.

3. A motor control device according to claim 1, The control unit is, The phases of the PWM signals are shifted relative to each other to ensure the length of the current detection interval. Motor control device.

4. A motor control device according to claim 3, The control unit is, The phase current is detected at a rate of once every multiple cycles of the PWM control cycle. When the PWM control period does not detect the phase current, the amount of phase shift of the PWM signal is reduced compared to when the PWM control period detects the phase current. Motor control device.

5. A motor control device according to claim 4, The control unit is The aforementioned multiple periods are defined as periods for changing the duty cycle in PWM. Motor control device.

6. A motor control device according to claim 1, The control unit is, The length of the current detection interval is changed within the region between the upper limit and the lower limit. Motor control device.

7. A motor control device according to claim 1, The control unit is When the rotational speed of the motor is within a predetermined range, the length of the current detection interval is changed based on the voltage of the DC power supply. Motor control device.

8. A motor control device that controls a motor, The control unit included in the motor control device is The output signal of a current detector that detects the current flowing between an inverter driven by a PWM signal and the DC power supply of the inverter is acquired. The output signal of the current detector is sampled at a predetermined timing to detect the phase current of the motor. Based on the detected phase current, the motor is controlled via the inverter. A signal relating to the voltage of the DC power supply is acquired, The lower the voltage of the DC power supply, the greater the amount by which the phases of the PWM signals are shifted relative to each other. Motor control device.