Motor control device, and steering control system
By coordinating the output voltage and current of the inverter in the motor control device, the control failure problem caused by the difference in back electromotive force of different winding groups is solved, and stable control of voltage and current is achieved, ensuring the normal operation of the motor and the coordination of torque.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- DENSO CORP
- Filing Date
- 2021-06-07
- Publication Date
- 2026-05-12
AI Technical Summary
In motor control devices, when the maximum output voltages of the two inverters are different or the back electromotive forces of the windings are different, there is a problem that the motor cannot be effectively controlled. This is especially true in the inverter with the lower maximum output voltage, where the voltage demand may exceed the intended maximum output voltage, leading to control failure.
Under the control of the control unit, the output voltage and current of the first and second inverters are adjusted. By coordinating current and voltage commands, the current and voltage are limited or reduced to ensure that the voltage does not exceed the maximum output voltage. Distributed winding and back EMF correction technology are used to coordinate the current and torque of each winding group.
It effectively suppresses situations where the voltage exceeds the maximum output voltage, ensuring normal motor control, avoiding unwanted current flow and deterioration of magnetic components, and achieving stability in torque and rotational speed.
Smart Images

Figure CN115461982B_ABST
Abstract
Description
[0001] Cross-references to related applications
[0002] This application is based on Japanese Application No. 2020-104409, filed on June 17, 2020, the contents of which are incorporated herein by reference. Technical Field
[0003] This disclosure relates to a motor control device for controlling a motor. Background Technology
[0004] Previously, there was a motor control device that controlled a motor having two winding groups, in which a power supply and an inverter were provided for each winding group (see Patent Document 1).
[0005] Patent Document 1: Japanese Patent Application Publication No. 2018-129996
[0006] However, in the motor control device described in Patent Document 1, if the maximum output voltages that the two inverters can output to each winding group are different, or if the back electromotive force of the two winding groups is different due to differences in the number of turns, there is a concern that the required voltage may become higher than the maximum output voltage in the system of the inverter with the lower maximum output voltage or the winding group with the higher voltage. In this case, there is a concern that the motor cannot be controlled as intended. Summary of the Invention
[0007] This disclosure was made to solve the above-mentioned problems, and its main purpose is to suppress the inability to control the motor as intended, even when the maximum output voltages that the two inverters can output to each winding group are different, or when the voltages of the two winding groups are different.
[0008] A first approach to solving the above-mentioned problem is a motor control device for controlling a motor having a first winding group and a second winding group, comprising:
[0009] The first inverter is connected to the first winding group and is powered by the first power supply unit;
[0010] The second inverter is connected to the aforementioned second winding group and is powered by the second power supply unit; and
[0011] The control unit controls the first inverter and the second inverter to reduce the voltage that the first inverter should output to the first winding group, i.e., the first output voltage, when the voltage output by the first inverter becomes higher than the first upper limit voltage set based on the first maximum output voltage. This is done so that the magnitudes of the currents flowing through the first winding group and the second winding group are different, or the output voltage of the second inverter is limited.
[0012] According to the above structure, the motor control device controls a motor having a first winding group and a second winding group. A first inverter is connected to the first winding group and is powered by a first power supply unit. A second inverter is connected to the second winding group and is powered by a second power supply unit.
[0013] Here, the maximum output voltage that the first inverter can output to the first winding group, i.e., the first maximum output voltage, may become lower than the maximum output voltage that the second inverter can output to the second winding group, i.e., the second maximum output voltage. In this case, even if the required output voltage of the second inverter is lower than the second maximum output voltage, there is a concern that the required output voltage of the first inverter may become higher than the first maximum output voltage, making it impossible to control the motor as intended. Furthermore, the first power supply and the second power supply can be independent power supplies or power supplies branched from a common power supply. Even if the first power supply and the second power supply are branched from a common power supply, the maximum output voltages that the first inverter and the second inverter can output may differ due to differences in wiring resistance, etc.
[0014] Furthermore, when the voltage output by the first inverter becomes higher than the first upper limit voltage set based on the first maximum output voltage, the control unit controls the first inverter and the second inverter to reduce the voltage that the first inverter should output to the first winding group, i.e., the first output voltage, so that the current flowing through the first winding group and the second winding group is different, or to limit the output voltage of the second inverter. Therefore, it is possible to prevent the voltage required in the first inverter from becoming higher than the first maximum output voltage, and to prevent the motor from being controlled as intended.
[0015] In the second embodiment, the control unit includes: a first control unit that controls the first inverter based on the first required voltage when the required value of the voltage output by the first inverter, i.e., the first required voltage, is not higher than the first upper limit voltage set based on the first maximum output voltage; and controls the first inverter to reduce the first required voltage when the first required voltage is higher than the first upper limit voltage; and a second control unit that controls the second inverter based on the required value of the voltage output by the second inverter, i.e., the second required voltage.
[0016] According to the above structure, the first control unit controls the first inverter based on the first required voltage when the first required voltage is not higher than a first upper limit voltage set based on the first maximum output voltage. The second control unit controls the second inverter based on the second required voltage. On the other hand, when the first required voltage is higher than the first upper limit voltage, the first control unit controls the first inverter to reduce the first required voltage. Therefore, it is possible to prevent the required voltage in the first inverter from becoming higher than the first maximum output voltage, and to prevent the motor from being controlled as intended.
[0017] In the third approach, the first control unit calculates the first required voltage based on the command value that commands the torque output to the motor. If the first required voltage is not higher than a first upper limit voltage set below the first maximum output voltage, the first inverter is controlled based on the first required voltage. If the first required voltage is higher than the first upper limit voltage, the first inverter is controlled to reduce the first required voltage. The second control unit calculates the required value of the voltage output by the second inverter, i.e., the second required voltage, based on the command value, and controls the second inverter based on the second required voltage.
[0018] According to the above structure, the first control unit controls the first inverter based on the first required voltage when the first required voltage is not higher than a first upper limit voltage set below the first maximum output voltage. The second control unit controls the second inverter based on the second required voltage. Since both the first and second required voltages are calculated based on the aforementioned command values, it is possible to coordinate the torque generated by the current flowing through the first winding group with the torque generated by the current flowing through the second winding group. On the other hand, if the first required voltage is higher than the first upper limit voltage, the first control unit controls the first inverter to lower the first required voltage. Therefore, it is possible to prevent the voltage required in the first inverter from becoming higher than the first maximum output voltage, and to prevent the motor from being controlled as intended.
[0019] In the fourth approach, when the required voltage output by the first inverter (i.e., the first required voltage) is higher than the first upper limit voltage, the control unit controls the first inverter to reduce the q-axis current of the first winding group. With this structure, by reducing the q-axis current of the first winding group, it is possible to prevent the required voltage in the first inverter from becoming higher than the first maximum output voltage.
[0020] In the fifth method, the control unit calculates a first d-axis current command that commands the d-axis current of the first winding group and a first q-axis current command that commands the q-axis current based on the command value that commands the torque output to the motor. Based on the first d-axis current command and the first q-axis current command, the control unit calculates the required value of the voltage output by the first inverter, i.e., the first required voltage. If the first required voltage is higher than the first upper limit voltage, the control unit controls the first inverter to reduce the absolute value of the first q-axis current command.
[0021] Based on the above structure, the control unit calculates the first d-axis current command and the first q-axis current command of the first winding group based on the command values, and calculates the first required voltage based on the first d-axis current command and the first q-axis current command. Therefore, the motor can be controlled based on the first d-axis current command and the first q-axis current command. Furthermore, the first d-axis current command is not limited to the command value of the first d-axis current, but can be any value related to the first d-axis current. The first q-axis current command is not limited to the command value of the first q-axis current, but can be any value related to the first q-axis current.
[0022] Here, in a motor having a first winding group and a second winding group, the voltage equations of the following equations (1) and (2) hold true.
[0023] Vd1=R×Id1-ω×L×Iq1-ω×M×Iq2···(1)
[0024] Vq1=R×Iq1+ω×L×Id1+ω×M×Id2+ω×K···(2)
[0025] In equation (1), Vd1 is the d-axis voltage of the first winding, R is the resistance of the first winding, Id1 is the d-axis current of the first winding, ω is the angular velocity of the motor, L is the self-inductance of the first winding, Iq1 is the q-axis current of the first winding, M is the mutual inductance between the first and second windings, and Iq2 is the q-axis current of the second winding. In equation (2), Vq1 is the q-axis voltage of the first winding, Id2 is the d-axis current of the second winding, and K is the back electromotive force constant of the first winding. To make Id1, Iq1, Id2, and Iq2 the first d-axis current command, the first q-axis current command, the second d-axis current command, and the second q-axis current command, respectively, the amplitude of the required voltage √(Vd1^2 + Vq1^2) needs to be below the maximum output voltage. "Vd1^2" represents the square of Vd1.
[0026] Furthermore, when the first required voltage is higher than the first upper limit voltage, the control unit controls the first inverter to reduce the absolute value of the first q-axis current command. Therefore, in the above equation (2), by reducing the first q-axis current command, which is the q-axis current Iq1 of the first winding group, R×Iq1, and thus the q-axis voltage Vq1 of the first winding group, can be reduced. Therefore, the first required voltage √(Vd1^2+Vq1^2) calculated based on the first d-axis current command and the first q-axis current command can be reduced.
[0027] There is a concern that the motor may not be able to output the commanded torque value if the first q-axis current command is reduced.
[0028] Regarding this, in the sixth embodiment, the control unit calculates a second d-axis current command that commands the d-axis current of the second winding group and a second q-axis current command that commands the q-axis current based on the command value that commands the torque output to the motor. It then controls the second inverter to increase the second q-axis current command based on the amount by which the q-axis current of the first winding group decreases. With this structure, the increase in motor torque caused by the increase in the second q-axis current command can compensate for the decrease in motor torque caused by the decrease in the first q-axis current command. Therefore, it is possible to prevent the torque output by the motor from decreasing below the command value.
[0029] In the seventh method, the control unit calculates a first d-axis current command or a first q-axis current command that commands the d-axis current of the first winding group based on the command value that commands the torque output to the motor. Based on the first d-axis current command and the first q-axis current command, the control unit calculates the required value of the voltage output by the first inverter, i.e., the first required voltage. If the first required voltage is higher than the first upper limit voltage, the control unit controls the first inverter to reduce the back electromotive force of the first winding group.
[0030] According to the above structure, when the first required voltage is higher than the first upper limit voltage, the control unit controls the first inverter to reduce the back electromotive force of the first winding group. Therefore, by modifying the first d-axis current command to reduce the back electromotive force of the first winding group, that is, by making the first d-axis current command, which is the d-axis current Id1 of the first winding group, negative in the above equation (2), the q-axis voltage Vq1 of the first winding group can be reduced.
[0031] In the eighth method, the control unit calculates a second d-axis current command that commands the d-axis current of the second winding group and a second q-axis current command that commands the q-axis current based on the command value. When the first d-axis current command reaches the first d-axis limit value, the control unit controls the second inverter to reduce the back electromotive force of the second winding group. When the first d-axis current command reaches the first d-axis limit value, the control unit controls the first inverter based on the second d-axis current command, the first d-axis limit value, and the first q-axis current command.
[0032] The first d-axis current command, modified to reduce the back electromotive force of the first winding group, is generally set to not exceed the first d-axis limit value. Furthermore, even if the first d-axis current command reaches the first d-axis limit value, there is a concern that the voltage required based on the first d-axis current command and the first q-axis current command may become higher than the first maximum output voltage.
[0033] Regarding this, according to the above structure, when the first d-axis current command reaches the first d-axis limit value, the control unit controls the first inverter based on the second d-axis current command, which has been modified to reduce the back electromotive force of the second winding group, the first d-axis limit value, and the aforementioned first q-axis current command. Therefore, by modifying the second d-axis current command to reduce the back electromotive force of the second winding group, that is, by making the second d-axis current command, which is the d-axis current Id2 of the second winding group, negative in the above equation (2), the q-axis voltage Vq1 of the first winding group can be reduced.
[0034] In the ninth embodiment, the first winding group and the second winding group are distributed and wound. The control unit calculates a second d-axis current command that commands the d-axis current of the second winding group and a second q-axis current command that commands the q-axis current based on the command value. If the first d-axis current command exceeds the first d-axis limit value, the control unit controls the second inverter to increase the back electromotive force of the second winding group by an amount corresponding to the first d-axis overshoot amount of the first d-axis current command exceeding the first d-axis limit value. If the first d-axis current command exceeds the first d-axis limit value, the control unit controls the first inverter based on the second d-axis current command, the first d-axis current command, and the first q-axis current command.
[0035] In a motor, when the first winding group and the second winding group are wound separately, even if the first d-axis current command exceeds the first d-axis limit value, it can be offset by modifying the second d-axis current command to increase the back electromotive force of the second winding group.
[0036] Regarding this, according to the above structure, when the first d-axis current command exceeds the first d-axis limit, the control unit controls the first inverter to increase the back electromotive force of the second winding group in accordance with the first d-axis excess amount corresponding to the first d-axis current command exceeding the first d-axis limit. Therefore, the q-axis voltage Vq1 of the first winding group can be reduced, and the first d-axis excess amount of the first d-axis current command exceeding the first d-axis limit can be offset by the second d-axis current command.
[0037] In a motor, when the first winding group and the second winding group are wound separately, there is a concern that the magnetic components of the motor may deteriorate when the sum of the correction amount for the first d-axis current command to reduce the back electromotive force of the first winding group (i.e., the first d-axis correction amount) and the correction amount for the second d-axis current command to reduce the back electromotive force of the second winding group (i.e., the second d-axis correction amount) becomes too large.
[0038] Regarding this, in the tenth embodiment, the first winding group and the second winding group are wound separately, and the control unit controls the first inverter to ensure that the sum of the first d-axis correction amount and the second d-axis correction amount is within a predetermined d-axis correction amount. The first d-axis correction amount is a correction amount that adjusts the first d-axis current command to reduce the back electromotive force of the first winding group, and the second d-axis correction amount is a correction amount that adjusts the second d-axis current command to reduce the back electromotive force of the second winding group. Therefore, by ensuring that the sum of the first d-axis correction amount and the second d-axis correction amount is within a predetermined d-axis correction amount, the deterioration of the motor's magnetic components can be suppressed.
[0039] As described above, when the first d-axis current command is modified to reduce the back electromotive force of the first winding group, the first d-axis current command, which is the d-axis current Id1 of the first winding group, is negative in the above equation (1). In this case, when the first q-axis current command, which is the q-axis current Iq1 of the first winding group, is positive, both R×Id1 and (-ω×L×Iq1) are negative, and there is a concern that the absolute value of the d-axis voltage Vd1 of the first winding group will increase.
[0040] Regarding this, in the eleventh embodiment, when the voltage output by the first inverter becomes higher than the first upper limit voltage set based on the first maximum output voltage, the control unit controls the first inverter such that the first q-axis current command that commands the q-axis current of the first winding group has a sign opposite to the sign of the command value that commands the torque output to the motor. Therefore, since R×Id1 can be made negative and (-ω×L×Iq1) can be made positive, the absolute value of the d-axis voltage Vd1 of the first winding group can be reduced, thereby reducing the first required voltage.
[0041] The greater the voltage exceeds the first upper limit, the more difficult it is to control the motor as intended.
[0042] Regarding this, in the twelfth embodiment, the control unit controls the first inverter such that the greater the required voltage value output by the first inverter, i.e., the first required voltage exceeds the first upper limit voltage by a certain amount, the more the first required voltage is reduced. According to this structure, the greater the amount the first required voltage exceeds the first upper limit voltage by a certain amount, the more rapidly the first required voltage is reduced.
[0043] When the first required voltage exceeds the first upper limit voltage for an extended period, an unwanted current continues to flow through the winding.
[0044] In this regard, in the thirteenth embodiment, the control unit controls the first inverter such that the greater the cumulative value of the first voltage exceeding the limit, the more the first required voltage is reduced. According to this structure, the longer the state of the first required voltage exceeding the first upper limit voltage persists, the more the first required voltage is reduced, thus easily eliminating the state of the first required voltage exceeding the first upper limit voltage.
[0045] In the fourteenth embodiment, when the first maximum output voltage is lower than the second maximum output voltage (i.e., the maximum output voltage that the second inverter can output to the second winding group), the control unit controls the first inverter to make the required voltage value (i.e., the first required voltage) output by the first inverter lower than the required voltage value (i.e., the second required voltage) output by the second inverter. With this structure, it is also possible to make the required voltage in the first inverter higher than the first maximum output voltage, thus suppressing uncontrollable current flow in the winding group.
[0046] Regarding the fifteenth method,
[0047] The control units (370, 570) calculate the required voltage value (i.e., the first required voltage) of the first inverter and the required voltage value (i.e., the second required voltage) of the second inverter based on the command value for the torque output to the motor. If the first maximum output voltage is lower than the second maximum output voltage, the first required voltage is calculated to be lower than the second required voltage. The first inverter is controlled based on the first required voltage, and the second inverter is controlled based on the second required voltage. According to this structure, the same effect as the fourteenth method can be achieved.
[0048] In the sixteenth embodiment, the control unit calculates a first d-axis current command that commands the d-axis current of the first winding group and a first q-axis current command that commands the q-axis current, as well as a second d-axis current command that commands the d-axis current of the second winding group and a second q-axis current command that commands the q-axis current, based on the command value. It then calculates the first required voltage based on the first d-axis current command and the first q-axis current command, and calculates the second required voltage based on the second d-axis current command and the second q-axis current command. If the first maximum output voltage is lower than the second maximum output voltage, the first q-axis current command is calculated to be smaller than the second q-axis current command.
[0049] According to the above structure, the control unit calculates a first d-axis current command, a first q-axis current command, a second d-axis current command, and a second q-axis current command based on the torque command value. It then calculates a first required voltage based on the first d-axis current command and the first q-axis current command, and calculates a second required voltage based on the second d-axis current command and the second q-axis current command. Furthermore, when the first maximum output voltage is lower than the second maximum output voltage, the control unit calculates the first q-axis current command to be smaller than the second q-axis current command. Therefore, it is possible to ensure that the first required voltage is lower than the second required voltage, and to prevent the first required voltage from becoming higher than the first maximum output voltage. Thus, it is possible to prevent the motor from being controlled as intended.
[0050] In the seventeenth embodiment, the control unit calculates the first d-axis current command to reduce the back electromotive force of the first winding group based on the greater of the cumulative value of the first voltage excess amount of the first required voltage exceeding the first upper limit voltage set below the first maximum output voltage and the cumulative value of the second voltage excess amount of the second required voltage exceeding the second upper limit voltage set below the second maximum output voltage, and calculates the second d-axis current command to reduce the back electromotive force of the second winding group.
[0051] According to the above structure, by modifying the first d-axis current command and the second d-axis current command to reduce the back electromotive force of the first winding group, that is, by making the first d-axis current command and the second d-axis current command negative in the above equation (2), the q-axis voltage Vq1 of the first winding group and the q-axis voltage Vq2 of the second winding group can be reduced. Furthermore, the first d-axis current command and the second d-axis current command are modified based on the larger of the cumulative value of the first voltage excess amount exceeding the first upper limit voltage and the cumulative value of the second voltage excess amount exceeding the second upper limit voltage. Therefore, in both inverters, it is possible to prevent the required voltage from becoming higher than the maximum output voltage.
[0052] Specifically, as in the eighteenth method, the following structure can be adopted, namely, limiting the above-mentioned output voltage means limiting the above-mentioned output voltage to a specified absolute value or less.
[0053] In addition, specifically, as in the nineteenth method, the following structure can be adopted, namely, limiting the above-mentioned output voltage is to stop the integral calculation in the control based on the deviation between the command value and the actual value of the current flowing through the above-mentioned second winding group.
[0054] The twentieth embodiment is a steering control system comprising: a motor control device according to any one of the first to nineteenth embodiments; a steering control mechanism; and the aforementioned motor driving the aforementioned steering control mechanism.
[0055] According to the above structure, in a steering system that includes a motor control device, a steering mechanism, and a motor that drives the steering mechanism, it can achieve the same effect as any of the first to nineteenth methods. Attached Figure Description
[0056] The above-mentioned objects, as well as other objects, features, and advantages of this disclosure, become more apparent from the following detailed description with reference to the accompanying drawings. The accompanying drawings are...
[0057] Figure 1 This is a schematic diagram representing the steering control system.
[0058] Figure 2 It is a circuit diagram that shows the power supply, motor control device, and motor.
[0059] Figure 3 This is a block diagram showing the first control unit and the second control unit of the first embodiment.
[0060] Figure 4 This is a timing diagram showing the first required voltage and each current command of the first embodiment.
[0061] Figure 5 This is a flowchart illustrating the control of the first control unit and the second control unit in the first embodiment.
[0062] Figure 6 It is a graph showing the relationship between the maximum torque and the maximum rotational speed when the first d-axis current command is negative.
[0063] Figure 7 It is a graph showing the change in the relationship between the maximum torque and the maximum rotational speed when the first d-axis current command is negative and the first q-axis current command is reduced.
[0064] Figure 8 It is a graph showing the change in the relationship between the maximum torque and the maximum rotational speed when the first q-axis current command is reduced.
[0065] Figure 9 This is a timing diagram showing the first required voltage and each current command of the second embodiment.
[0066] Figure 10 This is a flowchart illustrating the control of the first control unit and the second control unit in the second embodiment.
[0067] Figure 11 It is a graph showing the change in the relationship between the maximum torque and the maximum rotational speed when the first q-axis current command is reduced to negative.
[0068] Figure 12 This is a graph showing the change in the relationship between maximum torque and maximum rotational speed when the first q-axis current command is reduced and the second q-axis current command is increased.
[0069] Figure 13 This is a block diagram showing the control unit of the third embodiment.
[0070] Figure 14 This is a timing diagram showing the first required voltage and each current command in the third embodiment.
[0071] Figure 15 This is a flowchart illustrating the control unit of the third embodiment.
[0072] Figure 16 This is a timing diagram showing the first required voltage and each current command in the fourth embodiment.
[0073] Figure 17 This is a flowchart illustrating the control of the first control unit and the second control unit in the fourth embodiment.
[0074] Figure 18 This is a block diagram showing the control unit of the fifth embodiment.
[0075] Figure 19 This is a timing diagram of the first required voltage and each current command in the sixth embodiment.
[0076] Figure 20 This is a flowchart illustrating the control of the first control unit and the second control unit in the sixth embodiment. Detailed Implementation
[0077] (First Implementation)
[0078] Hereinafter, with reference to the accompanying drawings, a first embodiment specifically implemented in a steering control system mounted on a vehicle will be described.
[0079] like Figure 1As shown, the steering control system 90 includes a steering wheel 91 as a steering control component, a steering shaft 92, a pinion 96, a rack shaft 97, a wheel 98, a motor 10, a motor control device 80, and a reduction gear 99.
[0080] The steering wheel 91 is connected to the steering shaft 92. A torque sensor 94 and a steering angle sensor 95 are installed on the steering shaft 92. The torque sensor 94 detects the steering torque Ts that accompanies the driver's operation of the steering wheel 91. The steering angle sensor 95 detects the driver's operating angle of the steering wheel 91 and the steering speed Vs. A pinion 96 is installed at the front end of the steering shaft 92. The pinion 96 meshes with a rack shaft 97. A pair of wheels 98 are connected to both ends of the rack shaft 97 via tie rods, etc. Furthermore, the electric power steering system is constituted by the motor 10, the motor control device 80, the torque sensor 94, and the steering angle sensor 95.
[0081] If the driver rotates the steering wheel 91, the steering shaft 92 connected to the steering wheel 91 rotates. The rotational motion of the steering shaft 92 is converted into the linear motion of the rack shaft 97 by the pinion 96. The pair of wheels 98 are steered at an angle corresponding to the displacement of the rack shaft 97.
[0082] The reduction gear 99 reduces the rotation of the motor 10 at a predetermined reduction ratio and transmits the speed to the steering shaft 92. The motor 10 is a so-called steering control auxiliary motor. The motor control device 80 and the motor 10 are integrated into a so-called mechatronic drive unit. Furthermore, the steering mechanism is constituted by the steering shaft 92, the reduction gear 99, the pinion 96, and the rack and pinion shaft 97.
[0083] Motor 10 outputs auxiliary torque to assist the driver in steering the steering wheel 91. For example... Figure 2 As shown, the motor 10 is driven by power supplied from the first power source 191 and the second power source 291, causing the reduction gear 99 to rotate in both directions. The motor 10 is a three-phase brushless motor (SPM or IPM motor) with permanent magnets (magnetic components) embedded in the rotor.
[0084] Motor 10 includes a first winding group 180 and a second winding group 280. The winding groups 180 and 280 have identical electrical characteristics and are wound (distributed winding) onto a common stator with their electrical angles offset by 30 degrees. Correspondingly, control is implemented such that there is a phase when the winding groups 180 and 280 are energized. The phase currents are staggered by 30 degrees. By optimizing the energizing phase difference, the output torque is improved. Furthermore, sixth-order torque ripple can be reduced. Additionally, by energizing with phase difference, the advantages of noise and vibration elimination can be maximized. Moreover, since heat generation is also averaged, temperature-related inter-system errors in sensor readings, torque, etc., can be reduced.
[0085] Hereinafter, the combination of the first inverter 120 and the first control unit 170 involved in the drive control of the first winding group 180 is designated as the first system L1, and the combination of the second inverter 220 and the second control unit 270 involved in the drive control of the second winding group 280 is designated as the second system L2. Furthermore, the structures involved in the first system L1 are mainly marked with reference numerals in the 100 range, and the structures involved in the second system L2 are mainly marked with reference numerals in the 200 range. Additionally, in both the first system L1 and the second system L2, the same structures are marked with the same last two reference numerals. Hereinafter, "first" will be appropriately referred to as the suffix "1", and "second" will be referred to as the suffix "2".
[0086] The motor control device 80 includes a first inverter 120 and a second inverter 220, a first control unit 170 and a second control unit 270, etc.
[0087] The first inverter 120 (first power conversion unit) is connected to the first power supply 191 via power input line 114, converting the DC power supplied from the first power supply 191 into AC power for each phase U, V, and W, and supplying it to the motor 10. In this embodiment, the first inverter 120 is configured as a full-bridge circuit consisting of a series connection of a set of switching elements for each phase U, V, and W. Each switching element is operated to an on / off state according to an operation signal output from the first control unit 170. For example, the switching element is composed of a MOSFET. The second inverter 220 (second power conversion unit) is connected to the second power supply 291 via power input line 214. The second inverter 220 has the same structure as the first inverter 120. Each switching element of the second inverter 220 is operated to an on / off state according to an operation signal output from the second control unit 270.
[0088] Both the first power supply 191 (first power supply unit) and the second power supply 291 (second power supply unit) are 12V lead-acid batteries connected to each other via a DC-DC converter (not shown). An AC generator is connected to one of the power supplies. Furthermore, the capacitance of the first power supply 191 and the second power supply 291 can be the same or different. Alternatively, each inverter can be connected to one of the two power supplies only in operating modes requiring power redundancy; in operating modes where redundancy is not required, power can be supplied from one power supply to both the first inverter 120 and the second inverter 220. Furthermore, when connected to different power supplies or supplied from a shared power supply via different wiring, the first maximum output voltage Vm1 may become lower than the second maximum output voltage Vm2, which can be output from the second power supply 291 and thus the second inverter 220 to the second winding group 280, due to power consumption, degradation, or differences in wiring impedance of one power supply.
[0089] The motor control device 80 includes a first current detection unit 130 for detecting the current flowing through each phase of the first inverter 120, i.e., each phase (U, V, W) of the first winding group 180, and a second current detection unit 230 for detecting the current flowing through each phase of the second inverter 220, i.e., each phase (U, V, W) of the second winding group 280.
[0090] The first current detection unit 130 includes phase detection units 131, 132, and 133 for each phase disposed in the lower arm of the first inverter 120. The U-phase detection unit 131 detects the current flowing through the U-phase coil of the first winding group 180 as the U-phase current Iu1. The V-phase detection unit 132 detects the current flowing through the V-phase coil of the first winding group 180 as the V-phase current Iv1. The W-phase detection unit 133 detects the current flowing through the W-phase coil of the first winding group 180 as the W-phase current Iw1. Each phase detection unit 131 to 133 is, for example, composed of a shunt resistor. Alternatively, each phase detection unit 131 to 133 may be composed of a Hall effect IC. Furthermore, the second current detection unit 230 has the same structure as the first current detection unit 130. The second current detection unit 230 includes a U-phase detection unit 231, a V-phase detection unit 232, and a W-phase detection unit 233, which detects the U-phase current Iu2, the V-phase current Iv2, and the W-phase current Iw2.
[0091] The motor control device 80 includes a voltage detection unit 140 for detecting the input voltage Vin1 input from the first power supply 191 to the first inverter 120, and a voltage detection unit 240 for detecting the input voltage Vin2 input from the second power supply 291 to the second inverter 220.
[0092] A rotation angle sensor 11 is provided in the motor 10 to detect the rotation angle θ of the motor 10. The rotation angle sensor 11 is, for example, composed of a resolver. In addition, the rotation angle sensor 11 can calculate the angular velocity ω of the motor 10 based on the rotation angle θ.
[0093] The motor control unit 80 controls the steering assist torque generated by the motor 10. The steering torque Ts detected by the torque sensor 94, the steering speed Vs detected by the steering angle sensor 95, and the vehicle speed Vc detected by the vehicle speed sensor 93 are input to the motor control unit 80. Based on the values of the steering torque Ts, steering speed Vs, and vehicle speed Vc, the motor control unit 80 controls the torque of the motor 10 to generate the desired steering assist torque.
[0094] Figure 3 The motor 10 and the motor control device 80 are shown, including a first control unit 170 and a second control unit 270.
[0095] Control units 170 and 270 are primarily constructed using a known microcomputer equipped with a CPU, ROM, RAM, and input / output IF functions. The functions of control units 170 and 270 can be implemented functionally by the CPU executing programs pre-stored in ROM, or they can be implemented using dedicated hardware. Alternatively, each control unit 170 and 270 may contain a microcomputer, or one microcomputer may be present in both control units 170 and 270.
[0096] First, taking the first control unit 170 as an example, the basic control of the first control unit 170 and the second control unit 270 will be explained.
[0097] The first control unit 170 outputs an operation signal corresponding to the desired steering assist torque to each switching element of the first inverter 120 based on the steering torque Ts, steering speed Vs, vehicle speed Vc, and rotation angle θ. In this embodiment, the first control unit 170 calculates the d-axis voltage Vd1 and the q-axis voltage Vq1 so that the currents Id1 and Iq1 after the two-phase conversion of the phase currents Iu1, Iv1, and Iw1 detected by the first current detection unit 130 are controlled to become the current commands Id1* and Iq1* described later.
[0098] The first control unit 170, for generating steering assist torque, includes a d-axis current command calculation unit 161, a q-axis current command calculation unit 162, current deviation calculation units 163a and 163b, a d-axis voltage calculation unit 164, a q-axis voltage calculation unit 165, a required voltage calculation unit 166, a voltage deviation calculation unit 167, and a field weakening control unit 168. Generally, field weakening is equivalent to the d-axis current flowing in the negative direction. However, in this specification, the field weakening control unit 168 calculates a value corresponding to how much the required voltage exceeds the upper limit voltage. Based on this calculated value, it corrects the current command including the d-axis current flowing in the negative direction to suppress the required voltage from exceeding the maximum output voltage.
[0099] The phase currents Iu1, Iv1, and Iw1 detected by the first current detection unit 130 are converted from analog values to digital values by a known A / D conversion unit (not shown), and then converted into d-axis current Id1 and q-axis current Iq1 by a known three-phase two-phase coordinate conversion unit (not shown). Based on the rotation angle θ of the motor 10, the three-phase two-phase coordinate conversion unit converts the digitally converted phase currents Iu1, Iv1, and Iw1 into values on the dq coordinates, namely, the d-axis current Id1 and the q-axis current Iq1. Here, in the defined dq coordinate axes, the d-axis is the axis of the reactive current component, i.e., the current contributing to the rotating magnetic field accompanying the rotation of the motor 10, i.e., the excitation current component. The q-axis is the axis of the active current component, i.e., the current contributing to the magnet torque of the motor 10, i.e., the torque current component.
[0100] The q-axis current command calculation unit 162 calculates the first q-axis current command Iq1* based on the command value It* that commands the torque output to the motor 10 and Ict1 calculated through field weakening control. The command value It* is calculated based on the steering torque Ts, steering speed Vs, and vehicle speed Vc. The command value It* can also be calculated by the first control unit 170 or by the upper-level ECU (Electronic Control Unit). Furthermore, if it is an SPM motor, the d-axis current command calculation unit 161 calculates the first d-axis current command Id1* based on Ict1 calculated through field weakening control; if it is an IPM motor, the d-axis current command calculation unit 161 calculates the first d-axis current command Id1* based on the command value It* that commands the torque output to the motor 10 and Ict1 calculated through field weakening control.
[0101] The current deviation calculation unit 163b calculates the value obtained by subtracting the q-axis current Iq1 from the first q-axis current command Iq1*, which is the q-axis deviation ΔIq1. The current deviation calculation unit 163a calculates the value obtained by subtracting the d-axis current Id1 from the first d-axis current command Id1*, which is the d-axis deviation ΔId1.
[0102] The q-axis voltage calculation unit 165 performs PI control to make the q-axis deviation ΔIq1 close to 0, and calculates the q-axis voltage Vq1. The d-axis voltage calculation unit 164 performs PI control to make the d-axis deviation ΔId1 close to 0, and calculates the d-axis voltage Vd1.
[0103] A known two-phase or three-phase coordinate conversion unit (not shown) converts the q-axis voltage Vq1 and the d-axis voltage Vd1 into phase voltages U, V, and W based on the rotation angle θ and outputs them. A known PWM control unit (not shown) outputs an operation signal based on each phase voltage to control the switching elements of the first inverter 120 by switching on and off via duty cycle control. Based on this operation signal, each switching element of the first inverter 120 is switched on and off. In addition, in the second system L2, the second control unit 270 includes a d-axis current command calculation unit 262, a q-axis current command calculation unit 261, current deviation calculation units 263a and 263b, a d-axis voltage calculation unit 265, a q-axis voltage calculation unit 264, a required voltage calculation unit 266, a voltage deviation calculation unit 267, and a field weakening control unit 268. Moreover, the second control unit 270 also performs the same basic control as the first control unit 170. As a result, the motor 10 is driven, and the motor 10 causes the steering shaft 92 to generate steering assistance torque.
[0104] Here, in the motor 10 equipped with a first winding group 180 and a second winding group 280, the voltage equations of equations (1) and (2) above hold. In equations (1) and (2), in order for Id1, Iq1, Id2, and Iq2 to be the first d-axis current command Id1*, the first q-axis current command Iq1*, the second d-axis current command Id2*, and the second q-axis current command Iq2*, respectively, the first required voltage (first output voltage), i.e., √(Vd1^2+Vq1^2), needs to be below the maximum output voltage. Similarly, in the second system L2, by replacing the suffix "1" and suffix "2" in equations (1) and (2), the second required voltage, i.e., √(Vd2^2+Vq2^2), needs to be below the maximum output voltage.
[0105] The first maximum output voltage Vm1 that the first inverter 120 can output to the first winding group 180 is determined by the voltage of the first power supply 191, the resistance of the power input line 114, and the losses of the first inverter 120. The resistance of the power input line 114 and the losses of the first inverter 120 can also be predetermined. Therefore, the first maximum output voltage Vm1 can be calculated based on the input voltage Vin1 detected by the voltage detection unit 140, the resistance of the power input line 114, and the losses of the first inverter 120. Similarly, the second maximum output voltage Vm2 can be calculated based on the input voltage Vin2 detected by the voltage detection unit 240, the resistance of the power input line 214, and the losses of the second inverter 220.
[0106] As described above, the first maximum output voltage Vm1 that the first inverter 120 can output to the first winding group 180 may become lower than the second maximum output voltage Vm2 that the second inverter 220 can output to the second winding group 280. In this case, even if the second required voltage is below the second maximum output voltage Vm2, there is a concern that the first required voltage becomes higher than the first maximum output voltage Vm1, making it impossible to control the current and causing unwanted current to flow in the winding group. In particular, when the second inverter 220 outputs a voltage close to the second maximum output voltage Vm2, there is a concern that the motor generates a voltage higher than the first maximum output voltage Vm1, causing unwanted current to flow in the first inverter 120.
[0107] Therefore, the first upper limit voltage (first target voltage), which serves as the reference for the first required voltage (the first required voltage) and is the required value for starting to suppress the voltage output by the first inverter 120, is set to 90% (or less) of the first maximum output voltage Vm1. Similarly, the second upper limit voltage (second target voltage) of the second inverter 220 is set to 90% (or less) of the second maximum output voltage Vm2. Alternatively, the first upper limit voltage (second upper limit voltage) can be set to be equal to the first maximum output voltage Vm1 (or second maximum output voltage Vm2), or 80% of the first maximum output voltage Vm1 (or second maximum output voltage Vm2), etc. Furthermore, the first maximum output voltage Vm1 and the first upper limit voltage can be set by the first control unit 170 or by a higher-level ECU. The second maximum output voltage Vm2 and the second upper limit voltage can also be set by the second control unit 270 or by a higher-level ECU.
[0108] Furthermore, when the first required voltage is not higher than the first upper limit voltage, the first control unit 170 calculates Ict1 as 0 through field weakening control, and calculates the first q-axis current command Iq1* and the first d-axis current command Id1* based on the command value It* that commands the torque output to the motor 10. Moreover, when the first required voltage is higher than the first upper limit voltage, the Ict1 calculated through field weakening control is a value greater than 0, and the first q-axis current command Iq1* and the first d-axis current command Id1* are calculated based on Ict1 and the command value It* that commands the torque output to the motor 10, thereby reducing the first required voltage. The second control unit 270 controls the second inverter 220 based on the second q-axis current command Iq2* and the second d-axis current command Id2*.
[0109] As described above, by modifying the first d-axis current command Id1* to reduce the back electromotive force of the first winding group 180, that is, by making the first d-axis current command Id1*, which is the d-axis current Id1 of the first winding group 180, negative in the above equation (2), the q-axis voltage Vq1 of the first winding group 180 can be reduced. Therefore, as Figure 4 As shown in (a) and (b), when the first required voltage is higher than the first upper limit voltage (times t11 to t12), the first d-axis current command Id1* is reduced to below 0, and then the first d-axis current command Id1* is increased in the negative direction until the required voltage is within the upper limit voltage or reaches the lower limit value. That is, as Figure 4As shown in (a) to (c), when the first required voltage is higher than the first upper limit voltage (at times t11 to t12), the first control unit 170 calculates the d-axis voltage Vd1 and the q-axis voltage Vq1 based on a first modified d-axis current command that modifies the first d-axis current command Id1* to reduce the back electromotive force of the first winding group 180 and a first q-axis current command Iq1*. Furthermore, Figure 4 In order to illustrate the series of processes of increasing the first d-axis current command Id1* in the negative direction, decreasing the first q-axis current command Iq1*, and increasing the second d-axis current command Id2* in the negative direction, a waveform example is depicted in an operating mode where even if the first d-axis current command Id1* is at the lower limit, the first q-axis current command Iq1* is 0A, the second d-axis current command Id2* is at the lower limit, the first required voltage exceeds the first upper limit voltage and becomes the maximum output voltage.
[0110] The first corrected d-axis current command, which modifies the first d-axis current command Id1* to reduce the back electromotive force of the first winding group 180, is set to not exceed the first d-axis limit value (-Id1*lim). The first d-axis limit value (-Id1*lim) is, for example, set to a value that does not cause demagnetization (deterioration) in the permanent magnet of the motor 10. Even when the first corrected d-axis current command reaches the first d-axis limit value (-Id1*lim) (time t12), there is a situation where the motor speed increases due to the torque accompanying the energization of the second winding group, which has a margin relative to the maximum output voltage, and the first required voltage calculated based on the first corrected d-axis current command and the first q-axis current command Iq1* becomes higher than the first upper limit voltage.
[0111] As described above, in equation (2), by reducing the first q-axis current command Iq1*, which is the q-axis current Iq1 of the first winding group 180, to a first corrected q-axis current command, R×Iq1, and thus the q-axis voltage Vq1 of the first winding group 180, can be reduced. Therefore, as Figure 4 As shown in (a) to (c), when the first corrected d-axis current command reaches the first d-axis limit value (-Id1*lim) (times t12 to t13), the first q-axis current command Iq1* is reduced, and the amount of reduction of the first q-axis current command Iq1* is increased until the required voltage is within the upper limit voltage or reaches the lower limit value. That is, when the first required voltage is higher than the first upper limit voltage, the first control unit 170 calculates the d-axis voltage Vd1 and the q-axis voltage Vq1 based on the first corrected q-axis current command that reduces the absolute value of the first q-axis current command Iq1* and the first d-axis current command Id1* (specifically the first d-axis limit value (-Id1*lim)).
[0112] Even when the first corrected q-axis current command reaches 0 (time t13), the following situation exists: due to the increased motor speed accompanied by the torque energizing the second winding group which has a margin relative to the maximum output voltage, the first required voltage calculated based on the first corrected d-axis current command and the first corrected q-axis current command becomes higher than the first upper limit voltage.
[0113] As described above, by modifying the second d-axis current command Id2* to reduce the back electromotive force of the second winding group 280, that is, by making the second d-axis current command Id2*, which is the d-axis current Id2 of the second winding group 280, negative in the above equation (2), the q-axis voltage Vq1 of the first winding group 180 can be reduced. Therefore, as Figure 4 As shown in (a) to (d), when the first corrected q-axis current command reaches 0 (times t13 to t14), the second d-axis current command Id2* is reduced to below 0, and then the second d-axis current command Id2* is increased in the negative direction until the required voltage is within the upper limit voltage or reaches the lower limit value. That is, as Figure 4 As shown in (a) to (e), in addition, when the first modified q-axis current command reaches 0 (times t13 to t14), the second control unit 270 calculates the d-axis voltage Vd2 and the q-axis voltage Vq2 based on the second modified d-axis current command Id2* which is modified to reduce the back electromotive force of the first winding group 180, the first d-axis limit value (-Id1*lim), and the first modified q-axis current command (specifically 0).
[0114] The second modified d-axis current command, Id2*, to reduce the back electromotive force of the second winding group 280, is set to not exceed the second d-axis limit value (-Id2*lim). The second d-axis limit value (-Id2*lim) is, for example, set to a value that prevents demagnetization (deterioration) in the permanent magnet of the motor 10. When the second modified d-axis current command reaches the second d-axis limit value (-Id2*lim) (at time t14 and thereafter), the second modified d-axis current command is set back to the second d-axis limit value (-Id2*lim). Furthermore, in Figure 4 In this case, the second q-axis current command Iq2* is not changed. That is, if the second required voltage is not higher than the second upper limit voltage, it is preferable not to change the second q-axis current command Iq2* calculated based on the torque command value It*.
[0115] Figure 5 It means as Figure 4 The flowchart shows the sequence of control for correcting the current commands Id1*, Iq1*, and Id2*. This series of processes is repeatedly executed by the first control unit 170 and the second control unit 270 at a predetermined cycle.
[0116] First, the accumulated value Ict1 is set to the previous accumulated value Ict1 plus the first voltage excess amount (first required voltage - first upper limit voltage) of the first required voltage (first output voltage) exceeding the first upper limit voltage (S10). That is, the accumulated value Ict1 is the accumulated value of the first voltage excess amount of the first required voltage exceeding the first upper limit voltage. Furthermore, when the first required voltage is lower than the first upper limit voltage, the first voltage excess amount is negative. In the following embodiments, the accumulated value Ict1 is exemplified as the value of the first voltage excess amount (first required voltage - first upper limit voltage) added to the first required voltage exceeding the first upper limit voltage, but the deviation between the first required voltage and the first upper limit voltage can also be controlled by PI, or the excess amount can be weighted by applying gain.
[0117] Next, the excess accumulation value Ict1 is limited to 0 or more (S11). Specifically, if the excess accumulation value Ict1 is positive, the excess accumulation value Ict1 is not changed, and if the excess accumulation value Ict1 is negative, the excess accumulation value Ict1 is set to 0.
[0118] Next, it is determined whether the excess cumulative value Ict1 is smaller than Id1*lim (S12). Id1*lim is the absolute value of the first d-axis limit value (-Id1*lim). In this determination, if it is determined that the excess cumulative value Ict1 is smaller than Id1*lim (S12: YES), the first d-axis current command Id1* is set to (-Ict1), that is, set to negative. Therefore, the larger the aforementioned first voltage excess, the lower the first d-axis current command Id1* and thus the first correction voltage are calculated. Furthermore, the larger the cumulative value of the first voltage excess, that is, the excess cumulative value Ict1, the lower the first d-axis current command Id1* and thus the first correction voltage are calculated.
[0119] On the other hand, in the determination of S12, if it is determined that the cumulative value Ict1 is not less than Id1*lim (S12: NO), the first d-axis current command Id1* is set to the first d-axis limit value (-Id1*lim).
[0120] Next, it is determined whether |It*| is larger than Ict1 - Id1*lim (S15). That is, it is determined whether there is room for the first q-axis current command Iq1* to decrease by an amount that exceeds the cumulative value Ict1 by Id1*lim. In this determination, if it is determined that |It*| is larger than Ict1 - Id1*lim (S15: YES), it is determined whether the command value It* is greater than 0 (S16).
[0121] In the decision made in S16, if the command value It* is determined to be greater than 0 (S16: YES), the first q-axis current command Iq1* is set to the value of command value It* minus (Ict1 - Id1*lim) (S17). On the other hand, if the decision made in S16 is determined to be not greater than 0 (S16: NO), the first q-axis current command Iq1* is set to the value of command value It* plus (Ict1 - Id1*lim) (S18). That is, the absolute value of the first q-axis current command Iq1* is reduced according to the sign of the first q-axis current command Iq1* (command value It*). After that, this series of processes is temporarily terminated (end).
[0122] On the other hand, in the determination in S15, if it is determined that |It*| is not greater than Ict1-Id1*lim (S15: NO), the first q-axis current command Iq1* is set to 0 (S19). That is, if there is no room to reduce the absolute value of the first q-axis current command Iq1*, the first q-axis current command Iq1* is set to 0.
[0123] Next, it is determined whether Id2*lim is larger than Ict1 - Id1*lim - |It*| (S20). That is, it is determined whether there is room for the amount that would prevent the amount by which the accumulated value Ict1 is reduced by Id1*lim and the first q-axis current command Iq1* (command value It*) from being reduced by the second d-axis current command Id2*. In this determination, if it is determined that Id2*lim is larger than Ict1 - Id1*lim - |It*| (S20: YES), the second d-axis current command Id2* is set to a negative value that exceeds the accumulated value Ict1 minus Id1*lim and |command value It*| (S21).
[0124] On the other hand, in the determination of S20, if it is determined that Id2*lim is not greater than Ict1-Id1*lim-|It*| (S20: NO), the second d-axis current command Id2* is set to the second d-axis limit value (-Id2*lim). After that, this series of processes is temporarily terminated (end).
[0125] Furthermore, the processing in S10 and S11 is equivalent to the processing of the voltage deviation calculation unit 167 and the field weakening control unit 168, the processing in S12 to S19 is equivalent to the processing of the d-axis current command calculation unit 161 and the q-axis current command calculation unit 162, and the processing in S20 to S22 is equivalent to the processing of the d-axis current command calculation unit 262. In S10 to S22, Id1*, Iq1*, and Id2* corresponding to the excess Ict1 are set in a 1:1 ratio, but as can be seen from equations (1) and (2), since Id1*, Iq1*, and Id2* have different effects on the voltage, the weighting can also be changed. This is also the case in the following embodiments. In addition, in Figure 5 Only the processing of System 1 is shown, but in System 2, if the required voltage exceeds the upper limit voltage, the current command on the System 2 side is not executed. That is, after S19, S20 to S22 are not performed and the process is temporarily terminated.
[0126] Figures 6 to 8 This is a graph showing the NT characteristics of the first and second systems when there is a difference in power supply voltage or the back electromotive force of the two windings is different due to different numbers of turns. Figure 6 This is a graph showing the relationship between the maximum torque and the maximum rotational speed when the first d-axis current command Id1* is negative. It shows the torque at command point P1 in both the first system L1 and the second system L2 when the motor 10 rotates at a speed of Nm1. In this case, in the second system L2, the torque at point P1 can be output at rotational speed Nm1. On the other hand, in the first system L1 when the first d-axis current command Id1* = 0, the torque at point P1 cannot be output at rotational speed Nm1. Therefore, by making the first d-axis current command Id1* negative, as indicated by the arrow, the limit based on the maximum output voltage can be increased. Therefore, in the first system L1, the torque at point P1 can also be output at rotational speed Nm1.
[0127] Figure 7 This is a graph showing the change in the relationship between the maximum torque and the maximum rotational speed when the first d-axis current command Id1* is negative and the first q-axis current command Iq1* is reduced. The graph shows the torque at command point P2 in the first system L1 and the second system L2 when the motor 10 rotates at a speed of Nm2. Here, by making the first d-axis current command Id1* negative, the limit based on the maximum output voltage is increased, as shown by the thick arrow. Furthermore, the first q-axis current command Iq1* is reduced. Therefore, in the first system L1, the torque at output point P3 at the rotational speed Nm2 can be prevented from exceeding the limit based on the maximum output voltage.
[0128] Figure 8This is a graph showing the change in maximum torque relative to the maximum rotational speed when the first q-axis current command Iq1* is reduced. The graph shows the torque at command point P4 in both the first system L1 and the second system L2 when the motor 10 rotates at a speed of Nm3. Here, the first q-axis current command Iq1* is reduced. Therefore, in the first system L1, the torque at output point P5 at a rotational speed of Nm3 can be suppressed from exceeding the limit based on the maximum output voltage.
[0129] The implementation method described above has the following advantages.
[0130] When the first required voltage is higher than the first upper limit voltage, the first control unit 170 corrects the first d-axis current command Id1* and the first q-axis current command Iq1* and controls the first inverter 120. Therefore, it is possible to prevent the required voltage in the first inverter 120 from becoming higher than the first maximum output voltage Vm1, and to prevent the current from becoming uncontrollable and causing unwanted current to flow in the winding group.
[0131] When the first required voltage is higher than the first upper limit voltage, the first control unit 170 calculates the first corrected voltage based on the first corrected q-axis current command that reduces the absolute value of the first q-axis current command Iq1* and the first d-axis current command Id1*. Therefore, in the above equation (2), by reducing the first q-axis current command Iq1*, which is the q-axis current Iq1 of the first winding group 180, to the first corrected q-axis current command, R×Iq1, and thus the q-axis voltage Vq1 of the first winding group 180, can be reduced. Therefore, compared with before the correction, the d-axis voltage Vd1 and the q-axis voltage Vq1 calculated based on the first corrected q-axis current command and the first d-axis current command Id1* can be reduced.
[0132] When the first required voltage is higher than the first upper limit voltage, the first control unit 170 calculates the first corrected voltage based on the first corrected d-axis current command Id1*, which corrects the first d-axis current command Id1* to reduce the back electromotive force of the first winding group 180, and the first q-axis current command Iq1*. Therefore, by correcting the first d-axis current command Id1* to reduce the back electromotive force of the first winding group 180, that is, by making the first d-axis current command Id1*, which is the d-axis current Id1 of the first winding group 180, negative in the above equation (2), the q-axis voltage Vq1 of the first winding group 180 can be reduced. Therefore, compared with before the correction, the d-axis voltage Vd1 and the q-axis voltage Vq1 calculated based on the first corrected d-axis current command and the first q-axis current command Iq1* can be reduced.
[0133] When the first corrected d-axis current command reaches the first d-axis limit value (-Id1*lim), the first control unit 170 calculates the first corrected voltage based on the second corrected d-axis current command Id2*, which is corrected to reduce the back electromotive force of the second winding group 280, the first d-axis limit value (-Id1*lim), and the first q-axis current command Iq1*. Therefore, by correcting the second d-axis current command Id2* to reduce the back electromotive force of the first winding group 180, that is, by making the second d-axis current command Id2*, which is the d-axis current Id2 of the second winding group 280, negative in the above equation (2), the q-axis voltage Vq1 of the first winding group 180 can be reduced. Therefore, compared with before the correction, the d-axis voltage Vd1 and the q-axis voltage Vq1 calculated based on the second corrected d-axis current command, the first d-axis limit value (-Id1*lim), and the first q-axis current command Iq1* can be reduced.
[0134] The greater the first voltage excess (first required voltage - first upper limit voltage) is, the more undesirable large current flows. In this regard, the first control unit 170 can quickly reduce the d-axis voltage Vd1 and the q-axis voltage Vq1 by calculating Ict1 corresponding to the cumulative value of the deviation using PI control or the like within the field weakening control.
[0135] (Second Implementation)
[0136] Hereinafter, with reference to the accompanying drawings, the second embodiment will be described focusing on the differences from the first embodiment.
[0137] There is a concern that the torque command value (2It*) cannot be output in the motor 10 when the first q-axis current command Iq1* is reduced.
[0138] In this regard, the second control unit 270 calculates the d-axis voltage Vd2 and the q-axis voltage Vq2 based on the second modified q-axis current command and the second d-axis current command Id2*, which increase the second q-axis current command Iq2* by an amount corresponding to the decrease (Ict1 - Id1*lim) of the first q-axis current command Iq1*.
[0139] Figure 9 This is a time diagram showing the first required voltage and various current commands. Times t21 and t22 are respectively... Figure 4 The times t11 and t21 are the same. Figure 9 (a) and (b) are respectively with Figure 4 (a) and (b) are the same.
[0140] like Figure 9As shown in (b) and (c), when the first corrected d-axis current command reaches the first d-axis limit value (-Id1*lim) (times t22 to t23), the first q-axis current command Iq1* is reduced, and the amount of reduction of the first q-axis current command Iq1* is increased until the required voltage is within the upper limit voltage or reaches the lower limit value. Furthermore, as... Figure 9 As shown in (c) and (e), the amount by which the second q-axis current command Iq2* increases corresponds to the amount by which the first q-axis current command Iq1* decreases (Ict1 - Id1*lim). The increase in the second q-axis current command Iq2* is to compensate for the decrease in torque that accompanies the decrease in the first q-axis current command Iq1*. Given the difference in back electromotive force between the two windings due to variations in the number of turns, the second q-axis current command Iq2* is increased based on their ratio.
[0141] like Figure 9 As shown in (c) and (d), when the first corrected q-axis current command reaches the first q-axis limit value (-Iq1*lim) (at time t23 and later), the second d-axis current command Id2* is reduced to below 0, and the second d-axis current command Id2* is increased in the negative direction until the required voltage is within the upper limit voltage or reaches the lower limit value. That is, as Figure 9 As shown in (a) to (e), when the first modified d-axis current command reaches the first d-axis limit value (-Id1*lim) (at time t22 and thereafter), the second control unit 270 calculates the d-axis voltage Vd2 and the q-axis voltage Vq2 based on the second modified d-axis current command Id2* which is modified to reduce the back electromotive force of the first winding group 180, the first d-axis limit value (-Id1*lim), and the first q-axis current command Iq1* (specifically the first modified q-axis current command). Furthermore, when the first modified q-axis current command reaches the first q-axis limit value (-Iq1*lim) (at time t23 and thereafter), the second control unit 270 calculates the d-axis voltage Vd2 and the q-axis voltage Vq2 based on the second modified d-axis current command Id2* which is modified to reduce the back electromotive force of the first winding group 180, the first d-axis limit value (-Id1*lim), the first modified q-axis current command (specifically the first q-axis limit value), and the second modified q-axis current command.
[0142] Figure 10 It means as Figure 9 The flowchart shows the sequence of control for correcting the current commands Id1*, Iq1*, Id2*, and Iq2*. This series of processes is repeatedly executed by the first control unit 170 and the second control unit 270 at a predetermined cycle.
[0143] The processing of S30 to S34 and Figure 5The processing of S10 to S14 is the same.
[0144] After processing in S34, it is determined whether Iq1*lim is larger than Ict1 - Id1*lim (S35). That is, it is determined whether there is room for the first q-axis current command Iq1* (command value It*) to be reduced by an amount exceeding the accumulated value Ict1 by Id1*lim. In this determination, if it is determined that Iq1*lim is larger than Ict1 - Id1*lim (S35: YES), it is determined whether the command value It* is greater than 0 (S36).
[0145] In the determination in S36, if the command value It* is determined to be greater than 0 (S36: YES), the first q-axis current command Iq1* is set to the value of It* minus (Ict1 - Id1*lim), and the second q-axis current command Iq2* is set to the value of It* plus (Ict1 - Id1*lim) (S37). On the other hand, in the determination in S36, if the command value It* is determined to be not greater than 0 (S36: NO), the first q-axis current command Iq1* is set to the value of It* plus (Ict1 - Id1*lim), and the second q-axis current command Iq2* is set to the value of It* minus (Ict1 - Id1*lim) (S38). That is, based on the sign of the first q-axis current command Iq1* (command value It*), the first q-axis current command Iq1* is decreased and the second q-axis current command Iq2* is increased, or the first q-axis current command Iq1* is increased and the second q-axis current command Iq2* is decreased. At this time, if the first required voltage is higher than the first upper limit voltage, the following is also performed: the first q-axis current command Iq1* is corrected so that it has a sign opposite to the command value It*. Afterwards, this series of processes is temporarily terminated (end).
[0146] On the other hand, in the determination of S35, if it is determined that Iq1*lim is not greater than Ict1-Id1*lim (S35: NO), it is determined whether the command value It* is greater than 0 (S39). In this determination, if it is determined that the command value It* is greater than 0 (S39: YES), the first q-axis current command Iq1* is set to the first q-axis limit value (-Iq1*lim), and the second q-axis current command Iq2* is set to the value of the command value It* plus Iq1*lim (S40). On the other hand, in the determination of S39, if it is determined that the command value It* is not greater than 0 (S39: NO), the first q-axis current command Iq1* is set to the first q-axis limit value (Iq1*lim), and the second q-axis current command Iq2* is set to the value of the command value It* minus the first q-axis limit value (Iq1*lim) (S41).
[0147] Next, it is determined whether Id2*lim is larger than Ict1-Id1*lim-|It*|-Iq1*lim (S42). That is, it is determined whether there is room for the amount by which the cumulative value Ict1 is reduced by Id1*lim, the first q-axis current command Iq1* (command value It*), and Iq1*lim to be reduced from the second d-axis current command Id2*. In this determination, if it is determined that Id2*lim is larger than Ict1-Id1*lim-|It*|-Iq1*lim (S42: YES), the second d-axis current command Id2* is set to a negative value that exceeds the cumulative value Ict1 minus Id1*lim, |command value It*|, and Iq1*lim (S43).
[0148] On the other hand, in the decision made in S42, if it is determined that Id2*lim is not greater than Ict1-Id1*lim-|It*|-Iq1*lim (S42: NO), the second d-axis current command Id2* is set to the second d-axis limit value (-Id2*lim). After that, this series of processes is temporarily terminated (end).
[0149] Figure 11 This is a graph showing the change in the relationship between the maximum torque and the maximum rotational speed when the positive first q-axis current command Iq1* is reduced to negative. With the motor 10 rotating at a speed of Nm4, the torque at command point P6 in both the first system L1 and the second system L2 is shown. Here, the positive first q-axis current command Iq1* is reduced to negative. Therefore, in the first system L1, the torque at output point P7 can be achieved at a rotational speed of Nm4, suppressing the limit based on the maximum output voltage. If the sum of the torque at point P6 and the torque at point P7 is 0 or more, no reverse torque is generated.
[0150] Figure 12 This is a graph showing the relationship between the maximum torque and the maximum rotational speed when the first q-axis current command Iq1* is reduced and the second q-axis current command Iq2* is increased. The graph shows the torque at command point P8 in the first system L1 and the second system L2 when the motor 10 rotates at a speed of Nm5. Here, the first q-axis current command Iq1* is reduced. Therefore, in the first system L1, the torque at output point P9 at rotational speed Nm5 can be suppressed from exceeding the limit based on the maximum output voltage.
[0151] Furthermore, the second q-axis current command Iq2* is increased. Therefore, the increase in the torque of the motor 10 caused by the increase in the second q-axis current command Iq2* can compensate for the decrease in the torque of the motor 10 caused by the decrease in the first q-axis current command Iq1*. Therefore, it is possible to prevent the torque output by the motor 10 from decreasing below the command value (2It*).
[0152] As described above, when the first d-axis current command Id1* is modified to reduce the back electromotive force of the first winding group 180, the first d-axis current command Id1*, which is the d-axis current Id1 of the first winding group 180, is negative in the above equation (1). In this case, when the first q-axis current command Iq1*, which is the q-axis current Iq1 of the first winding group 180, is positive, both R×Id1 and (-ω×L×Iq1) are negative, and there is a concern that the absolute value of the d-axis voltage Vd1 of the first winding group 180 will increase.
[0153] Regarding this, when the first required voltage is higher than the first upper limit voltage, the first control unit 170 calculates the first corrected voltage based on a first corrected q-axis current command and a first corrected d-axis current command that have been corrected so that the first q-axis current command Iq1* has a sign opposite to the command value It*. Therefore, by making R×Id1 negative and (-ω×L×Iq1) positive, the absolute value of the d-axis voltage Vd1 of the first winding group 180 can be reduced, thereby lowering the first corrected voltage. Furthermore, by making the sign of Iq1 opposite to that of the rotational speed, current flows from the motor towards the power supply, and due to wiring resistance, etc., the input voltage of the inverter relative to the power supply increases, resulting in a larger maximum output voltage.
[0154] (Third Implementation)
[0155] Hereinafter, with reference to the accompanying drawings, the third embodiment will be described focusing on the differences between it and the first and second embodiments.
[0156] In this embodiment, both the first power supply 191 and the second power supply 291 are lead-acid batteries with a rated voltage of 12V, and they are not connected to each other. Furthermore, either the first maximum output voltage Vm1 of the first inverter 120 or the second maximum output voltage Vm2 of the second inverter 220 increases or changes. Additionally, the capacitance of the first power supply 191 and the capacitance of the second power supply 291 may be the same or different.
[0157] Figure 13 This is a block diagram showing the control unit 370 in this embodiment. In this embodiment, the motor control device 80 replaces... Figure 3 The first control unit 170 and the second control unit 270 are replaced by a control unit 370. The control unit 370 replaces... Figure 3 The control unit 370 may have a d-axis and q-axis current command arithmetic unit 361, in addition to the d-axis current command arithmetic unit 161, q-axis current command arithmetic unit 162, d-axis current command arithmetic unit 262, and q-axis current command arithmetic unit 261. The control unit 370 may also have a microcomputer, as in System 1 and System 2, or it may have a single microcomputer.
[0158] The field weakening control unit 168 and the field weakening control unit 268 respectively calculate the excess values Ict1 and Ict2. The d-axis and q-axis current command calculation unit 361, based on the larger of the excess values Ict1 and Ict2, reduces the first d-axis current command Id1* and the second d-axis current command Id2* to below 0, and then increases the first d-axis current command Id1* and the second d-axis current command Id2* in the negative direction until the required voltage is within the upper limit voltage or reaches the lower limit value. That is, as... Figure 14 As shown in (a) and (b), at times t31 to t32, the d-axis and q-axis current command calculation unit 361 calculates the first d-axis current command Id1* to reduce the back electromotive force of the first winding group 180 based on the larger of the cumulative value of the first voltage excess amount (first required voltage - first upper limit voltage) where the first required voltage exceeds the first upper limit voltage and the cumulative value of the second voltage excess amount (second required voltage - second upper limit voltage) where the second required voltage exceeds the second upper limit voltage. Furthermore, in Figure 14 In order to illustrate the series of processes that reduce the first q-axis current command Iq1* after increasing the first d-axis current command Id1* and the second d-axis current command Id2* in the negative direction, a waveform example is depicted in an operating mode where even if the first d-axis current command Id1* and the second d-axis current command Id2* are at the lower limit, the first q-axis current command Iq1* is 0A, and the first required voltage exceeds the first upper limit voltage to become the maximum output voltage.
[0159] At and after the moment when the first corrected d-axis current command reaches the d-axis limit value (-Id*lim), Figure 14 The correction (control) of the first q-axis current command Iq1* and the second q-axis current command Iq2* and Figure 9 The correction (control) of the first q-axis current command Iq1* and the second q-axis current command Iq2* at time t22 and thereafter is the same. Additionally, Figure 14 This is the waveform under the assumption that the second requirement voltage does not exceed the second upper limit voltage.
[0160] Figure 15 It means as Figure 14 The flowchart shows the sequence of control for correcting the current commands Id1*, Iq1*, Id2*, and Iq2*. This series of processes is repeatedly executed by the control unit 370 at a predetermined cycle.
[0161] First, the accumulated value Ict1 is set to the previous accumulated value Ict plus the first voltage excess amount (first required voltage - first upper limit voltage) of the first required voltage exceeding the first upper limit voltage (S50). The accumulated value Ict1 is then restricted to be 0 or higher (S51). Specifically, if the accumulated value Ict1 is positive, the accumulated value Ict1 is not changed, and if the accumulated value Ict1 is negative, the accumulated value Ict2 is set to 0.
[0162] Next, the accumulated value Ict2 is set to the previous accumulated value Ict2 plus the second voltage excess amount (second required voltage - second upper limit voltage) of the second required voltage exceeding the second upper limit voltage (S52). That is, the accumulated value Ict2 is the accumulated value of the second voltage excess amount of the second required voltage exceeding the second upper limit voltage. The accumulated value Ict2 is then limited to 0 or more (S53). Specifically, when the accumulated value Ict2 is positive, it is not changed, and when the accumulated value Ict2 is negative, it is set to 0. Furthermore, when the second required voltage is lower than the second upper limit voltage, the second voltage excess amount is negative.
[0163] Set the larger of the two values, Ict1 and Ict2, as the excess value Ict (S54).
[0164] Next, it is determined whether the excess cumulative value Ict is smaller than Id*lim (S55). Id*lim is the absolute value of the d-axis limit value (-Id*lim). In this determination, if it is determined that the excess cumulative value Ict is smaller than Id*lim (S55: YES), the first d-axis current command Id1* and the second d-axis current command Id2* are set to (-Ict), that is, set to negative. Therefore, the larger the first voltage excess and the second voltage excess, the lower the first d-axis current command Id1* and the second d-axis current command Id2* are calculated, and thus the lower the first correction voltage and the second correction voltage are calculated. Furthermore, the larger the excess cumulative value Ict, the lower the first d-axis current command Id1* and the second d-axis current command Id2* are calculated, and thus the lower the first correction voltage and the second correction voltage are calculated.
[0165] On the other hand, in the determination of S55, if it is determined that the cumulative value Ict is not less than Id*lim (S55: NO), the first d-axis current command Id1* and the second d-axis current command Id2* are set to the d-axis limit value (-Id*lim).
[0166] The processing of S58 to S61 and in Figure 10 In the processing of S35 to S38, the case of replacing the accumulated value Ict1 with the accumulated value Ict and replacing the first d-axis limit value (-Id1*lim) with the d-axis limit value (-Id*lim) is the same.
[0167] The processing of S62 to S64 and Figure 10 The processing of S39 to S41 is the same. After that, the series of processes is temporarily terminated (end).
[0168] Furthermore, the processing of S50 and S52 is equivalent to the processing of the voltage deviation calculation unit 167 and the field weakening control unit 168, the processing of S51, S53 and S54 is equivalent to the processing of the voltage deviation calculation unit 267 and the field weakening control unit 268, and the processing of S55 to S63 is equivalent to the processing of the d-axis and q-axis current command calculation unit 361.
[0169] According to this embodiment, by modifying the first d-axis current command Id1* and the second d-axis current command Id2* based on both Ict11 and Ict2 to reduce the back electromotive force of the first winding group 180 and the second winding group 280, that is, by making the first d-axis current command Id1* and the second d-axis current command Id2* negative in the above equation (2), the q-axis voltage Vq1 of the first winding group 180 and the q-axis voltage Vq2 of the second winding group 280 can be reduced. Furthermore, the first d-axis current command Id1* and the second d-axis current command Id2* are modified based on the larger of the cumulative value of the first voltage excess amount of the first required voltage exceeding the first upper limit voltage and the cumulative value of the second voltage excess amount of the second required voltage exceeding the second upper limit voltage. Since both the first d-axis current command Id1* and the second d-axis current command Id2* are increased in the negative direction at the same time, it is possible to avoid the torque reduction that accompanies the decrease of the first q-axis current command Iq1* through relatively simple processing, and to suppress the required voltage from becoming higher than the maximum output voltages Vm1 and Vm2.
[0170] (Fourth Implementation)
[0171] Hereinafter, with reference to the accompanying drawings, the fourth embodiment will be described focusing on its differences from the first and second embodiments. In this embodiment, the structures of the first control unit 170 and the second control unit 270 are similar to those of the first and second embodiments. Figure 3 same.
[0172] In motor 10, the first winding group 180 and the second winding group 280 are wound in a distributed manner. Therefore, when the sum of the first modified d-axis current command Id1*, which modifies the first d-axis current command to reduce the back electromotive force of the first winding group 180, and the second modified d-axis current command Id2*, which modifies the second d-axis current command to reduce the back electromotive force of the second winding group 280, becomes too large, there is a concern that the permanent magnets of motor 10 may demagnetize.
[0173] In this regard, the first control unit 170 calculates the first corrected d-axis current command, such that the sum of the first corrected d-axis current command and the second corrected d-axis current command is within the d-axis correction amount Id*lim (the specified d-axis correction amount).
[0174] Figure 16 This is a timing diagram representing the first required voltage and various current commands.
[0175] like Figure 16 As shown in (a) and (b), when the first required voltage is higher than the first upper limit voltage (times t41 to t42), the first control unit 170 increases the first d-axis current command Id1* in the negative direction until the required voltage is within the upper limit voltage or reaches the lower limit value. At this time, as Figure 16As shown in (d), corresponding to decreasing the first d-axis current command Id1*, the second d-axis limit value (-Id1*lim sensing), which is the margin for decreasing the second d-axis current command Id2*, is increased. That is, corresponding to increasing the first corrected d-axis current command in the negative direction, the margin for increasing the second corrected d-axis current command in the negative direction is reduced. Furthermore, when increasing the second corrected d-axis current command in the negative direction, corresponding to increasing the second corrected d-axis current command in the negative direction, the margin for increasing the first corrected d-axis current command in the negative direction is reduced.
[0176] At and after the moment when the first corrected d-axis current command reaches the second d-axis limit value (-Id1*lim sensing), Figure 16 The correction (control) of the first q-axis current command Iq1* and the second q-axis current command Iq2* and Figure 9 The correction (control) of the first q-axis current command Iq1* and the second q-axis current command Iq2* at time t22 and thereafter is the same.
[0177] Figure 17 It means as Figure 16 The flowchart shows the sequence of control for correcting the current commands Id1*, Iq1*, Id2*, and Iq2*. This series of processes is repeatedly executed by the first control unit 170 and the second control unit 270 at a predetermined cycle.
[0178] S70 and S71 processing and Figure 5 The processing of S10 and S11 is the same.
[0179] Next, it is determined whether the accumulated value Ict1 is smaller than (Id*lim + Id2*) (S72). Id*lim is the absolute value of the d-axis limit value (-Id*lim sensing). In this determination, if it is determined that the accumulated value Ict1 is smaller than (Id*lim + Id2*) (S72: YES), the first d-axis current command Id1* is set to (-Ict1). In this embodiment, the lower limit value of the first modified d-axis current command is changed according to the magnitude of the second modified d-axis current command by determining the value after adding the d-axis limit value (-Id*lim) and Id2*. However, as long as the sum of the first modified d-axis current command and the second modified d-axis current command can be limited to a predetermined value in the negative direction, other operations can be used.
[0180] On the other hand, in the determination of S72, if it is determined that the cumulative value Ict1 is not less than (Id*lim + Id2*) (S72: NO), the first d-axis current command Id1* is set to (-Id*lim-Id2*). That is, in order to make the sum of the first d-axis correction amount and the second d-axis correction amount within the d-axis correction amount Id*lim, the first d-axis current command Id1* is set to the value of the d-axis limit value (-Id*lim sensing) minus the second d-axis current command Id2*.
[0181] Next, it is determined whether Iq1*lim is larger than Ict1-Id1*lim (S75). That is, it is determined whether there is room for the amount that would prevent the amount by which the accumulated value Ict1 is reduced by the first d-axis current command Id1* from the first q-axis current command Iq1*. In this determination, if it is determined that Iq1*lim is larger than Ict1-Id1*lim (S75: YES), it is determined whether the command value It* is greater than 0 (S76).
[0182] In step S76, if the command value It* is determined to be greater than 0 (S76: YES), the first q-axis current command Iq1* is set to the value of It* minus (Ict1 + Id1*), and the second q-axis current command Iq2* is set to the value of It* plus (Ict1 + Id1*) (S77). Conversely, if the command value It* is determined to be not greater than 0 (S76: NO), the first q-axis current command Iq1* is set to the value of It* plus (Ict1 + Id1*), and the second q-axis current command Iq2* is set to the value of It* minus (Ict1 + Id1*) (S78). Afterward, this series of processes is temporarily terminated (End).
[0183] The processing of S79~S81 and Figure 10 The processing of S39 to S41 is the same. After that, the series of processes is temporarily terminated (end).
[0184] According to this embodiment, the first winding group 180 and the second winding group 280 are wound in a distributed manner. The first control unit 170 calculates a first corrected d-axis current command, such that the sum of the first corrected d-axis current command Id1*, which corrects the first d-axis current command to reduce the back electromotive force of the first winding group 180, and the second corrected d-axis current command Id2*, which corrects the second d-axis current command to reduce the back electromotive force of the second winding group 280, is within the d-axis correction amount Id*lim (a predetermined d-axis correction amount). Therefore, by ensuring that the sum of the first corrected d-axis current command and the second corrected d-axis current command is within the d-axis correction amount Id*lim, the demagnetization of the permanent magnet of the motor 10 can be suppressed.
[0185] (Fifth Implementation)
[0186] Hereinafter, with reference to the accompanying drawings, the fifth embodiment will be described focusing on the differences from the fourth embodiment.
[0187] Figure 18 This is a block diagram showing the control unit 570 in this embodiment. In this embodiment, the motor control device 80 replaces... Figure 13 The control unit 370 includes a control unit 570 instead of a control unit 570. The control unit 570 includes a d-axis and q-axis current command processing unit 561, but does not include... Figure 13 The requirements are voltage calculation units 166 and 266, voltage deviation calculation units 167 and 267, and field weakening control units 168 and 268.
[0188] The d-axis and q-axis current command calculation unit 561 includes a mapping M that defines the relationship between the input voltages Vin1 and Vin2, the angular velocity ω of the motor 10, and the torque command value It*, and the first d-axis current command Id1*, the first q-axis current command Iq1*, the second d-axis current command Id2*, and the second q-axis current command Iq2*. Furthermore, the d-axis and q-axis current command calculation unit 561 calculates current commands Id1*, Iq1*, Id2*, and Iq2* based on the input voltages Vin1 and Vin2 detected by the voltage detection units 140 and 240, the angular velocity ω of the motor 10 detected by the rotation angle sensor 11, the torque command value It*, and the mapping M. Moreover, the mapping M is set to calculate current commands Id1*, Iq1*, Id2*, and Iq2* such that, for example, when the voltage of Vin1 is lower than that of Vin2, ... Figure 14 In this way, after increasing the first d-axis current command Id1* and the second d-axis current command Id2* in the negative direction, the first q-axis current command Iq1* is reduced.
[0189] Based on the above structure, similar to the fourth embodiment, it can also suppress the required voltage from becoming larger than the maximum output voltage.
[0190] (Sixth Implementation Method)
[0191] Hereinafter, with reference to the accompanying drawings, the sixth embodiment will be described focusing on the differences from the fourth embodiment. In this embodiment, the structures of the first control unit 170 and the second control unit 270 are similar to those of the fourth embodiment. Figure 3 same.
[0192] In the motor 10, the first winding group 180 and the second winding group 280 are wound in a distributed manner. Therefore, even if the aforementioned first modified d-axis current command exceeds the first d-axis limit value 1 (-Id*lim1), the back electromotive force of the second winding group 280 can be increased by modifying the second d-axis current command Id2*, thereby canceling the magnetic flux linked with the rotor magnet.
[0193] In this regard, if the first correction d-axis current command exceeds the first d-axis limit value 1 (-Id*lim1), the first control unit 170 corrects the second d-axis current command Id2* so that the back electromotive force of the second winding group 280 increases in accordance with the amount by which the first correction d-axis current command exceeds the first d-axis limit value 1 (-Id*lim1) in the negative direction.
[0194] Figure 19 This is a timing diagram representing the first required voltage and various current commands.
[0195] like Figure 19 As shown in (a) and (b), when the first required voltage is higher than the first upper limit voltage (at times t61 to t62), the first control unit 170 reduces the first d-axis current command Id1* to a value lower than 0 and increases the first d-axis current command Id1* in the negative direction until the required voltage is within the upper limit voltage or reaches the lower limit value.
[0196] Then, as Figure 19 As shown in (a), (b), and (d), when the first corrected d-axis current command reaches the first d-axis limit value 1 (-Id*lim1) (times t62 to t63), corresponding to the amount by which the first corrected d-axis current command exceeds the first d-axis limit value 1 (-Id*lim1) in the negative direction, the second d-axis current command Id2* is increased in the positive direction. That is, when the first corrected d-axis current command exceeds the first d-axis limit value 1 (-Id*lim1) in the negative direction, the second control unit 270 calculates the d-axis voltage Vd2 and the q-axis voltage Vq2 based on the second corrected d-axis current command Id2*, which is corrected to increase the back electromotive force of the second winding group 280 in accordance with the amount by which the first corrected d-axis current command exceeds the first d-axis limit value 1 (-Id*lim1) in the negative direction, and the second q-axis current command Iq2*.
[0197] At time t63 and thereafter, when the first corrected d-axis current command reaches the first d-axis limit value 2 (-Id*lim2), Figure 19 The correction (control) of the first q-axis current command Iq1* and the second q-axis current command Iq2* and Figure 9The correction (control) of the first q-axis current command Iq1* and the second q-axis current command Iq2* at time t22 and thereafter is the same.
[0198] Figure 20 It means as Figure 19 The flowchart shows the sequence of control for correcting the current commands Id1*, Iq1*, Id2*, and Iq2*. This series of processes is repeatedly executed by the first control unit 170 and the second control unit 270 at a predetermined cycle.
[0199] S90 and S91 processing and Figure 5 The processing of S10 and S11 is the same.
[0200] Next, it is determined whether the accumulated value Ict1 is smaller than Id*lim1 (S92). Id*lim1 is the absolute value of the first d-axis limit value 1 (-Id*lim1). In this determination, if it is determined that the accumulated value Ict1 is smaller than Id*lim1 (S92: YES), the first d-axis current command Id1* is set to (-Ict1) (S93).
[0201] On the other hand, in the determination in S92, if it is determined that the accumulated value Ict1 is not less than Id*lim1 (S92: NO), it is determined whether the accumulated value Ict1 is smaller than Id*lim2 (S94). In this determination, if it is determined that the accumulated value Ict1 is smaller than Id*lim1 (S94: YES), the first d-axis current command Id1* is set to (-Ict1), and the second d-axis current command Id2* is set to (Ict1-Id*lim1) (S95). That is, a correction is performed so that the second d-axis current command Id2* is increased corresponding to the first d-axis excess amount (Ict1-Id*lim1) that the first corrected d-axis current command exceeds the first d-axis limit value 1 (-Id*lim1). After that, this series of processes is temporarily terminated (end).
[0202] On the other hand, in the determination in S94, if it is determined that the accumulated value Ict1 is not less than Id*lim2 (S94: NO), the first d-axis current command Id1* is set to (-Id*lim2), and the second d-axis current command Id2* is set to (Id*lim2-Id*lim1) (S96). That is, it is displayed that the first d-axis current command Id1* is not lowered to a level lower than (-Id*lim2).
[0203] The following processing of S97 to S103 and Figure 17 The processing for S75 to S81 is the same. After that, this series of processes is temporarily terminated (end).
[0204] According to this embodiment, when the first modified d-axis current command exceeds the first d-axis limit value 1 (-Id*lim1) in the negative direction, the first control unit 170 calculates the first modified voltage based on the second modified d-axis current command Id2*, which corresponds to the amount by which the first modified d-axis current command exceeds the first d-axis limit value 1 (-Id*lim1) in the negative direction, the first modified d-axis current command, and the first q-axis current command Iq1*. Therefore, the q-axis voltage Vq1 of the first winding group 180 can be reduced, and the amount by which the first modified d-axis current command exceeds the first d-axis limit value 1 (-Id*lim1) in the negative direction can be offset by the second modified d-axis current command.
[0205] (Other implementation methods)
[0206] The embodiments described above can also be modified and implemented as follows. Furthermore, descriptions of parts identical to those in the embodiments described above are omitted by using the same reference numerals.
[0207] It can also replace the accumulated value Ict1 by using the first voltage excess amount (first required voltage - first upper limit voltage) multiplied by a predetermined coefficient. Furthermore, PI control can be applied to the deviation between the first required voltage and the first upper limit voltage. Alternatively, it can replace the accumulated value Ict2 by using the second voltage excess amount (second required voltage - second upper limit voltage) multiplied by a predetermined coefficient. Furthermore, PI control can be applied to the deviation between the second required voltage and the second upper limit voltage.
[0208] • Id1*, Iq1*, Id2*, and Iq2* are set in a 1:1 ratio with respect to the excess Ict1 and excess Ict2. However, as can be seen from equations (1) and (2), since Id1*, Iq1*, and Id2* have different effects on the voltage, the weighting can also be changed. This is also the case in the following embodiments.
[0209] The first control unit 170 can control the first inverter 120 even when the first maximum output voltage Vm1 is lower than the second maximum output voltage Vm2, based on a first correction voltage that is lower than the second required voltage. With this structure, it is also possible to prevent the required voltage in the first inverter 120 from becoming higher than the first maximum output voltage Vm1, thereby preventing the motor 10 from being controlled as intended.
[0210] The control units 370 and 570 can also calculate the first required voltage and the second required voltage based on the command value It* that commands the torque output to the motor 10. If the first maximum output voltage Vm1 is lower than the second maximum output voltage Vm2, the first required voltage is calculated to be lower than the second required voltage. The first inverter 120 is controlled based on the first required voltage, and the second inverter 220 is controlled based on the second required voltage. That is, even when the first maximum output voltage Vm1 is lower than the second maximum output voltage Vm2, both the first inverter 120 and the second inverter 220 can be controlled to reduce the voltage that the first inverter 120 should output to the first winding group 180, i.e., the first output voltage. With this structure, it is also possible to prevent the voltage required in the first inverter 120 from becoming higher than the first maximum output voltage Vm1, thus preventing the motor 10 from being controlled as intended.
[0211] Furthermore, control units 370 and 570 can calculate the first d-axis current command Id1* and the first q-axis current command Iq1*, as well as the second d-axis current command Id2* and the second q-axis current command Iq2*, based on the command value It*. They calculate the first required voltage based on the first d-axis current command Id1* and the first q-axis current command Iq1*, and calculate the second required voltage based on the second d-axis current command Id2* and the second q-axis current command Iq2*. When the first maximum output voltage Vm1 is lower than the second maximum output voltage Vm2, the first q-axis current command Iq1* is calculated to be smaller than the second q-axis current command Iq2*. With this structure, the first required voltage can be made lower than the second required voltage, and the first required voltage can be prevented from becoming higher than the first maximum output voltage Vm1. Therefore, it is possible to suppress the flow of undesirable current in the winding group due to uncontrollable current.
[0212] • It is explained that the d-axis voltage calculation units 164 and 265 and the q-axis voltage calculation units 165 and 264 calculate the voltage of each axis of each system based on the current and current command of each axis of each system. However, it is not necessary to calculate the voltage of each axis of each system based solely on the current and current command of each axis of each system. For the purpose of so-called decoupling control, the current and current command of other systems or axes can also be used to calculate the voltage of each axis.
[0213] As described above, the q-axis voltage calculation unit 165 performs PI control to bring the q-axis deviation ΔIq1 close to 0 and calculates the q-axis voltage Vq1. The d-axis voltage calculation unit 164 performs PI control to bring the d-axis deviation ΔId1 close to 0 and calculates the d-axis voltage Vd1. Furthermore, the q-axis voltage calculation unit 264 performs PI control to bring the q-axis deviation ΔIq2 close to 0 and calculates the q-axis voltage Vq2. The d-axis voltage calculation unit 265 performs PI control to bring the d-axis deviation ΔId2 close to 0 and calculates the d-axis voltage Vd2. In the operation of each system, if the excess Ictl of the other system exceeds a specified value, the motor may be made more difficult to rotate by stopping the integral operation of the PI control or limiting the output voltage, thereby suppressing the exceeding of the maximum output voltage.
[0214] The rated voltage of the first power supply 191 and the second power supply 291 is not limited to 12V, but may also be 48V, etc. Furthermore, the first power supply 191 and the second power supply 291 are not limited to lead-acid batteries, but may also be lithium-ion batteries, etc.
[0215] • As the first output voltage, it can also replace the first required voltage, and the actual value (detected value) of the voltage output by the first inverter 120 can be used.
[0216] • Alternatively, power can be supplied to the first inverter 120 and the second inverter 220 from the first power supply section and the second power supply section after the shared power supply branch, respectively. In this case, due to differences in wiring resistance, the first maximum output voltage Vm1 of the first inverter 120 and the second maximum output voltage Vm2 of the second inverter 220 may differ.
[0217] The steering system 90 is not limited to the "column-assisted type" of the above embodiments, but can also be a "rack-assisted type" that transmits the rotation of the motor 10 to the rack shaft 97. In addition, the steering system 90 can also be a so-called "steer-by-wire type" steering system.
[0218] The motor 10 is not limited to distributed winding, but can also be centrally wound. The motor 10 can also be a motor with four or more phases. The motor 10 is not limited to a motor (IPM motor) in which permanent magnets (magnetic components) are embedded in the rotor, but can also be an excitation motor with excitation windings in the rotor.
[0219] • The motor control device 80 described above can be applied not only to the motor 10 of the electric power steering device, but also to motors that generate driving force for electric vehicles and hybrid vehicles, and motors that drive air conditioners.
[0220] Although this disclosure has been described with reference to embodiments, it should be understood that this disclosure is not limited to the above embodiments and structures. The invention also includes various modifications and equivalent variations. Furthermore, various combinations and arrangements, and further including only one element, or one or more other combinations and arrangements, also fall within the scope and spirit of this invention.
Claims
1. A motor control device, which controls a motor having a first winding group and a second winding group, comprising: The first inverter is connected to the first winding group and is powered by the first power supply unit; The second inverter is connected to the second winding group and is powered by the second power supply unit; as well as The control unit controls the first inverter and the second inverter to reduce the voltage that the first inverter should output to the first winding group, i.e., the first output voltage, when the voltage output by the first inverter becomes higher than the first upper limit voltage set based on the first maximum output voltage. This is done so that the magnitudes of the currents flowing through the first winding group and the second winding group are different, or the output voltage of the second inverter is limited.
2. The motor control device according to claim 1, wherein, The aforementioned control unit includes: The first control unit controls the first inverter based on the first required voltage when the required value of the voltage output by the first inverter, i.e., the first required voltage, is not higher than the first upper limit voltage set based on the first maximum output voltage; and controls the first inverter to reduce the first required voltage when the first required voltage is higher than the first upper limit voltage. as well as The second control unit controls the second inverter based on the required voltage value output by the second inverter, i.e., the second required voltage.
3. The motor control device according to claim 2, wherein, The first control unit calculates the first required voltage based on the command value for the torque output to the motor. If the first required voltage is not higher than a first upper limit voltage set below the first maximum output voltage, the first inverter is controlled based on the first required voltage. If the first required voltage is higher than the first upper limit voltage, the first inverter is controlled to lower the first required voltage. The second control unit calculates the required voltage value, i.e. the second required voltage, of the voltage output by the second inverter based on the instruction value, and controls the second inverter based on the second required voltage.
4. The motor control device according to claim 1, wherein, When the required voltage output by the first inverter is higher than the first upper limit voltage, i.e., the first required voltage, the control unit controls the first inverter to reduce the q-axis current of the first winding group.
5. The motor control device according to claim 3, wherein, The control unit calculates a first d-axis current command that commands the d-axis current of the first winding group and a first q-axis current command that commands the q-axis current based on the command value that commands the torque output to the motor. Based on the first d-axis current command and the first q-axis current command, it calculates the required value of the voltage output by the first inverter, i.e., the first required voltage. If the first required voltage is higher than the first upper limit voltage, it controls the first inverter to reduce the absolute value of the first q-axis current command.
6. The motor control device according to claim 4, wherein, The control unit calculates a second d-axis current command that commands the d-axis current of the second winding group and a second q-axis current command that commands the q-axis current based on the command value that commands the torque output to the motor, and controls the second inverter to increase the second q-axis current command based on the amount of reduction that reduces the q-axis current of the first winding group.
7. The motor control device according to claim 1, wherein, The control unit calculates a first d-axis current command or a first q-axis current command that commands the d-axis current of the first winding group based on the command value that commands the torque output to the motor. Based on the first d-axis current command and the first q-axis current command, it calculates the required value of the voltage output by the first inverter, i.e., the first required voltage. If the first required voltage is higher than the first upper limit voltage, it controls the first inverter to reduce the back electromotive force of the first winding group.
8. The motor control device according to claim 7, wherein, The control unit calculates a second d-axis current command that commands the d-axis current of the second winding group and a second q-axis current command that commands the q-axis current based on the command value. When the first d-axis current command reaches the first d-axis limit value, the control unit controls the second inverter to reduce the back electromotive force of the second winding group. When the first d-axis current command reaches the first d-axis limit value, the control unit controls the first inverter based on the second d-axis current command, the first d-axis limit value, and the first q-axis current command.
9. The motor control device according to claim 7, wherein, The aforementioned first winding group and the aforementioned second winding group are wound in a distributed manner. The control unit calculates a second d-axis current command and a second q-axis current command for the d-axis current of the second winding group based on the command value. If the first d-axis current command exceeds the first d-axis limit value, the control unit controls the second inverter to increase the back electromotive force of the second winding group by an amount corresponding to the first d-axis overshoot amount of the first d-axis current command exceeding the first d-axis limit value. When the first d-axis current command exceeds the first d-axis limit value, the control unit controls the first inverter based on the second d-axis current command, the first d-axis current command, and the first q-axis current command.
10. The motor control device according to claim 7, wherein, The first winding group and the second winding group are wound in a distributed manner. The control unit controls the first inverter so that the sum of the first d-axis correction amount and the second d-axis correction amount is within a specified d-axis correction amount. The first d-axis correction amount is a correction amount that corrects the first d-axis current command to reduce the back electromotive force of the first winding group. The second d-axis correction amount is a correction amount that corrects the second d-axis current command that commands the d-axis current of the second winding group to reduce the back electromotive force of the second winding group.
11. The motor control device according to any one of claims 1 to 10, wherein, When the voltage output by the first inverter becomes higher than the first upper limit voltage set based on the first maximum output voltage, the control unit controls the first inverter so that the first q-axis current command that commands the q-axis current of the first winding group has a positive and negative sign opposite to the positive and negative sign of the command value that commands the torque output to the motor.
12. The motor control device according to claim 3, wherein, The control unit controls the first inverter such that the greater the required voltage value of the first inverter output, i.e. the first required voltage exceeds the first upper limit voltage, the greater the first required voltage exceeds the first upper limit voltage.
13. The motor control device according to claim 12, wherein, The control unit controls the first inverter such that the greater the cumulative value of the first voltage exceeding the limit, the greater the reduction in the first required voltage.
14. The motor control device according to claim 3, wherein, When the first maximum output voltage is lower than the second maximum output voltage that the second inverter can output to the second winding group, the control unit controls the first inverter to make the required voltage value of the first inverter, i.e., the first required voltage, lower than the required voltage value of the second inverter, i.e., the second required voltage.
15. The motor control device according to claim 1, wherein, The control unit calculates the required voltage value (i.e., the first required voltage) of the voltage output by the first inverter and the required voltage value (i.e., the second required voltage) of the voltage output by the second inverter based on the command value of the command to the torque output to the motor. If the first maximum output voltage is lower than the second maximum output voltage, the first required voltage is calculated to be lower than the second required voltage. The first inverter is controlled based on the first required voltage, and the second inverter is controlled based on the second required voltage.
16. The motor control device according to claim 15, wherein, Based on the command value, the control unit calculates a first d-axis current command that commands the d-axis current of the first winding group and a first q-axis current command that commands the q-axis current, as well as a second d-axis current command that commands the d-axis current of the second winding group and a second q-axis current command that commands the q-axis current. Based on the first d-axis current command and the first q-axis current command, the control unit calculates the first required voltage and the second required voltage. If the first maximum output voltage is lower than the second maximum output voltage, the control unit calculates the first q-axis current command to be smaller than the second q-axis current command.
17. The motor control device according to claim 16, wherein, The control unit calculates the first d-axis current command to reduce the back electromotive force of the first winding group based on the greater of the cumulative value of the first voltage exceeding the first upper limit voltage set below the first maximum output voltage and the cumulative value of the second voltage exceeding the second upper limit voltage set below the second maximum output voltage.
18. The motor control device according to claim 1, wherein, The so-called limiting of the above output voltage means limiting the above output voltage to a specified absolute value or below.
19. The motor control device according to claim 1, wherein, The so-called limiting of the above output voltage means stopping the integral calculation in the control based on the deviation between the command value and the actual value of the current flowing through the above second winding group.
20. A steering control system, wherein, have: Motor control device according to any one of claims 1 to 19; Steering mechanism; and The aforementioned motor drives the aforementioned steering mechanism.