Motor control device
Patent Information
- Application Number
- PCT/JP2025/005261
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-03-05
- Filing Date
- 2025-02-18
- Publication Date
- 2025-10-02
AI Technical Summary
Conventional motor control devices face issues with rapid heat generation and decreased performance due to increased phase currents when the rotor stops while current is flowing, leading to adverse effects on motor coils and switching elements.
A motor control device that includes phase current detection, electrical angle detection, and a heat generation suppression mechanism, which rotates the rotor by sequentially changing electrical angles to minimize heat generation and maintain torque without reducing efficiency.
Effectively suppresses heat generation in motor coils and switching elements while maintaining torque continuity and minimizing position fluctuations, enhancing motor performance.
Smart Images

Figure JP2025005261_02102025_PF_FP_ABST
Abstract
Description
Motor control device
[0001] The present disclosure relates to a motor control device.
[0002] Conventionally, a motor control device is known that, when the rotor of an electric motor stops while current is flowing, suppresses heat generation by setting the phase current of one phase to zero, and maintains the rotor position by increasing the phase current of two phases above normal (see JP 2013-187939 A).
[0003] In conventional technology, in order to make one phase current zero while maintaining the rotor position, it is necessary to increase the phase current of the other two phases more than usual. The increase in phase current causes the motor coil and switching elements to heat up rapidly, resulting in a decrease in motor performance and adverse effects on the elements. Therefore, the inability to suppress heat generation in the motor coil and switching elements is an issue.
[0004] In one aspect, a motor control device includes a phase current detection unit, an electrical angle detection unit, a command value creation unit, a motor control unit, a heat generation suppression determination unit, and an electrical angle calculation unit. The phase current detection unit detects first, second, and third phase currents flowing through the electric motor. The electrical angle detection unit detects the electrical angle of the electric motor. The command value creation unit creates a motor command value for operating the electric motor. The motor control unit operates the electric motor based on the motor command value. The heat generation suppression determination unit determines whether heat generation of the electric motor needs to be suppressed. The electrical angle calculation unit calculates a first electrical angle, a second electrical angle, and a third electrical angle. The first electrical angle is the electrical angle at which the first phase current is equal to or less than a first threshold. The second electrical angle is the electrical angle at which the second phase current is equal to or less than the first threshold. The third electrical angle is the electrical angle at which the third phase current is equal to or less than the first threshold. When the heat generation suppression determination unit determines that heat generation from the electric motor needs to be suppressed, the motor control device rotates the rotor of the electric motor by sequentially changing the electrical angle of the electric motor between a first electrical angle, a second electrical angle, and a third electrical angle.
[0005] By rotating the rotor of the electric motor, it is possible to suppress heat generation in the motor coil and switching elements, maintain torque continuously, and minimize position fluctuations of the electric motor without reducing the torque efficiency of the electric motor.
[0006] 1 is a configuration diagram showing a vehicle equipped with a control device as a motor control device according to an embodiment. FIG. 1 is a configuration diagram showing a brake hydraulic pressure circuit of an input device and a motor cylinder device. FIG. 2 is a block diagram showing the configuration of a brake system. FIG. 3 is a block diagram showing the configuration of a command value creation unit. FIG. 4 is a graph (a) showing the relationship between the phase current of each phase and the electrical angle, (b) showing the rotation direction of the electric motor when the electrical angle is changed to a U-phase electrical angle, (c) showing the rotation direction of the electric motor when the electrical angle is changed to a W-phase electrical angle, and (d) showing the rotation direction of the electric motor when the electrical angle is changed to a V-phase electrical angle. FIG. 5 is a flowchart showing a heat generation suppression determination process. FIG. 6 is a flowchart showing a lock-up electrical angle calculation process. FIG. 7 is a flowchart showing a torque upper limit reaching determination process. FIG. 8 is a flowchart showing a heat generation suppression electrical angle calculation process. FIG. 9 is a flowchart showing a reference motor position calculation process. FIG. 10 is a flowchart showing a hold time calculation process. FIG. 11 is a flowchart showing a heat generation suppression motor position command calculation process. FIG. 12 is a flowchart showing a motor position command switching process. FIG. 13 is a time chart showing heat generation suppression control executed when a hydraulic pressure command becomes constant. FIG. 14 is a time chart showing heat generation suppression control executed when the electric motor is mechanically locked. FIG. 15 is a time chart showing a form in which the electrical angle is changed in a sinusoidal manner. 6 is a time chart showing a form of determining whether it is necessary to suppress heat generation from the electric motor based on the rotation speed of the electric motor.
[0007] Next, an embodiment will be described in detail with reference to the accompanying drawings. As shown in Fig. 1, a brake system 1 includes a control device 100 as a motor control device. The brake system 1 includes both a by-wire electric brake system that operates the brakes by transmitting an electric signal, and a conventional hydraulic brake system that operates the brakes by directly transmitting hydraulic pressure generated by the depression force on a brake pedal BP.
[0008] For this purpose, the brake system 1 includes an input device U1 that inputs brake pedal BP operation input when the driver operates the brake pedal BP; a motor cylinder device U2 that generates brake fluid pressure in response to the amount of brake pedal BP operation (hereinafter also referred to as the "brake operation amount") and in response to necessary control; and a hydraulic pressure control unit U3 that controls the brake fluid pressure to assist in stabilizing vehicle behavior. The input device U1, motor cylinder device U2, and hydraulic pressure control unit U3 are configured into two systems: a first system that controls the right front wheel brake FR and the left rear wheel brake RL, and a second system that controls the left front wheel brake FL and the right rear wheel brake RR. Each system is independently connected by hydraulic pressure paths formed, for example, with hoses or tubes. The input device U1 and the motor cylinder device U2 are electrically connected by a harness (not shown). The brake system 1 can be installed in various vehicles, including automobiles driven solely by internal combustion engines, hybrid automobiles, electric automobiles, and fuel cell automobiles.
[0009] In order to control vehicle behavior by the electric brake system and hydraulic control unit U3, the brake system 1 is provided with a wheel speed sensor 91, a steering angle sensor 92, a lateral acceleration sensor 93, a longitudinal acceleration sensor 94, an accelerator pedal stroke sensor 95 that detects the stroke of an accelerator pedal AP, a brake pedal stroke sensor 96 that detects the stroke of a brake pedal BP, and a position sensor 97 at appropriate locations on the vehicle CR, and the output values of these sensors are output to the control device 100. The position sensor 97 detects the electrical angle of an electric motor 42 (see FIG. 2 ), which will be described later.
[0010] The control device 100 includes, for example, a CPU, RAM, ROM, and input / output circuits, and is configured to perform various calculation processes based on the output values of the above-mentioned sensors and the programs and data stored in the ROM, thereby controlling the input device U1, motor cylinder device U2, and hydraulic control unit U3. This enables the control device 100 to control the brake hydraulic pressure applied to the wheel cylinders H of the wheel brakes FR, RL, FL, and RR, and to apply appropriate braking force to each wheel W.
[0011] As shown in FIG. 2, the connection port 63a of the first system of the input device U1 is connected by piping to the output port 32a of the motor cylinder device U2 and the input port 68a of the hydraulic control unit U3, and similarly, the connection port 63b of the second system is connected by piping to the output port 32b of the motor cylinder device U2 and the input port 68b of the hydraulic control unit U3.
[0012] The hydraulic control unit U3 is provided with four output ports 69a to 69d, which are connected to the wheel cylinders H of the wheel brakes FR, RL, RR, and FL, respectively.
[0013] The input device U1 includes a tandem master cylinder 10 capable of generating hydraulic pressure in response to the driver's operation of the brake pedal BP, and a first reservoir 65 attached to the master cylinder 10. A first piston 12a and a second piston 12b are slidably disposed within a cylinder tube 11 of the master cylinder 10, spaced a predetermined distance apart along the axial direction of the cylinder tube 11. The first piston 12a is disposed adjacent to the brake pedal BP and is connected to the brake pedal BP via a push rod 12z. The second piston 12b is disposed farther from the brake pedal BP than the first piston 12a.
[0014] A pair of piston packings 13a, 13b are attached to the outer peripheral surfaces of the first piston 12a and the second piston 12b, respectively, spaced apart in the axial direction, and back chambers 14a, 14b are formed between the pair of piston packings 13a, 13b due to the reduced diameters of the first piston 12a and the second piston 12b. The back chambers 14a, 14b are connected to a first reservoir 65 via supply ports 17a, 17b, respectively.
[0015] A first pressure chamber 15a is formed between the first piston 12a and the second piston 12b, and the first pressure chamber 15a is connected to a first reservoir 65 via a relief port 18a. Similarly, a second pressure chamber 15b is formed between the second piston 12b and the side end of the cylinder tube 11, and the second pressure chamber 15b is connected to the first reservoir 65 via a relief port 18b. When the driver depresses the brake pedal BP, the first pressure chamber 15a and the second pressure chamber 15b generate brake fluid pressure corresponding to the depressing force.
[0016] A spring 16a is provided between the first piston 12a and the second piston 12b, and a spring 16b is provided between the second piston 12b and the side end of the cylinder tube 11. This allows the first pressure chamber 15a and the second pressure chamber 15b to be returned to an appropriate volume when the driver stops operating the brake pedal BP.
[0017] In addition, the cylinder tube 11 is formed with output ports 19a and 19b that correspond to the pressure chambers 15a and 15b and communicate with them, respectively, and the output ports 19a and 19b are connected to connection ports 63a and 63b of the input device U1 by piping, respectively.
[0018] A normally open solenoid valve 61a is arranged on the piping connecting the output port 19a of the master cylinder 10 and the connection port 63a of the input device U1, and a normally open solenoid valve 61b is arranged on the piping connecting the output port 19b of the master cylinder 10 and the connection port 63b of the input device U1.
[0019] The stroke simulator 20 is connected to a pipe (branch hydraulic line 64) that connects the output port 19b of the master cylinder 10 and the normally open solenoid valve 61b via a normally closed solenoid valve 62. Note that the normally open solenoid valves 61a and 61b in Figure 2 are shown in their energized, normal operating state (closed state), and the normally closed solenoid valve 62 is also shown in its energized, normal operating state (open state).
[0020] The stroke simulator 20 is a device that generates a brake stroke and reaction force during by-wire control, making the driver feel as if braking force is being generated by pedal force, and has a piston 22 disposed in a cylinder 21, and a hydraulic pressure chamber 24 that communicates with a branch hydraulic pressure line 64 via a normally closed solenoid valve 62 is formed on one side of the piston 22. The hydraulic pressure chamber 24 is capable of absorbing brake fluid delivered from the second pressure chamber 15b of the master cylinder 10.
[0021] A first return spring 23a with a high spring constant and a second return spring 23b with a small spring constant are provided in series between the piston 22 and the side end of the cylinder 21. This allows the pedal reaction force to increase slowly at the beginning of depression of the brake pedal BP and to increase rapidly at the later stage of depression. This provides the same pedal feeling as an existing master cylinder.
[0022] A first hydraulic pressure sensor Pm is disposed on the hydraulic line connecting the output port 19a of the master cylinder 10 and the normally open solenoid valve 61a, and a second hydraulic pressure sensor Pp is disposed on the hydraulic line connecting the normally open solenoid valve 61b and the connection port 63b. The first hydraulic pressure sensor Pm measures the hydraulic pressure on the master cylinder 10 side of the normally open solenoid valve 61a, which is closed during normal operation, and the second hydraulic pressure sensor Pp measures the hydraulic pressure on the connection port 63b side (hydraulic pressure control unit U3 side) of the normally open solenoid valve 61b, which is closed during normal operation. The output values of these sensors are output to the control device 100.
[0023] The motor cylinder device U2 includes an actuator mechanism 40 including an electric motor 42 and a cylinder mechanism 30 operated by the actuator mechanism 40.
[0024] The actuator mechanism 40 has an actuator housing 41, which accommodates a ball screw mechanism 43 including a screw shaft 43a and a nut 43b, and a reduction gear train 44 that transmits the rotational motion of the electric motor 42 to the nut 43b. The screw shaft 43a is connected to a first slave piston 35a (described later). The electric motor 42 is a brushless DC motor (three-phase motor).
[0025] The cylinder mechanism 30 includes a cylinder body 31 and a second reservoir 66 attached to the cylinder body 31. The second reservoir 66 is connected to the first reservoir 65 via a pipe 65a. A first slave piston 35a and a second slave piston 35b are slidably disposed within the cylinder body 31, spaced a predetermined distance apart along the axial direction of the cylinder body 31. The first slave piston 35a is disposed adjacent to the ball screw mechanism 43 and abuts against one end of the screw shaft 43a, allowing it to displace integrally with the screw shaft 43a along the longitudinal direction of the cylinder body 31. The second slave piston 35b is disposed farther from the ball screw mechanism 43 than the first slave piston 35a.
[0026] A pair of slave piston packings 39a, 39b are attached to the outer peripheral surfaces of the first slave piston 35a and the second slave piston 35b, respectively, spaced apart in the axial direction, and the diameters of the first slave piston 35a and the second slave piston 35b are reduced to form a first back chamber 37a and a second back chamber 37b between the pair of slave piston packings 39a, 39b, respectively. The first back chamber 37a and the second back chamber 37b are connected to the second reservoir 66 via reservoir ports 33a, 33b, respectively.
[0027] A first hydraulic pressure chamber 36a is formed between the first slave piston 35a and the second slave piston 35b, and a second hydraulic pressure chamber 36b is formed between the second slave piston 35b and a side end of the cylinder body 31. The cylinder body 31 also has output ports 32a, 32b corresponding to and communicating with the first hydraulic pressure chamber 36a and the second hydraulic pressure chamber 36b. These output ports 32a, 32b are connected to connection ports 63a, 63b of the input device U1 and input ports 68a, 68b of the hydraulic control unit U3, respectively. When the screw shaft 43a moves toward the first slave piston 35a due to operation of the electric motor 42, the first hydraulic pressure chamber 36a and the second hydraulic pressure chamber 36b generate brake hydraulic pressure, which is supplied to the hydraulic control unit U3 via the output ports 32a, 32b.
[0028] A spring 34a is provided between the first slave piston 35a and the second slave piston 35b, and a spring 34b is provided between the second slave piston 35b and the side end of the cylinder body 31. This allows the first hydraulic chamber 36a and the second hydraulic chamber 36b to be returned to appropriate volumes when the screw shaft 43a moves in the direction opposite to the first slave piston 35a due to operation of the electric motor 42.
[0029] A restriction link 38a is provided between the first slave piston 35a and the second slave piston 35b, restricting the maximum stroke (maximum displacement distance) and minimum stroke (minimum displacement distance) of the first slave piston 35a and the second slave piston 35b. The second slave piston 35b is provided with a stopper pin 38b that restricts the sliding range of the second slave piston 35b and prevents it from over-returning toward the first slave piston 35a.
[0030] The hydraulic control unit U3 includes known inlet valves, outlet valves, suction valves, pressure regulator valves, reservoirs, pumps, and the like. In normal operation, the solenoid valves of the hydraulic control unit U3 are not energized, and brake fluid pressure introduced through the input port 68a is directly applied to each wheel cylinder H via the pressure regulator valve and inlet valve. To reduce excess brake fluid pressure in a wheel cylinder H for antilock brake control, the corresponding inlet valve is closed and the outlet valve is opened to allow brake fluid to flow to the reservoir and drain the brake fluid from the wheel cylinder H. To pressurize the wheel cylinder H without the driver operating the brake pedal BP, the suction valve is opened and the pump is driven, actively supplying brake fluid to the wheel cylinder H using the pump's pressure. Furthermore, the degree of pressure in the wheel cylinder H can be adjusted by passing an appropriate current through the pressure regulator valve.
[0031] 3 , the brake system 1 further includes an external ECU 200, a battery 210, a current sensor 220, and a temperature sensor 230. The external ECU 200 is provided at an appropriate location on the vehicle CR, and predicts a collision of the vehicle CR based on information from a camera that captures images of the outside of the vehicle, for example, and, if there is a risk of a collision, generates an external braking request for executing automatic braking and outputs the request to the control device 100.
[0032] The battery 210 is a supply source of current to be passed through the electric motor 42. The current sensor 220 is a sensor that detects the first phase current, second phase current, and third phase current that flow through the electric motor 42. The temperature sensor 230 is a sensor that detects the temperature of each phase of the electric motor 42.
[0033] The control device 100 includes a braking request generation unit 110 , a command value generation unit 120 , a motor control unit 130 , and an inverter 140 .
[0034] The braking request creation unit 110 has a function of outputting a braking request to the command value creation unit 120. The braking request creation unit 110 determines the braking request based on an external braking request output from the external ECU 200 and the stroke amount output from the brake pedal stroke sensor 96.
[0035] The command value creation unit 120 has a function of creating a motor command value for operating the electric motor 42. Specifically, the command value creation unit 120 has a function of generating a motor position command according to a braking request and a heat generation suppression motor position command for suppressing heat generation of the electric motor 42. When the electric motor 42 is not locked, the command value creation unit 120 outputs the motor position command to the motor control unit 130 as a motor command value. When the electric motor 42 is locked, the command value creation unit 120 outputs a heat generation suppression motor position command to the motor control unit 130 as a motor command value. Here, when the electric motor 42 is locked, it means that the rotor of the electric motor 42 is stopped while current is flowing through it.
[0036] The command value creation unit 120 functions as an electrical angle detection unit that detects the electrical angle of the electric motor 42 via the position sensor 97. The command value creation unit 120 functions as a phase current detection unit that detects each phase current flowing through the electric motor 42 via a current sensor 220. In this embodiment, the U-phase current flowing through the U-phase of the electric motor 42 corresponds to the first phase current, the V-phase current flowing through the V-phase corresponds to the second phase current, and the W-phase current flowing through the W-phase corresponds to the third phase current.
[0037] The command value creation unit 120 acquires the coil temperature of each phase of the electric motor 42 from the temperature sensor 230. The command value creation unit 120 acquires the hydraulic pressure generated in the cylinder mechanism 30 from the second hydraulic pressure sensor Pp. Details of the command value creation unit 120 will be described later.
[0038] The motor control unit 130 has a function of operating the electric motor 42 based on the motor command value. Specifically, the motor control unit 130 generates a voltage duty value for driving the switching elements inside the inverter 140 by PWM based on the motor position command, and outputs the voltage duty value to the inverter 140. The voltage duty value is fed back to the command value creation unit 120.
[0039] The inverter 140 is connected to the battery 210 and the electric motor 42. The inverter 140 uses the battery 210 as a current supply source and drives the switching elements in accordance with the voltage duty value to pass current through the UVW phases of the electric motor 42, causing the electric motor 42 to rotate.
[0040] As shown in FIG. 4, command value creation unit 120 includes hydraulic pressure command calculation unit 120A, heat generation suppression determination unit 120B, motor position command calculation unit 120C, hold time calculation unit 120D, reference motor position calculation unit 120E, locking electrical angle calculation unit 120F, torque upper limit arrival determination unit 120G, electrical angle calculation unit 120H, heat generation suppression motor position command calculation unit 120I, and motor position command switching unit 120J.
[0041] The hydraulic pressure command calculation unit 120A converts the braking request from the braking request creation unit 110 into a hydraulic pressure command. The hydraulic pressure command calculation unit 120A outputs the hydraulic pressure command to the heat generation suppression determination unit 120B and the motor position command calculation unit 120C.
[0042] The heat generation suppression determination unit 120B has a function of determining whether or not it is necessary to suppress heat generation from the electric motor 42, based on whether the rotor of the electric motor 42 is stopped while current is flowing. In this embodiment, the heat generation suppression determination unit 120B determines that it is necessary to suppress heat generation from the electric motor 42, when the time during which the absolute value of any of the phase currents acquired from the current sensor 220 is greater than a predetermined current value serving as a second threshold exceeds a predetermined time.
[0043] When it is determined that heat generation from the electric motor 42 needs to be suppressed, the heat generation suppression determination unit 120B turns on (raises) a heat generation suppression flag for suppressing heat generation from the electric motor 42, switching elements, etc. After the heat generation suppression determination unit 120B turns on the heat generation suppression flag, if the current hydraulic pressure command value is different from the previous hydraulic pressure command value, the heat generation suppression determination unit 120B turns off (lowers) the heat generation suppression flag. The heat generation suppression determination unit 120B outputs the heat generation suppression flag to the heat generation suppression motor position command calculation unit 120I, the reference motor position calculation unit 120E, the locked electrical angle calculation unit 120F, the electrical angle calculation unit 120H, and the torque upper limit reaching determination unit 120G.
[0044] Motor position command calculation unit 120C converts the hydraulic pressure command into a motor position command. Here, the motor position command is a command for positioning screw shaft 43a of actuator mechanism 40 at a position corresponding to the hydraulic pressure command. Motor position command calculation unit 120C outputs the motor position command to heat generation suppression motor position command calculation unit 120I, reference motor position calculation unit 120E, and motor position command switching unit 120J.
[0045] The hold time calculation unit 120D has a function of calculating, for each phase, a hold time for holding the phase current at 0 A. Here, when the heat generation suppression flag is ON, the heat generation suppression motor position command calculation unit 120I, which will be described later, calculates a command for sequentially holding the current of each phase at 0 A, thereby suppressing heat generation of the electric motor 42, etc. The hold time calculation unit 120D outputs the hold time for each phase to the heat generation suppression motor position command calculation unit 120I.
[0046] Based on the heat generation suppression flag acquired from heat generation suppression determination unit 120B and the motor position command acquired from motor position command calculation unit 120C, reference motor position calculation unit 120E calculates, as a reference motor position, the motor position command at the time when it is determined that heat generation from electric motor 42 needs to be suppressed. Reference motor position calculation unit 120E outputs the reference motor position to heat generation suppression motor position command calculation unit 120I.
[0047] The locking electrical angle calculation unit 120F calculates, as the locking electrical angle, the electrical angle at which the heat generation suppression determination unit 120B determines that heat generation needs to be suppressed, based on the heat generation suppression flag obtained from the heat generation suppression determination unit 120B and the electrical angle of the electric motor 42 obtained from the position sensor 97. The locking electrical angle calculation unit 120F outputs the locking electrical angle to the heat generation suppression motor position command calculation unit 120I and the electrical angle calculation unit 120H.
[0048] The upper torque limit reach determination unit 120G determines whether the torque of the electric motor 42 has reached its upper limit based on the heat generation suppression flag acquired from the heat generation suppression determination unit 120B and the voltage duty value fed back from the motor control unit 130. Specifically, if the conditions that the heat generation suppression flag is ON and the previous value of the voltage duty value is equal to or greater than a predetermined duty value are satisfied, the upper torque limit reach determination unit 120G determines that the torque has reached its upper limit and turns the upper torque limit reach flag ON. Furthermore, if the heat generation suppression flag is OFF, the upper torque limit reach determination unit 120G turns the upper torque limit reach flag OFF. The upper torque limit reach determination unit 120G outputs the upper torque limit reach flag to the electrical angle calculation unit 120H.
[0049] Based on the heat generation suppression flag acquired from the heat generation suppression determination unit 120B, the locking state electrical angle acquired from the locking state electrical angle calculation unit 120F, and the upper torque limit reach flag acquired from the upper torque limit reach determination unit 120G, the electrical angle calculation unit 120H calculates the U-phase electrical angle, the V-phase electrical angle, and the W-phase electrical angle for setting the phase current of the corresponding phase to 0 A. In the present embodiment, the U-phase electrical angle corresponds to the first electrical angle, the V-phase electrical angle corresponds to the second electrical angle, and the W-phase electrical angle corresponds to the third electrical angle.
[0050] The U-phase electrical angle is the electrical angle at which the U-phase current is 0 A. The V-phase electrical angle is the electrical angle at which the V-phase current is 0 A. The W-phase electrical angle is the electrical angle at which the W-phase current is 0 A.
[0051] When the upper torque limit arrival flag is OFF, the electrical angle calculation unit 120H selects the U-phase electrical angle closest to the locking electrical angle from among the multiple U-phase electrical angles. When the upper torque limit arrival flag is OFF, the electrical angle calculation unit 120H selects the V-phase electrical angle closest to the locking electrical angle from among the multiple V-phase electrical angles. When the upper torque limit arrival flag is OFF, the electrical angle calculation unit 120H selects the W-phase electrical angle closest to the locking electrical angle from among the multiple W-phase electrical angles.
[0052] 5A, when the locked electrical angle is 165°, of the electrical angles 120°, 300°, and so on at which the U-phase current becomes 0 A, the 120° closest to 165° is set as the U-phase electrical angle. Similarly, of the electrical angles 0°, 180°, 360°, and so on at which the V-phase current becomes 0 A, the 180° closest to 165° is set as the V-phase electrical angle, and of the electrical angles 60°, 240°, and so on at which the W-phase current becomes 0 A, the 240° closest to 165° is set as the W-phase electrical angle.
[0053] When the upper torque limit reach flag is ON, the electrical angle calculation unit 120H selects, from among the multiple U-phase electrical angles, a U-phase electrical angle that is smaller than and closest to the locking electrical angle. By setting the U-phase electrical angle to be smaller than the locking electrical angle in this manner, it is possible to rotate the rotor of the electric motor 42 in a direction that reduces torque. Note that the method for determining the V-phase electrical angle and the W-phase electrical angle when the upper torque limit reach flag is ON is the same as the method for determining the U-phase electrical angle, and therefore a description thereof will be omitted.
[0054] 5A, when the locked electrical angle is 165°, the U-phase electrical angle is set to 120°, which is smaller than and closest to 165°, from among electrical angles 120°, 300°, etc., at which the U-phase current becomes 0 A. Similarly, the V-phase electrical angle is set to 0°, which is smaller than and closest to 165°, from among electrical angles 0°, 180°, 360°, etc., at which the V-phase current becomes 0 A. The W-phase electrical angle is set to 60°, which is smaller than and closest to 165°, from among electrical angles 60°, 240°, etc., at which the W-phase current becomes 0 A.
[0055] Returning to FIG. 4 , after calculating the U-phase electrical angle, V-phase electrical angle, and W-phase electrical angle (hereinafter also referred to as the "heat generation suppression electrical angle of each phase"), the electrical angle calculation unit 120H outputs the heat generation suppression electrical angle of each phase to the heat generation suppression motor position command calculation unit 120I.
[0056] The heat generation suppression motor position command calculation unit 120I calculates a heat generation suppression motor position command for suppressing heat generation of the electric motor 42, etc., based on the hold time for each phase obtained from the hold time calculation unit 120D, the heat generation suppression flag obtained from the heat generation suppression determination unit 120B, the motor position command obtained from the motor position command calculation unit 120C, the reference motor position obtained from the reference motor position calculation unit 120E, the locking electrical angle obtained from the locking electrical angle calculation unit 120F, and the heat generation suppression electrical angle for each phase obtained from the electrical angle calculation unit 120H. The method for calculating the heat generation suppression motor position command will be described later. The heat generation suppression motor position command calculation unit 120I outputs the heat generation suppression motor position command to the motor position command switching unit 120J.
[0057] Motor position command switching unit 120J outputs either the heat generation suppression motor position command acquired from heat generation suppression motor position command calculation unit 120I or the motor position command acquired from motor position command calculation unit 120C as the motor command value to motor control unit 130. In detail, when the heat generation suppression flag is OFF, motor position command switching unit 120J selects the motor position command as the motor command value, and when the heat generation suppression flag is ON, selects the heat generation suppression motor position command as the motor command value.
[0058] Next, the heat generation suppression control for suppressing heat generation of the electric motor 42 when the electric motor 42 is locked will be described in detail. The heat generation suppression determination unit 120B repeatedly executes the heat generation suppression determination process shown in Fig. 6 to set a heat generation suppression flag indicating whether heat generation suppression control is necessary. In the heat generation suppression determination process, the heat generation suppression determination unit 120B first determines whether the previous value of the heat generation suppression flag is OFF (S1), thereby determining whether heat generation suppression control is not being executed.
[0059] If it is determined in step S1 that the previous value of the heat generation suppression flag is OFF (Yes), the heat generation suppression determination unit 120B determines whether the absolute value of the U-phase current is greater than a predetermined current value (S2). Here, it is desirable to set the predetermined current value to a current value at which the heat generation energy during current flow is greater than the heat dissipation energy.
[0060] If it is determined in step S2 that the absolute value of the U-phase current is greater than the predetermined current value (Yes), the heat generation suppression determination unit 120B increments a U-phase timer that indicates the time during which a current greater than the predetermined current value flows through the U-phase (S3).If it is determined in step S2 that the absolute value of the U-phase current is not greater than the predetermined current value (No), the heat generation suppression determination unit 120B resets the U-phase timer to 0 (S4).
[0061] After step S3 or S4, the heat generation suppression determination unit 120B determines whether the absolute value of the V-phase current is greater than a predetermined current value (S5). If it is determined in step S5 that the absolute value of the V-phase current is greater than the predetermined current value (Yes), the heat generation suppression determination unit 120B increments a V-phase timer, which indicates the time during which a current greater than the predetermined current value flows through the V-phase (S6). If it is determined in step S5 that the absolute value of the V-phase current is not greater than the predetermined current value (No), the heat generation suppression determination unit 120B resets the V-phase timer to 0 (S7).
[0062] After step S6 or S7, the heat generation suppression determination unit 120B determines whether the absolute value of the W-phase current is greater than a predetermined current value (S8). If it is determined in step S8 that the absolute value of the W-phase current is greater than the predetermined current value (Yes), the heat generation suppression determination unit 120B increments a W-phase timer, which indicates the time during which a current greater than the predetermined current value flows through the W phase (S9). If it is determined in step S8 that the absolute value of the W-phase current is not greater than the predetermined current value (No), the heat generation suppression determination unit 120B resets the W-phase timer to 0 (S10).
[0063] After step S9 or step S10, the heat generation suppression determination unit 120B determines whether any of the U-phase timer, V-phase timer, and W-phase timer has exceeded a predetermined time (S11). Here, the predetermined time can be set arbitrarily, for example, to a short time when it is desired to shorten the continuous current flow time of a large current and thereby enhance the heat generation suppression effect.
[0064] If it is determined in step S11 that any of the timers has exceeded the predetermined time (Yes), the heat generation suppression determination unit 120B sets the heat generation suppression flag to ON (S12) and ends this process. If it is determined in step S11 that none of the timers has exceeded the predetermined time (No), the heat generation suppression determination unit 120B sets the heat generation suppression flag to OFF (S13) and ends this process.
[0065] If it is determined in step S1 that the previous value of the heat generation suppression flag is not OFF (No), the heat generation suppression determination unit 120B determines whether the current value of the hydraulic pressure command is the same as the previous value (S14). If it is determined in step S14 that the current value of the hydraulic pressure command is the same as the previous value (Yes), the heat generation suppression determination unit 120B resets the timers for each phase to 0 (S15), maintains the current value of the heat generation suppression flag at the previous value, i.e., leaves it ON (S16), and ends this process. If it is determined in step S14 that the current value of the hydraulic pressure command is not the same as the previous value (No), the heat generation suppression determination unit 120B resets the timers for each phase to 0 (S17), sets the heat generation suppression flag to OFF (S18), and ends this process.
[0066] In order to calculate the locking electrical angle, the locking electrical angle calculation unit 120F repeatedly executes the locking electrical angle calculation process shown in Fig. 7. In the locking electrical angle calculation process, the locking electrical angle calculation unit 120F first determines whether the heat generation suppression flag is ON in order to determine whether heat generation suppression control is being executed (S31).
[0067] If it is determined in step S31 that the heat generation inhibition flag is ON (Yes), the locking-state electrical angle calculation unit 120F determines whether the previous value of the heat generation inhibition flag is OFF (S32). If it is determined in step S32 that the previous value of the heat generation inhibition flag is OFF (Yes), the locking-state electrical angle calculation unit 120F sets the current electrical angle as the locking-state electrical angle (S33), and ends this process.
[0068] If it is determined in step S32 that the previous value of the heat generation suppression flag is not OFF (No), the locking-state electrical angle calculation unit 120F maintains the current value of the locking-state electrical angle at the previous value (S34) and ends this process.If it is determined in step S31 that the heat generation suppression flag is not ON (No), the locking-state electrical angle calculation unit 120F sets the locking-state electrical angle to 0 (S35) and ends this process.
[0069] The upper torque limit reaching determination unit 120G repeatedly executes the upper torque limit reaching determination process shown in Fig. 8 in order to set an upper torque limit reaching flag indicating whether the torque of the electric motor 42 has reached its upper limit. In the upper torque limit reaching determination process, the upper torque limit reaching determination unit 120G first determines whether the heat generation suppression flag is ON in order to determine whether heat generation suppression control is being executed (S51).
[0070] If it is determined in step S51 that the heat generation suppression flag is ON (Yes), the upper torque limit reach determination unit 120G determines whether the previous value of the upper torque limit reach flag is OFF (S52).If it is determined in step S52 that the previous value of the upper torque limit reach flag is OFF (Yes), the upper torque limit reach determination unit 120G determines whether the previous value of the voltage duty value output from the motor control unit 130 is equal to or greater than a predetermined duty value (S53) in order to determine whether the motor control unit 130 is attempting to generate maximum torque.
[0071] The predetermined duty value is preferably set to a voltage duty value of 100% that generates maximum torque for the electric motor 42. However, to prevent mechanical damage, the predetermined duty value may be set to a value smaller than 100%.
[0072] If it is determined in step S53 that the previous value of the voltage duty value is equal to or greater than the predetermined duty value (Yes), the torque upper limit reach determination unit 120G turns on an upper torque limit reach flag indicating that the torque has reached the upper limit (S54), and ends this process. If it is determined in step S52 or step S53 that it is No, the torque upper limit reach determination unit 120G maintains the current value of the upper torque limit reach flag at the previous value (S55), and ends this process.
[0073] If it is determined in step S51 that the heat generation suppression flag is not ON (No), the torque upper limit reach determination unit 120G turns the torque upper limit reach flag OFF (S56) and terminates this process, since there is no need to calculate the heat generation suppression electrical angle using the torque upper limit reach flag.
[0074] Steps S52 and S55 are processes for preventing the upper torque limit reach flag from fluctuating. When the motor rotation position is varied by heat generation suppression control, the voltage duty value also fluctuates, which may cause the upper torque limit reach flag to fluctuate between ON and OFF. By providing the processes of steps S52 and S55, once the upper torque limit reach flag is set to ON, it is possible to keep the upper torque limit reach flag ON until the heat generation suppression flag is set to OFF, thereby preventing the upper torque limit reach flag from fluctuating.
[0075] 9 to calculate the heat generation suppression electrical angle for each phase to be used when heat generation suppression control is being executed. In the heat generation suppression electrical angle calculation process, the electrical angle calculation unit 120H first determines whether the heat generation suppression flag is ON (S71) to determine whether heat generation suppression control is being executed.
[0076] If it is determined in step S71 that the heat generation suppression flag is ON (Yes), the electrical angle calculation unit 120H calculates, for each phase, electrical angle differences θu.diff, θv.diff, and θw.diff from the locked electrical angle to the heat generation suppression electrical angle at which the phase current becomes 0 A (S72).
[0077] Here, the current of each phase is expressed by the following formula: Iu = Ia sin(θ + α) Iv = Ia sin(θ + α - 120°) Iw = Ia sin(θ + α + 120°) Iu: U-phase current, Iv: V-phase current, Iw: W-phase current, Ia: current amplitude, θ + α: current phase of U-phase current at electrical angle θ
[0078] The heat generation suppression electrical angle at which the phase current becomes 0 A is as follows, depending on the phase: θu = -α, 180° - α, 360° - α θv = -α + 120°, -α + 300°, -α + 480° θw = -α - 120°, -α + 60°, -α + 240° θu: electrical angle at which the U-phase current becomes 0 A, θv: electrical angle at which the V-phase current becomes 0 A, θw: electrical angle at which the W-phase current becomes 0 A
[0079] If the locked electrical angle is θl, the electrical angle differences θu.diff, θv.diff, and θw.diff for each phase are as follows: θu.diff = -α - θl, 180° - α - θl, 360° - α - θl θv.diff = -α + 120° - θl, -α + 300° - θl, -α + 480° - θl θw.diff = -α - 120° - θl, -α + 60° - θl, -α + 240° - θl
[0080] After step S72, the electrical angle calculation unit 120H determines whether the upper torque limit reach flag is OFF (S73) in order to switch the calculation method of the heat generation suppression electrical angle depending on whether the torque has reached the upper limit. If it is determined in step S73 that the upper torque limit reach flag is OFF (Yes), the electrical angle calculation unit 120H selects, for each phase, a minimum electrical angle difference value whose absolute value is smallest from among the multiple electrical angle differences corresponding to a predetermined phase (S74).
[0081] If it is determined in step S73 that the torque upper limit reach flag is not OFF (No), the electrical angle calculation unit 120H selects, for each phase, the electrical angle difference at which the rotor rotates in the direction that reduces the torque and whose absolute value is the smallest, as the minimum electrical angle difference to be used for heat generation suppression control (S75).
[0082] After step S74 or step S75, the electrical angle calculation unit 120H calculates the heat generation suppression electrical angle for each phase by adding the minimum electrical angle difference to the locked electrical angle (S76), and then ends this process. If it is determined in step S71 that the heat generation suppression flag is not ON (No), the electrical angle calculation unit 120H sets all of the heat generation suppression electrical angles for the three phases to 0 (S77) because calculation of the heat generation suppression electrical angle is not necessary, and then ends this process.
[0083] In order to calculate the motor position command when the heat generation suppression flag is set as the reference motor position, reference motor position calculation unit 120E repeatedly executes the reference motor position calculation process shown in Fig. 10. In the reference motor position calculation process, reference motor position calculation unit 120E first determines whether the previous value of the heat generation suppression flag is ON (S91) in order to determine the timing to latch the reference motor position.
[0084] If it is determined in step S91 that the previous value of the heat generation suppression flag is ON (Yes), reference motor position calculation unit 120E latches the reference motor position, holds the reference motor position at the previous value (S92), and ends this process. If it is determined in step S91 that the previous value of the heat generation suppression flag is not ON (No), the reference motor position is updated with the motor position command at the time the heat generation suppression flag was set, and therefore the reference motor position is always updated with the motor position command (S93), and ends this process.
[0085] 11 to calculate, for each phase, the hold time for which the electrical angle is held at the heat generation suppression electrical angle. In the hold time calculation process, the hold time calculation unit 120D first calculates a maximum temperature Tmax and a minimum temperature Tmin from among the coil temperatures Tu, Tv, and Tw of each phase of the electric motor 42 acquired from the temperature sensor 230 (S111).
[0086] After step S111, the holding time calculation unit 120D calculates the ratio T.rate of the maximum temperature Tmax to the minimum temperature Tmin according to the following formula (S112): T.rate=Tmin / Tmax
[0087] After step S112, the hold time calculation unit 120D calculates the hold times tu, tv, and tw for each phase (S113), and then ends this process. Specifically, in step S113, the hold time calculation unit 120D calculates the hold time for a phase for which heat generation suppression is less necessary, i.e., the phase for which the coil temperature is lowest, by multiplying the reference hold time t.base by the temperature ratio T.rate. Furthermore, the hold times for the two phases other than the phase for which the coil temperature is lowest are calculated using the reference hold time t.base as is. As an example, the formulas for calculating the hold times tu, tv, and tw for each phase when the coil temperature Tu of the U phase is lowest are shown below: tu = t.base × T.rate tv = t.base tw = t.base
[0088] The reference hold time (t.base) is the time for maintaining the electrical angle when the temperatures of the three phases are uniform. It is set so that the temperature of the phase with a current of 0 A drops sufficiently and the temperature rise of the other energized phases (two phases) does not cause the temperature of the motor coil or switching elements to exceed the rated temperature. The temperature ratio (T.rate) is a correction coefficient for efficiently suppressing heat generation by shortening the hold time of the low-temperature phase to relatively lengthen the hold time of the high-temperature phase. By providing a hold time, the number of motor fluctuations during heat generation suppression control is reduced, suppressing noise, vibration, and hydraulic pressure fluctuations.
[0089] The heat generation suppression motor position command calculation unit 120I repeatedly executes the heat generation suppression motor position command calculation process shown in Fig. 12 to calculate a motor position command for sequentially maintaining the electrical angle at the heat generation suppression electrical angle of each phase. In the heat generation suppression motor position command calculation process, the heat generation suppression motor position command calculation unit 120I first determines whether the heat generation suppression flag is ON (S131) to determine whether heat generation suppression control is in progress.
[0090] If it is determined in step S131 that the heat generation suppression flag is ON (Yes), the heat generation suppression motor position command calculation unit 120I determines whether the previous value of the heat generation suppression flag is OFF or whether the elapsed time since the heat generation suppression motor position command equivalent to the heat generation suppression electrical angle (since the electrical angle became the heat generation suppression electrical angle) is equal to or greater than the retention time, in order to determine whether an initial target electrical angle needs to be set or the heat generation suppression electrical angle needs to be switched (S132).
[0091] If the determination in step S132 is Yes, the heat generation suppression motor position command calculator 120I sets an initial target electrical angle or switches the heat generation suppression electrical angle (S133). Specifically, if the determination in step S132 is Yes that the previous value of the heat generation suppression flag is OFF, that is, when the processing of step S133 is performed for the first time since the heat generation suppression flag was set to ON, the heat generation suppression motor position command calculator 120I sets, as the initial target electrical angle, the electrical angle that has the smallest difference from the locked electrical angle from among the U-phase electrical angle, V-phase electrical angle, and W-phase electrical angle, which are the heat generation suppression electrical angles.
[0092] If it is determined in step S132 that the elapsed time is equal to or greater than the hold time (Yes), that is, when performing the process of step S133 for the second time or later, the heat generation suppression motor position command calculator 120I repeatedly switches the target electrical angle, for example, in order of increasing difference from the locked electrical angle. For example, if the U-phase electrical angle is smaller than the V-phase electrical angle and the W-phase electrical angle is smaller than the W-phase electrical angle, the U-phase electrical angle is initially set to the target electrical angle in the process of step S133. Thereafter, each time the process of step S133 is performed, the target electrical angle is switched to the V-phase electrical angle, the W-phase electrical angle, the U-phase electrical angle, .... Note that when performing the process of step S133 for the second time or later, it is acceptable to first set the target electrical angle for either of the two phases other than the phase set as the initial target electrical angle.
[0093] After step S133, or if step S132 returns No, the heat generation suppression motor position command calculation unit 120I calculates a heat generation suppression motor position command based on the target electrical angle in order to move the rotor of the electric motor 42 so that the electrical angle becomes the target electrical angle (S134). More specifically, in step S134, the heat generation suppression motor position command calculation unit 120I converts the difference between the target electrical angle and the locked electrical angle into a motor position difference using the mechanical specifications of the actuator mechanism 40, and adds this to a reference motor position to calculate the heat generation suppression motor position command. When the heat generation suppression motor position command is changed in response to a change in the heat generation suppression electrical angle, the rate limiter is used to change the heat generation suppression motor position command at a constant gradient.
[0094] After step S134, the heat generation suppression motor position command calculation unit 120I determines whether the current value of the heat generation suppression motor position command is equal to the previous value in order to determine whether the electrical angle has reached the target electrical angle (S135). If it is determined in step S135 that the current value of the heat generation suppression motor position command is equal to the previous value (Yes), the heat generation suppression motor position command calculation unit 120I increments the elapsed time since the motor position reached the heat generation suppression electrical angle by one control cycle in order to hold the electrical angle at the heat generation suppression electrical angle for the hold time set for each phase (S136), and then ends this process.
[0095] If it is determined in step S135 that the current value of the heat generation suppression motor position command is not equal to the previous value (No), that is, if the electrical angle has not reached the target electrical angle, the heat generation suppression motor position command calculation unit 120I sets the elapsed time to 0 (S137) and terminates this processing.
[0096] If it is determined in step S131 that the heat generation suppression flag is not ON (No), calculation of the heat generation suppression motor position command is not necessary because heat generation suppression control is not being executed, but the heat generation suppression motor position command calculation unit 120I substitutes the motor position command based on the higher-level command for the heat generation suppression motor position command so that there will be no problem even if the heat generation suppression motor position command is output as the motor command value (S138). Because the electrical angle is not held at the heat generation suppression electrical angle when heat generation suppression control is not intervening, after step S138, the heat generation suppression motor position command calculation unit 120I sets the elapsed time to 0 (S139) and ends this process.
[0097] Motor position command switching unit 120J repeatedly executes the motor position command switching process shown in Fig. 13. In the motor position command switching process, motor position command switching unit 120J first determines whether a heat generation suppression flag is ON to determine whether heat generation suppression control is in progress (S151). If it is determined in step S151 that the heat generation suppression flag is ON (Yes), motor position command switching unit 120J substitutes a heat generation suppression motor position command for the motor command value to intervene in heat generation suppression control (S152), and then ends this process.
[0098] If it is determined in step S151 that the heat generation suppression flag is not ON (No), motor position command switching unit 120J substitutes the motor position command based on the higher-level command for the motor command value in order to disable the heat generation suppression control (S153), and then ends this process. Note that when heat generation suppression control is no longer necessary, the motor command value is changed in a stepwise manner because it must immediately follow the motor position command based on the higher-level command.
[0099] A specific example of the operation of the control device 100 will be described below. First, with reference to Fig. 14, the heat generation suppression control that is executed when the hydraulic pressure command becomes constant will be described.
[0100] 14, "U" indicates U-phase current, "V" indicates V-phase current, and "W" indicates W-phase current. In the electrical angle time chart, "U" indicates U-phase electrical angle, "V" indicates V-phase electrical angle, and "W" indicates W-phase electrical angle. In the motor command value time chart, "C1" indicates a motor position command, and "C2" indicates a heat generation suppression motor position command.
[0101] When the hydraulic pressure command becomes constant (time t0) to maintain constant brake hydraulic pressure, such as when stopping the vehicle on a slope, the rotor of the electric motor 42 stops, and the U-phase current, V-phase current, and W-phase current become constant (between times t0 and t1). If the time during which, for example, the W-phase current of the three phase currents is equal to or greater than a predetermined current value A1 exceeds a predetermined time, the heat generation suppression determination unit 120B repeats the process of step S8: Yes→S9, thereby determining Yes in step S11 and turning on the heat generation suppression flag (S12, time t1).
[0102] When the heat generation suppression flag is turned ON, lockup electrical angle calculation section 120F and reference motor position calculation section 120E output the electrical angle and motor position command at the time when the heat generation suppression flag was turned ON as the lockup electrical angle and reference motor position. In this example, the lockup electrical angle is set to 140° (see FIG. 5). Also, in this example, the torque does not reach the upper limit and the hydraulic pressure command is maintained, so the torque upper limit reach determination section 120G outputs the torque upper limit reach flag remaining OFF.
[0103] Next, in step S72, the electrical angle calculation unit 120H calculates, for each phase, an electrical angle difference for setting the phase current to 0 A. In this example, since the torque upper limit arrival flag is OFF, the electrical angle calculation unit 120H determines Yes in step S73, and then in step S74 calculates, for each phase, a minimum electrical angle difference value that minimizes the absolute value of the electrical angle difference.In step S76, the electrical angle calculation unit 120H calculates the heat generation suppression electrical angle for each phase by adding the minimum electrical angle difference value to the locking electrical angle for each phase.
[0104] In this example, as shown in FIG. 5A, the U-phase electrical angle is set to 120°, which is closest to the locking electrical angle of 140°. The V-phase electrical angle is set to 180°, which is closest to the locking electrical angle of 140°. The W-phase electrical angle is set to 60°, which is closest to the locking electrical angle of 140°. As described above, it is desirable to switch the heat generation suppression electrical angle in order of increasing difference from the locking electrical angle, but the order can be set as desired. In this example, the U-phase electrical angle, W-phase electrical angle, and V-phase electrical angle are switched in this order.
[0105] Next, the heat generation suppression motor position command calculation unit 120I determines Yes in steps S131 and S132 and executes steps S133 to S135. If it determines in step S132 that the previous value of the heat generation suppression flag is OFF, the heat generation suppression motor position command calculation unit 120I sets the U-phase electrical angle that minimizes the difference from the locked electrical angle as the initial target electrical angle in step S133, and calculates a heat generation suppression motor position command for changing the electrical angle to the U-phase electrical angle at a constant angular velocity in step S134. The heat generation suppression motor position command is substituted for a motor command value by the motor position command switching unit 120J, and this motor command value causes the electric motor 42 to rotate in a predetermined direction as shown in FIG. 5(b).
[0106] As the electric motor 42 rotates in response to the heat generation suppression motor position command, the electrical angle of the electric motor 42 changes toward the U-phase electrical angle, and the U-phase current changes toward 0 A (between times t1 and t2). When the electrical angle becomes the U-phase electrical angle (time t2), the heat generation suppression motor position command calculator 120I determines Yes in step S135, and increments the elapsed time since the electrical angle became the U-phase electrical angle (between times t2 and t3) in step S136. Between times t2 and t3, the electrical angle is maintained at the U-phase electrical angle, and the U-phase current is maintained at 0 A.
[0107] When the elapsed time becomes equal to or greater than the hold time tu (time t3), the heat generation suppression motor position command calculator 120I switches the target electrical angle from the U-phase electrical angle to the W-phase electrical angle (S132: Yes→S133). The hold time to be compared with the elapsed time is constantly calculated by the hold time calculator 120D.
[0108] After switching the target electrical angle to the W-phase electrical angle, the heat generation suppression motor position command calculator 120I calculates a heat generation suppression motor position command for changing the electrical angle to the W-phase electrical angle at a constant angular velocity (S134). As a result, the electric motor 42 rotates in a predetermined direction as shown in FIG. 5(c), and as shown in FIG. 14, the electrical angle changes toward the W-phase electrical angle and the W-phase current changes toward 0 A (between times t3 and t4).
[0109] The heat generation suppression motor position command calculation unit 120I calculates the heat generation suppression motor position command corresponding to the W-phase electrical angle in step S134, and then determines No in step S135 and sets the elapsed time to 0 (S137). When the electrical angle becomes the W-phase electrical angle (time t4), the heat generation suppression motor position command calculation unit 120I increments the elapsed time since the electrical angle became the W-phase electrical angle in step S136 (between times t4 and t5). Between times t4 and t5, the electrical angle is held at the W-phase electrical angle, and the W-phase current is held at 0 A.
[0110] When the elapsed time becomes equal to or greater than the hold time tw (time t5), the heat generation suppression motor position command calculator 120I switches the target electrical angle from the W-phase electrical angle to the V-phase electrical angle (S132: Yes→S133).
[0111] After switching the target electrical angle to the V-phase electrical angle, the heat generation suppression motor position command calculator 120I calculates a heat generation suppression motor position command for changing the electrical angle to the V-phase electrical angle at a constant angular velocity (S134). As a result, the electric motor 42 rotates in the direction opposite to the predetermined direction, as shown in FIG. 5(d), and as shown in FIG. 14, the electrical angle changes toward the V-phase electrical angle and the V-phase current changes toward 0 A (between times t5 and t6).
[0112] The heat generation suppression motor position command calculation unit 120I calculates the heat generation suppression motor position command corresponding to the V-phase electrical angle in step S134, and then determines No in step S135 and sets the elapsed time to 0 (S137). When the electrical angle becomes the V-phase electrical angle (time t6), the heat generation suppression motor position command calculation unit 120I increments the elapsed time since the electrical angle became the V-phase electrical angle in step S136 (between times t6 and t7). Between times t6 and t7, the electrical angle is held at the V-phase electrical angle, and the V-phase current is held at 0 A.
[0113] When the elapsed time becomes equal to or greater than the hold time tv (time t7), the heat generation suppression motor position command calculation unit 120I switches the target electrical angle from the V-phase electrical angle back to the U-phase electrical angle (S132: Yes → S133). When the hydraulic pressure command changes (time t8), the heat generation suppression determination unit 120B turns the heat generation suppression flag OFF (S18), and the motor position command switching unit 120J switches the motor command value to the motor position command (S153). This ends the heat generation suppression control.
[0114] 15, heat generation suppression control that is executed when the torque of the electric motor 42 reaches its upper limit and the motor mechanically locks will be described. When the hydraulic pressure command becomes constant and the torque reaches its upper limit at the same time, rotation of the electric motor 42 stops, and the U-phase current, V-phase current, and W-phase current become constant (between times t0' and t1').
[0115] Heat generation suppression determination unit 120B executes the processes of steps S1 to S10, and if it determines Yes in step S11, it turns on a heat generation suppression flag in step S12. When the heat generation suppression flag is turned on, locking electrical angle calculation unit 120F and reference motor position calculation unit 120E output the electrical angle and motor position command at the time the heat generation suppression flag was turned on as the locking electrical angle and reference motor position.
[0116] In this example, the locked electrical angle is also set to 140° (see FIG. 5). In this example, the torque reaches its upper limit when the hydraulic pressure command becomes constant, so the upper torque limit reach determination unit 120G turns on the upper torque limit reach flag when the heat generation suppression flag is turned on (time t1′).
[0117] Next, in step S72, the electrical angle calculation unit 120H calculates, for each phase, an electrical angle difference for setting the phase current to 0 A. In this example, since the torque upper limit reach flag is ON, the electrical angle calculation unit 120H determines No in step S73 and then, in step S75, selects, for each phase, from among the multiple electrical angle differences corresponding to a predetermined phase, an electrical angle difference that causes the rotor to rotate in a direction that reduces torque and has the smallest absolute value, as a minimum electrical angle difference to be used in heat generation suppression control.
[0118] In this example, as shown in FIG. 5A , torque decreases when the electrical angle is changed from 140° downwards in order of decreasing difference from the locking electrical angle. Therefore, in this example, the U-phase electrical angle is set to 120°, which is closest to the locking electrical angle of 140° but smaller than the locking electrical angle of 140°. The V-phase electrical angle is set to 0°, which is closest to the locking electrical angle of 140° but smaller than the locking electrical angle of 140°. The W-phase electrical angle is set to 60°, which is closest to the locking electrical angle of 140° but smaller than the locking electrical angle of 140°. Note that in this example, the heat generation suppression electrical angle is switched in order of decreasing difference from the locking electrical angle. That is, the electrical angles are switched in the order of the U-phase electrical angle, the W-phase electrical angle, and the V-phase electrical angle.
[0119] Next, the heat generation suppression motor position command calculation unit 120I sequentially calculates the heat generation suppression motor position commands corresponding to each phase in the same manner as described above. The heat generation suppression electrical angle for each phase is calculated so that the torque decreases from the locking electrical angle and in one direction (so that the torque is smaller than the torque at the locking electrical angle). Therefore, even if the heat generation suppression motor position command is switched for each phase, the rotation of the electric motor 42 always fluctuates within a torque range that is smaller than the torque at the locking electrical angle.
[0120] More specifically, between times t1' and t5', the electrical angle is held at the U-phase electrical angle, and then at the W-phase electrical angle, similar to the time period between t1 and t5 in the example of Fig. 14. After the heat generation suppression motor position command is switched to a command corresponding to the V-phase electrical angle at time t5', unlike the example of Fig. 14, the electrical angle gradually decreases toward the V-phase electrical angle and is held at the V-phase electrical angle (between times t6' and t7'). The processing thereafter until the end of heat generation suppression control is similar to the example of Fig. 14, and therefore description thereof will be omitted.
[0121] As described above, the present embodiment can achieve the following advantages. When the electric motor 42 is locked, the rotor of the electric motor 42 is rotated by changing the electrical angle of the electric motor 42 between the first electrical angle, the second electrical angle, and the third electrical angle. This suppresses heat generation in the motor coils and switching elements without reducing torque efficiency, and makes it possible to continuously maintain torque. Furthermore, the amount of positional fluctuation of the electric motor 42 can be minimized.
[0122] Furthermore, since the rotor of the electric motor 42 is rotated during heat generation suppression control, torque efficiency can be improved compared to when the rotor is not rotated.
[0123] Furthermore, because the electric motor 42 is rotated using an electrical angle, the amount of rotation of the electric motor 42 can be minimized. This makes it possible to suppress heat generation in the elements of the motor drive circuit and the motor coil without reducing motor torque. Also, it is possible to suppress heat generation in the elements of the motor drive circuit and the motor coil without reducing motor torque efficiency. Furthermore, it is possible to suppress heat generation in the elements of the motor drive circuit and the motor coil by minimizing fluctuations in motor position.
[0124] The process of maintaining the phase current at 0 A for the maintenance time is performed for each of the three phases, so that heat generation can be further suppressed.
[0125] By selecting the electrical angle of each phase that has the smallest difference from the locked electrical angle as the initial target electrical angle, the amount of rotor rotation can be minimized in the initial stage when the electric motor 42 is locked, thereby suppressing a decrease in the torque of the electric motor 42.
[0126] When the time during which the absolute value of any of the three phase currents exceeds a predetermined current value exceeds a predetermined time, it is determined that heat generation from the electric motor 42 needs to be suppressed. This makes it possible to detect the phase in which heat generation needs to be suppressed, thereby enabling efficient measures to prevent heat generation.
[0127] When the torque has reached the upper limit, the heat generation suppression electrical angle is set so as to rotate the rotor in a direction in which the torque decreases, so that the electrical angle can be reliably switched to the heat generation suppression electrical angle.
[0128] The above-described embodiment can be modified in various ways as exemplified below. In the following description, the same reference numerals are used to designate components having substantially the same structures as those in the above-described embodiment, and the description thereof will be omitted.
[0129] In the above embodiment, the heat generation suppression control involves repeatedly rotating, stopping, maintaining, rotating, and stopping the rotor of the electric motor. However, maintaining the electrical angle is not necessarily required. That is, when the heat generation suppression determination unit determines that heat generation of the electric motor needs to be suppressed, the rotor of the electric motor may be rotated by varying the electrical angle of the electric motor among a first electrical angle, a second electrical angle, and a third electrical angle. For example, as shown in FIG. 16 , the heat generation suppression motor position command may be calculated so that the electrical angle sinusoidally reciprocates between the maximum and minimum values of the heat generation suppression electrical angle, centered on the median of the three heat generation suppression electrical angles. This results in seamless motor position fluctuations and reduces the sense of discomfort.
[0130] Furthermore, in the heat generation suppression control, a predetermined electrical angle among the U-phase electrical angle, the V-phase electrical angle, and the W-phase electrical angle may be held, and the other electrical angles may not be held. In other words, when the heat generation suppression determination unit determines that heat generation of the electric motor needs to be suppressed, the electrical angle of the electric motor may be held at the first electrical angle, the second electrical angle, or the third electrical angle for a predetermined holding time.
[0131] The heat generation suppression determination unit may determine that heat generation by the electric motor 42 needs to be suppressed when it determines that at least one of a first condition that the rotation speed of the electric motor determined based on the motor command value is equal to or less than a predetermined rotation speed and a second condition that the torque of the electric motor determined based on the motor command value is equal to or greater than a predetermined torque is satisfied. Figure 17 shows an example in which the first condition is satisfied.
[0132] 17, between times t10 and t11, when the hydraulic pressure command becomes constant, the motor rotation speed determined based on the motor command value decreases. When the motor rotation speed becomes equal to or lower than a predetermined rotation speed (time t11), the heat generation suppression determination unit 120B turns on the heat generation suppression flag.
[0133] According to this configuration, by determining whether or not it is necessary to suppress heat generation from the electric motor 42 based on the motor command value, it is possible to determine whether or not it is necessary to suppress heat generation before any of the phase currents is maintained at a high current value equal to or greater than the predetermined current value A1, thereby enabling heat generation to be further suppressed.
[0134] The heat generation suppression determination unit may determine that heat generation from the electric motor needs to be suppressed when the amount of change per unit time in the electrical angle detected by the electrical angle detection unit is equal to or less than a third threshold value. With this configuration, by determining whether heat generation from the electric motor needs to be suppressed based on the electrical angle, it is possible to prevent accumulation of heat energy.
[0135] In the above embodiment, the first phase current is the U-phase current and the first electrical angle is the U-phase electrical angle, but the first phase current and the first electrical angle may be the phase current and electrical angle of a phase different from those in the above embodiment.Similarly, the second phase current, the second electrical angle, the third phase current, and the third electrical angle may be the phase current and electrical angle of a phase different from those in the above embodiment.
[0136] The first electrical angle is not limited to the electrical angle at which the first phase current is 0 A, but may be any electrical angle at which the first phase current is equal to or less than the first threshold. Similarly, the second electrical angle and the third electrical angle may be any electrical angle at which the corresponding phase current is equal to or less than the first threshold. Note that the closer the first threshold is to 0 A, the more heat generation can be suppressed. The first threshold is desirably set to a value such that the heat dissipation energy of a phase conducting with a current equal to the first threshold exceeds the heat generation energy of the same phase. In other words, the first threshold is set to a value such that the temperature of at least a phase conducting with a current equal to or less than the first threshold tends to decrease.
[0137] Furthermore, the first electrical angle, the second electrical angle, and the third electrical angle may be set to electrical angles that cause torque to increase from the locking electrical angle and in one direction (i.e., torque greater than the torque at the locking electrical angle) if the torque has not yet reached the upper torque limit. For example, in a vehicle having a brake system that converts the output torque of an electric motor into hydraulic pressure and then converts the hydraulic pressure into braking force, if the vehicle is to be held stationary on an uphill road using the brake system, setting any of the first electrical angle, second electrical angle, and third electrical angle to an electrical angle that causes torque to decrease from the locking electrical angle may cause the vehicle to roll over. Therefore, by calculating the first electrical angle, second electrical angle, and third electrical angle so that torque increases from the locking electrical angle and in one direction, it is possible to prevent the vehicle from rolling over.
[0138] The predetermined current value that serves as the threshold for the heat generation suppression determination process can be set in various ways. For example, the temperature change when current is continuously applied to each phase can be confirmed in advance, and the current value at which the temperature rise saturates at the allowable temperature can be determined, and this current value can be set as the predetermined current value. Note that, because the heat generation characteristics differ depending on the characteristics of the drive circuit elements and motor coils of each phase, different predetermined current values can be set for each phase. Furthermore, since the lower the ambient temperature of the current-carrying circuit, the greater the heat dissipation energy, the lower the ambient temperature of the current-carrying circuit. Therefore, the predetermined current value can be made variable, for example, by increasing it when the ambient temperature of the current-carrying circuit is low.
[0139] The determination processes of steps S2 to S11 may be integrated into a single determination process, with the hydraulic pressure required for a predetermined current value used as a threshold. Alternatively, the determination processes of steps S2 to S11 may be integrated to calculate the range of electrical angles within which the energized phase switches based on the current electrical angle, and determine whether the current electrical angle is within that electrical angle range for a predetermined period of time. In this way, by determining heat generation suppression based solely on the electrical angle (motor position), accumulation of heat-generating energy can be prevented. Furthermore, since there is no need to reference current, heat generation can be suppressed without an additional current sensor. The determination based on hydraulic pressure or electrical angle described above, which integrates steps S2 to S11, may be combined with the determination based on phase current performed in steps S2 to S11 using an AND condition.
[0140] For example, when the motor is speed-controlled and torque-controlled, the determination processes of steps S2 to S11 may be integrated to determine whether the motor command value is equal to or less than a predetermined rotation speed, equal to or greater than a predetermined torque, or both. By determining based on the motor command value, it is possible to determine in advance whether heat generation suppression is necessary. Therefore, when the motor is stopped, heat generation can be suppressed by always using two-phase current. The predetermined rotation speed is preferably set to a rotation speed at which the current conduction phase does not switch for a predetermined period of time. For example, if it is determined that heat generation suppression is necessary when it is determined that current continues to flow through the same phase for two seconds, the current conduction phase switches every 60 degrees, so 60 degrees / 2 seconds = 30 degrees / second is set as the predetermined rotation speed. The predetermined torque is set to a torque that is a predetermined amount less than the maximum torque that can be generated by the motor. For example, the predetermined torque is set to a value less than the upper torque limit by an amount equivalent to the amount of electrical angle (e.g., 90 degrees) that may be changed by heat generation suppression control before the motor locks due to reaching the upper torque limit.
[0141] Instead of the determination process of step S53, a process for determining whether the motor torque is equal to or greater than a predetermined torque may be provided. The motor torque may be estimated based on the current or the like, or may be obtained by a torque sensor or the like. However, since the maximum torque that can be output varies depending on the battery voltage, it is desirable to set the predetermined torque according to the battery voltage, taking into consideration sudden changes in the battery voltage, etc.
[0142] The reference holding time may be 0 [s]. In other words, the electrical angle may not be held and may be immediately changed to the next target electrical angle. The holding time may be calculated by calculating the ratios T.rate.u, T.rate.v, and T.rate.w of the temperature of each phase to the maximum temperature Tmax, and multiplying the reference holding time t.base by the temperature ratios T.rate.u, T.rate.v, and T.rate.w, as follows: T.rate.u = Tu / Tmax T.rate.v = Tv / Tmax T.rate.w = Tw / Tmax tu = t.base × T.rate.u tv = t.base × T.rate.v tw = t. The retention time does not necessarily need to be corrected by the temperature ratio, and the reference retention time may be used as the retention time. The temperature ratio for correcting the retention time may be multiplied by the reference retention time as a temperature ratio relative to the median or minimum value, so that the retention time of a phase with a higher temperature is longer.
[0143] The temperature referenced in step S111 is not limited to the coil temperature of the electric motor 42, as long as it is a value correlated with the temperature of an element or the like for which heat generation is to be suppressed. For example, the temperature of a switching element in the inverter may be referenced to shorten the holding time of a phase with a low switching element temperature.
[0144] The first electrical angle may be a V-phase electrical angle or a W-phase electrical angle, the second electrical angle may be a U-phase electrical angle or a W-phase electrical angle, and the third electrical angle may be a U-phase electrical angle or a V-phase electrical angle.
[0145] In the process of step S134, the heat generation suppression motor position command may be changed in steps.
[0146] Since the motor cylinder device U2 (hydraulic pressure generating device) of the above embodiment is configured to generate hydraulic pressure by converting motor rotation into piston movement in the actuator mechanism 40 (drive transmission section), it is desirable to set the mechanical specifications so that the following formula is satisfied when the allowable hydraulic pressure fluctuation is Pv [MPa] or less. By setting the specifications in this manner, hydraulic pressure fluctuations due to heat generation suppression control can be suppressed to within the allowable fluctuation: (M·k) / (3·Pn)≦Pv M: Rotation-to-linear conversion coefficient [mm] of the drive transmission section (coefficient for converting motor rotation amount into piston position fluctuation amount) k: Stiffness characteristic value [MPa / mm] Pn: Number of pole pairs [-] Pv: Allowable hydraulic pressure fluctuation [MPa]
[0147] The electrical angle calculation unit may calculate the first electrical angle, the second electrical angle, and the third electrical angle so that the difference from the electrical angle at which it is determined that heat generation by the electric motor needs to be suppressed is minimized.
[0148] The electrical angle calculation unit may calculate the first electrical angle, the second electrical angle, and the third electrical angle so that the torque of the electric motor is greater than the torque of the electric motor at the electrical angle when it is determined that heat generation from the electric motor needs to be suppressed. With this configuration, when the vehicle is stopped and held on an uphill road or the like, regardless of which of the first electrical angle, the second electrical angle, or the third electrical angle is set as the target electrical angle, the torque of the electric motor is greater than the torque corresponding to when the electric motor is locked (when it is determined that heat generation from the electric motor needs to be suppressed), thereby preventing the vehicle from rolling downhill.
[0149] The electrical angle calculation unit may calculate the first electrical angle, the second electrical angle, and the third electrical angle so that the torque of the electric motor is smaller than the torque of the electric motor at the electrical angle when it is determined that heat generation by the electric motor needs to be suppressed.
[0150] Furthermore, when the heat generation suppression determination unit determines that heat generation from the electric motor needs to be suppressed, the motor control device may hold the electrical angle of the electric motor at the first electrical angle, the second electrical angle, or the third electrical angle for a predetermined holding time.
[0151] Furthermore, when the heat generation suppression determination unit determines that it is necessary to suppress heat generation from the electric motor, the motor control device may sequentially perform a process for each of the three phases to hold the electrical angle of the electric motor at one of the first electrical angle, the second electrical angle, and the third electrical angle for a predetermined holding time.
[0152] Furthermore, when the heat generation suppression determination unit determines that heat generation of the electric motor needs to be suppressed, the motor control device may select from the first electrical angle, the second electrical angle, and the third electrical angle an electrical angle that has the smallest difference from the locked electrical angle, which is the electrical angle when the heat generation suppression determination unit determines that heat generation needs to be suppressed, as an initial target electrical angle, and operate the electric motor so that the electrical angle of the electric motor becomes the target electrical angle.
[0153] In addition, the heat generation suppression determination unit may determine that heat generation from the electric motor needs to be suppressed when the time during which the absolute value of any of the first phase current, second phase current, and third phase current is greater than a second threshold value exceeds a predetermined time.
[0154] The heat generation suppression determination unit may determine that heat generation by the electric motor needs to be suppressed when the amount of change per unit time of the electrical angle detected by the electrical angle detection unit is equal to or less than a third threshold value.
[0155] In addition, the heat generation suppression determination unit may determine that heat generation by the electric motor needs to be suppressed when it determines that at least one of the following conditions is satisfied: a first condition that the rotation speed of the electric motor determined based on the motor command value is equal to or less than a predetermined rotation speed; and a second condition that the torque of the electric motor determined based on the motor command value is equal to or greater than a predetermined torque.
[0156] The elements described in the above-described embodiment and modified examples may be implemented in any combination.
Claims
1. A motor control device comprising: a phase current detection unit that detects first, second, and third phase currents flowing through an electric motor; an electrical angle detection unit that detects the electrical angle of the electric motor; a command value creation unit that creates motor command values for operating the electric motor; a motor control unit that operates the electric motor based on the motor command values; a heat generation suppression determination unit that determines whether heat generation in the electric motor needs to be suppressed; and an electrical angle calculation unit that calculates a first electrical angle at which the first phase current is equal to or less than a first threshold, a second electrical angle at which the second phase current is equal to or less than the first threshold, and a third electrical angle at which the third phase current is equal to or less than the first threshold, wherein when the heat generation suppression determination unit determines that heat generation in the electric motor needs to be suppressed, the motor control device rotates a rotor of the electric motor by sequentially changing the electrical angle of the electric motor between the first electrical angle, the second electrical angle, and the third electrical angle.
2. The motor control device described in claim 1, characterized in that the electrical angle calculation unit calculates the first electrical angle, the second electrical angle, and the third electrical angle so as to minimize the difference from the electrical angle when it is determined that heat generation by the electric motor needs to be suppressed.
3. The motor control device described in claim 1, characterized in that the electrical angle calculation unit calculates the first electrical angle, the second electrical angle, and the third electrical angle so that the torque of the electric motor is greater than the torque of the electric motor at the electrical angle when it is determined that heat generation by the electric motor needs to be suppressed.
4. The motor control device described in claim 1, characterized in that the electrical angle calculation unit calculates the first electrical angle, the second electrical angle, and the third electrical angle so that the torque of the electric motor is smaller than the torque of the electric motor at the electrical angle when it is determined that heat generation by the electric motor needs to be suppressed.
5. A motor control device as described in claim 1, characterized in that when the heat generation suppression judgment unit judges that it is necessary to suppress heat generation of the electric motor, the electrical angle of the electric motor is maintained at the first electrical angle, the second electrical angle or the third electrical angle for a predetermined holding time.
6. A motor control device as described in claim 1, characterized in that when the heat generation suppression judgment unit determines that it is necessary to suppress heat generation from the electric motor, a process of holding the electrical angle of the electric motor at one of the first electrical angle, the second electrical angle, and the third electrical angle for a predetermined holding time is performed sequentially for each of the three phases.
7. A motor control device as described in claim 1, characterized in that when the heat generation suppression judgment unit judges that heat generation from the electric motor needs to be suppressed, the electric angle from among the first electrical angle, the second electrical angle, and the third electrical angle that has the smallest difference from the locked electrical angle, which is the electrical angle when the heat generation suppression judgment unit judges that heat generation needs to be suppressed, is set as an initial target electrical angle, and the electric motor is operated so that the electrical angle of the electric motor becomes the target electrical angle.
8. The motor control device described in claim 1, characterized in that the heat generation suppression determination unit determines that heat generation from the electric motor needs to be suppressed when the time during which the absolute value of any of the first phase current, the second phase current, and the third phase current is greater than a second threshold value exceeds a predetermined time.
9. The motor control device described in claim 1, characterized in that the heat generation suppression judgment unit judges that heat generation of the electric motor needs to be suppressed when the change per unit time of the electrical angle detected by the electrical angle detection unit is less than or equal to a third threshold value.
10. The motor control device described in claim 1, characterized in that the heat generation suppression judgment unit judges that heat generation by the electric motor needs to be suppressed when it judges that at least one of the following conditions is satisfied: a first condition that the rotation speed of the electric motor determined based on the motor command value is equal to or less than a predetermined rotation speed; and a second condition that the torque of the electric motor determined based on the motor command value is equal to or greater than a predetermined torque.