WO2024127570A1 - モータ制御装置、およびモータ制御方法 - Google Patents

モータ制御装置、およびモータ制御方法 Download PDF

Info

Publication number
WO2024127570A1
WO2024127570A1 PCT/JP2022/046103 JP2022046103W WO2024127570A1 WO 2024127570 A1 WO2024127570 A1 WO 2024127570A1 JP 2022046103 W JP2022046103 W JP 2022046103W WO 2024127570 A1 WO2024127570 A1 WO 2024127570A1
Authority
WO
WIPO (PCT)
Prior art keywords
inverter
temperature
motor
command value
carrier frequency
Prior art date
Application number
PCT/JP2022/046103
Other languages
English (en)
French (fr)
Inventor
泰亮 佐藤
雄希 奥田
貴哉 塚越
正悟 宮本
滋久 青柳
浩幸 大岩
Original Assignee
日立Astemo株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日立Astemo株式会社 filed Critical 日立Astemo株式会社
Priority to PCT/JP2022/046103 priority Critical patent/WO2024127570A1/ja
Publication of WO2024127570A1 publication Critical patent/WO2024127570A1/ja

Links

Images

Definitions

  • the present invention relates to a motor control device and a motor control method.
  • Patent Document 1 discloses a vehicle drive device that changes the modulation method of PWM control based on the inverter temperature detected by a first temperature detection unit and the motor generator temperature detected by a second temperature detection unit during inefficient control when the battery storage amount is equal to or greater than a predetermined value.
  • Patent Document 1 The device described in Patent Document 1 is unable to efficiently raise the inverter temperature within the temperature limit range.
  • a motor control device is a motor control device that is connected to an inverter that performs power conversion between DC power and AC power, and controls the inverter based on a carrier frequency and a current command value corresponding to a torque command to control driving of a motor with the AC power, and includes a command value generation unit that calculates an inverter energy margin value corresponding to an energy margin of the inverter up to an inverter limit temperature, which is a limit temperature of the inverter, based on a detected temperature of the inverter, and generates a new carrier frequency and current command value to replace the carrier frequency and current command value in accordance with the inverter energy margin value, and when the temperature of the inverter is to be increased, the carrier frequency and current command value are changed to the generated carrier frequency and current command value to control the inverter.
  • a motor control method is a motor control method for a motor control device connected to an inverter that performs power conversion between DC power and AC power, and controls the inverter based on a carrier frequency and a current command value corresponding to a torque command to control driving of the motor with the AC power, the method calculating an inverter energy margin value corresponding to an energy margin of the inverter up to an inverter limit temperature that is a limit temperature of the inverter based on a detected temperature of the inverter, generating new carrier frequency and current command values to replace the carrier frequency and current command value according to the inverter energy margin value, and when raising the temperature of the inverter, controlling the inverter by changing to the newly generated carrier frequency and current command value according to the inverter energy margin value.
  • the inverter temperature can be efficiently increased within the limited temperature range.
  • FIG. 1 is a system configuration diagram of a motor control device.
  • FIG. 2 is a block diagram of the control unit.
  • FIG. 3 is a configuration diagram of the loss calculation unit.
  • FIG. 4 is a configuration diagram of the limit temperature correction unit.
  • FIG. 5 is a configuration diagram of the command value generating unit.
  • FIG. 6 is a configuration diagram of the temperature state determination unit.
  • FIG. 7 is a configuration diagram of the switching determination unit.
  • FIG. 8 is a diagram illustrating an example of the operation of the motor control device.
  • FIG. 1 is a system configuration diagram of a motor control device 1000.
  • the motor control device 1000 includes an inverter 100 and a control unit 200.
  • the motor control device 1000 including the inverter 100 and the control unit 200 is mounted on a vehicle such as an electric vehicle or a hybrid vehicle together with a DC power supply 300 and a motor 400 to drive the vehicle.
  • the motor control device 1000 is connected to the inverter 100 which performs power conversion between DC power and AC power, and controls the inverter 100 based on a current command value and a carrier frequency corresponding to a torque command, thereby controlling the driving of the motor 400 by AC power.
  • the inverter 100 is a power converter that converts DC power to AC power.
  • the inverter 100 is composed of upper and lower arm circuits for three phases. Each arm circuit is equipped with a power semiconductor element and a diode for switching.
  • the power semiconductor element is, for example, an IGBT.
  • the power semiconductor element performs switching operation by a gate signal G output from the control unit 200.
  • the inverter 100 converts the DC power supplied from the DC power source 300 into AC power and outputs three-phase AC current.
  • the three-phase AC current output from the inverter 100 is supplied to the windings of the motor 400, and drives the motor 400 in power running.
  • the inverter 100 makes the motor 400 function as a generator, converts the AC power from the motor 400 into DC power, and this DC power is charged to the DC power source 300, which is a secondary cell such as a battery.
  • the power semiconductor elements in the inverter 100 generate heat due to switching operations, and the temperature is detected by a temperature detector 101 installed near the power semiconductor elements.
  • the detected temperature is output to the control unit 200 as the detected temperature It of the inverter 100.
  • the motor 400 is provided with a position detector 401 that detects the rotational position ⁇ of the motor 400, and the detected rotational position ⁇ is output to the control unit 200.
  • the three-phase AC current between the inverter 100 and the motor 400 is detected by a current detector 402, and the detected current values Iu, Iv, Iw of each phase are output to the control unit 200.
  • the windings etc. generate heat, and the temperature is detected by a temperature detector 403 installed near the windings etc.
  • the detected temperature is output to the control unit 200 as the detected temperature Mt of the motor 400.
  • the vehicle is equipped with an air conditioning system (not shown) for heating and cooling the interior of the vehicle.
  • Refrigerant 500 circulates inside the air conditioning system.
  • the flow path of the refrigerant 500 is also arranged near the inverter 100 and the motor 400, and heat from the inverter 100 and the motor 400 is transferred to the refrigerant, which is used as a heat source for air conditioning of the vehicle.
  • the temperature of the refrigerant near the inverter 100 is detected by a temperature detector 501 installed in the flow path of the refrigerant.
  • the detected temperature is output to the control unit 200 as the refrigerant temperature R1 of the inverter 100.
  • the temperature of the refrigerant near the motor 400 is detected by a temperature detector 502 installed near the flow path of the refrigerant.
  • the detected temperature is output to the control unit 200 as the refrigerant temperature R2 of the motor 400.
  • the control unit 200 refers to the current values Iu, Iv, and Iw detected by the current detector 402 and the rotational position ⁇ detected by the position detector 401 to calculate a voltage command value corresponding to a torque command T* from a higher-level control device (not shown). Then, it outputs the voltage command value and a gate signal G generated by the carrier wave to the inverter 100.
  • the control unit 200 receives a warm-up mode command H* and vehicle deceleration Vr from a higher-level control device (not shown), and changes the carrier frequency and current command value so as to raise the temperatures of the inverter 100 and motor 400 within a range that does not reach the limit temperatures of the inverter 100 and motor 400. Changing the carrier frequency and current command value generates energy loss in the inverter 100 and motor 400, and this energy loss is conducted to the refrigerant as heat. This allows the temperature of the refrigerant to be raised efficiently when it is desired to quickly warm the interior of the vehicle, for example when starting the vehicle. Details of the control unit 200 will be described later.
  • FIG. 2 is a diagram showing the configuration of the control unit 200.
  • the control unit 200 includes a warm-up control unit 210 , a carrier frequency generating unit 220 , and an inverter control unit 230 .
  • the warm-up control unit 210 receives the detected temperature It of the inverter 100, the detected temperature Mt of the motor 400, the vehicle deceleration Vr, the coolant temperature R1 of the inverter 100, the coolant temperature R2 of the motor 400, and the warm-up mode command H*.
  • the vehicle deceleration Vr is input from a higher-level control device (not shown) during regenerative driving of the motor 400.
  • the warm-up control unit 210 receives the torque command T*, the rotation speed ⁇ r of the motor 400, the carrier frequency fc, and the current command value I*.
  • the rotation speed ⁇ r of the motor 400 is calculated by the inverter control unit 230 based on the rotation position ⁇ .
  • the carrier frequency fc is generated by the carrier frequency generation unit 220, which will be described later.
  • the current command value I* is the d-axis current command value Id* and the q-axis current command value Iq* calculated by the inverter control unit 230 based on the torque command T*, and hereinafter these are collectively referred to as the current command value I*.
  • the warm-up control unit 210 Based on the above input, the warm-up control unit 210 generates a new carrier frequency fc and a new current command value I*, and outputs them to the inverter control unit 230 together with the switching signal Ch.
  • the carrier frequency generating unit 220 generates a carrier frequency fc based on the rotation speed ⁇ r of the motor 400, the d-axis voltage command value Vd *, the q-axis voltage command value Vq *, the rotational position ⁇ , the DC voltage value Dv from the DC power supply 300, and the torque command T*, and outputs the carrier frequency fc. Note that the signals input to the carrier frequency generating unit 220 are not shown in the figure.
  • the inverter control unit 230 includes a current command generating unit 231 , a dq axis conversion unit 232 , a UVW coordinate conversion unit 233 , and a gate signal generating unit 234 .
  • the current command generating unit 231 receives the DC voltage value Dv supplied from the DC power supply 300 to the inverter 100, the rotation speed ⁇ r of the motor 400, and the torque command T*, and converts the input torque command T* into a d-axis current command value Id* and a q-axis current command value Iq*. Note that signals other than the torque command T* input to the current command generating unit 231 are not shown in the figure.
  • the dq-axis conversion unit 232 converts the current values Iu, Iv, and Iw detected by the current detector 402 into a d-axis current value Id and a q-axis current value Iq with reference to the rotational position ⁇ . Furthermore, the d-axis current command value Id* is converted into a d-axis voltage command value Vd * based on the d -axis current value Id , and the q-axis current command value Iq* is converted into a q-axis voltage command value Vq * based on the q-axis current value Iq, and output the converted values to the coordinate conversion unit 233.
  • the dq-axis conversion unit 232 receives the d-axis current command value Id* and the q-axis current command value Iq* from the warm-up control unit 210, and when a switching signal Ch is input from the warm-up control unit 210, the d-axis current command value Id* and the q-axis current command value Iq* input from the warm-up control unit 210 are made valid. When the switching signal Ch is not input, the d-axis current command value Id* and the q-axis current command value Iq* input from the current command generation unit 231 are made valid.
  • the coordinate conversion unit 233 converts the d-axis voltage command value V d * and the q-axis voltage command value V q * into three-phase voltage command values Vu, Vv, and Vw of UVW phases, and outputs them to the gate signal generation unit 234 .
  • the gate signal generating unit 234 generates a carrier wave having a triangular waveform based on the carrier frequency fc. Furthermore, the gate signal generating unit 234 compares the carrier wave with the voltage command values Vu, Vv, and Vw, and generates a gate signal G consisting of PWM pulses.
  • the gate signal generating unit 234 receives the carrier frequency fc from the warm-up control unit 210 and the carrier frequency generating unit 220, and when a switching signal Ch is input from the warm-up control unit 210, the carrier frequency fc input from the warm-up control unit 210 is enabled. When the switching signal Ch is not input, the carrier frequency fc input from the carrier frequency generating unit 220 is enabled.
  • the warm-up control unit 210 includes a loss calculation unit 211 , a limit temperature correction unit 212 , a command value generation unit 213 , and a switch determination unit 214 .
  • the loss calculation unit 211 receives as input the torque command T*, the rotation speed ⁇ r of the motor 400, the carrier frequency fc from the carrier frequency generation unit 220, and the current command value I* from the current command generation unit 231.
  • the detected temperature It of the inverter 100, the detected temperature Mt of the motor 400, the refrigerant temperature R1 of the inverter 100, and the refrigerant temperature R2 of the motor 400 are input.
  • the loss calculation unit 211 calculates the loss Li of the inverter 100 and the loss Lm of the motor 400, and outputs them to the limit temperature correction unit 212 and the command value generation unit 213. The details of the loss calculation unit 211 will be described later.
  • the limit temperature correction unit 212 corrects the limit temperature Ri of the inverter 100 and the limit temperature Rm of the motor 400 based on the input loss Li of the inverter 100, loss Lm of the motor 400, detected temperature It of the inverter 100, detected temperature Mt of the motor 400, coolant temperature R1 of the inverter 100, and coolant temperature R2 of the motor 400, and outputs the corrected values to the command value generation unit 213.
  • the limit temperatures Ri and Rm are the upper limit temperatures at which the inverter 100 and the motor 400 operate. Details of the limit temperature correction unit 212 will be described later.
  • the command value generating unit 213 receives the detected temperature It of the inverter 100, the detected temperature Mt of the motor 400, the deceleration Vr of the vehicle, the coolant temperature R1 of the inverter 100, and the coolant temperature R2 of the motor 400. Furthermore, the loss Li of the inverter 100 and the loss Lm of the motor 400 are input from the loss calculation unit 211, and the limit temperature Ri of the inverter 100 and the limit temperature Rm of the motor 400 are input from the limit temperature correction unit 212.
  • the command value generating unit 213 calculates the energy margin up to the limit temperature Ri of the inverter 100 and the limit temperature Rm of the motor 400, generates a new carrier frequency fc and a current command value I* according to this energy margin, and outputs them to the inverter control unit 230.
  • the newly generated carrier frequency fc and current command value I* replace the carrier frequency fc generated by the carrier frequency generating unit 220 and the current command value I* generated by the coordinate conversion unit 233.
  • the motor control device 1000 controls the inverter by changing the carrier frequency fc and the current command value I* generated by the command value generation unit 213 according to the conditions.
  • the current command value I* is represented by the current phase angle and its magnitude. Details of the command value generation unit 213 will be described later.
  • the switching determination unit 214 receives as input the torque command T*, the rotation speed ⁇ r of the motor 400, the carrier frequency fc from the command value generation unit 213, and the warm-up mode command H*. Based on these inputs, the switching determination unit 214 determines whether to permit a change to the carrier frequency fc and the current command value I* generated by the command value generation unit 213. If it is determined that the change is permitted, the switching determination unit 214 outputs a switching signal Ch to the dq axis conversion unit 232 and the gate signal generation unit 234. Details of the switching determination unit 214 will be described later.
  • control unit 200 may also be configured with a computer equipped with a CPU, memory, etc.
  • the computer performs processing by executing a program stored in the memory, etc.
  • all or part of the processing of the multiple blocks may be realized by a hard logic circuit.
  • the program may be provided by being stored in a storage medium in advance. Alternatively, the program may be provided via a network line. It may also be provided as a computer-readable computer program product in various forms, such as a data signal.
  • FIG. 3 is a diagram showing the configuration of the loss calculation unit 211.
  • the loss calculation unit 211 includes loss reference units 2111a and 2111b, time constant time calculation units 2112a and 2112b, and loss integrator units 2113a and 2113b.
  • the loss reference unit 2111a, the time constant time calculation unit 2112a, and the loss integrator unit 2113a of the loss calculation unit 211 calculate the loss Li of the inverter 100.
  • the loss reference unit 2111b, the time constant time calculation unit 2112b, and the loss integrator unit 2113b of the loss calculation unit 211 calculate the loss Lm of the motor 400.
  • the loss reference unit 2111a has a map m1a corresponding to combinations of multiple carrier frequencies fc and multiple current command values I*.
  • the map m1a has maps for high, medium, and small current command values I* when the carrier frequency fc is high, medium, and small, respectively.
  • the three stages of high, medium, and small are just an example, and maps of multiple stages can be set appropriately depending on the memory capacity of the control unit 200, etc.
  • the map m1a pre-stores the loss La [W (watts)] per unit time of the inverter 100 according to the torque and rotational speed of the motor 400 for a specific combination of carrier frequency fc and current command value I*. In the map m1a, torque below 0 indicates the case of regenerative driving.
  • the loss reference unit 2111a selects a map m1a according to the combination of the input carrier frequency fc and the current command value I*, and outputs the loss La [W (watts)] per unit time of the inverter 100 corresponding to the position, i.e., the operating point a1, referenced by the input torque command T* and the rotational speed ⁇ r of the motor 400.
  • the loss La per unit time of the inverter 100 becomes large.
  • the time constant calculation unit 2112a calculates the time it takes for the inverter 100 to increase in temperature and stabilize, that is, the time constant ti, based on the loss per unit time La.
  • the relationship between the value obtained by subtracting the temperature R1 of the refrigerant of the inverter 100 from the detected temperature It of the inverter 100 and the time constant ti is stored in advance as a map, and the time constant ti corresponding to the loss La per unit time is found by referring to this map.
  • the loss accumulator 2113a calculates the loss Li [Wh] of the inverter 100 during the time constant time ti based on the loss per unit time La(t) and the time constant time ti using the following equation (1).
  • the loss reference unit 2111b has a map m1b corresponding to a combination of multiple carrier frequencies fc and current command values I*.
  • the map m1b has maps for the cases where the current command values I* are large, medium, and small when the carrier frequency fc is high, medium, and small, respectively.
  • the three stages of large, medium, and small are just an example, and maps of multiple stages can be set appropriately according to the memory capacity of the control unit 200, etc.
  • the map m1b prestores the loss Lb [W (watts)] per unit time of the motor 400 corresponding to the torque and rotation speed of the motor 400 for a specific combination of the carrier frequency fc and the current command value I*.
  • the loss reference unit 2111b selects the map m1b corresponding to the combination of the input carrier frequency fc and the current command value I*, and outputs the loss Lb [W (watts)] per unit time of the motor 400 corresponding to the position referenced by the input torque command T* and the rotation speed ⁇ r of the motor 400, i.e., the operating point b1.
  • the time constant calculation unit 2112b calculates the time it takes for the temperature of the motor 400 to rise and stabilize, that is, the time constant tm, based on the loss per unit time Lb.
  • the relationship between the value obtained by subtracting the temperature R2 of the coolant of the motor 400 from the detected temperature Mt of the motor 400 and the time constant tm is stored in advance as a map, and the time constant tm corresponding to the loss per unit time Lb is found by referring to this map.
  • the loss accumulation unit 2113b calculates the loss Lm [Wh] of the motor 400 during the time constant time tm based on the loss per unit time Lb(t) and the time constant time tm using the following equation (2).
  • the time constant times ti and tm are found by the time constant time calculation units 2112a and 2112b and are used to calculate the losses Li and Lm, a predetermined fixed time may be used instead of the time constant times ti and tm.
  • FIG. 4 is a diagram showing the configuration of the limit temperature correction unit 212.
  • the limit temperature correction unit 212 includes estimated temperature reference units 2121a and 2121b, differential temperature calculation units 2122a and 2122b, and limit temperature update units 2123a and 2123b.
  • the estimated temperature reference unit 2121a estimates the temperature of the inverter 100 based on the loss Li of the inverter 100, and outputs the estimated temperature Ix. Specifically, the relationship between the temperature Ix of the inverter 100 and the loss [Wh] of the inverter 100 is stored in advance as a map according to the value T1 obtained by subtracting the temperature of the refrigerant of the inverter 100 from the temperature of the inverter 100.
  • the estimated temperature reference unit 2121a adds the loss Li calculated this time to the loss Li' calculated last time, and determines the estimated temperature Ix corresponding to the loss resulting from the addition by referring to the map.
  • the calculation period of the loss is a time period equal to or longer than the time constant time ti.
  • the loss Li' calculated last time is the loss sent from the loss calculation unit 211 and stored in the limit temperature correction unit 212.
  • the differential temperature calculation unit 2122a determines whether the differential temperature obtained by subtracting the estimated temperature Ix from the detected temperature It is greater than a predetermined threshold, and outputs the differential temperature and the determination result to the limit temperature update unit 2123a. If the detected temperature It rises higher than the estimate, the differential temperature becomes larger.
  • the limit temperature update unit 2123a When the limit temperature update unit 2123a receives a judgment result indicating that the limit temperature is greater than the threshold value, it subtracts the difference temperature from the previously updated limit temperature Ri' to lower the limit temperature Ri, and outputs this as the new limit temperature Ri.
  • the previously updated limit temperature Ri' is stored in the limit temperature correction unit 212.
  • the initial value of the limit temperature Ri is a predetermined upper limit temperature at which the inverter 100 operates normally, and is set as the initial value of the limit temperature Ri when the vehicle ignition key is turned on or when the vehicle air conditioning heating is turned on.
  • the estimated temperature reference unit 2121b estimates the temperature of the motor 400 based on the loss Lm of the motor 400, and outputs the estimated temperature Mx. Specifically, the relationship between the temperature of the motor 400 and the loss [Wh] of the motor 400 is stored in advance as a map according to the value T2 obtained by subtracting the temperature of the refrigerant of the motor 400 from the temperature of the motor 400.
  • the estimated temperature reference unit 2121b adds the loss Lm calculated this time to the loss Lm' calculated last time, and determines the estimated temperature Mx corresponding to the loss resulting from the addition by referring to the map.
  • the calculation period of the loss is a time period equal to or longer than the time constant time tm.
  • the loss Lm' calculated last time is the loss sent from the loss calculation unit 211 and stored in the limit temperature correction unit 212.
  • the differential temperature calculation unit 2122b determines whether the differential temperature obtained by subtracting the estimated temperature Mx from the detected temperature Mt is greater than a predetermined threshold, and outputs the differential temperature and the determination result to the limit temperature update unit 2123b. If the detected temperature Mt rises higher than the estimate, the differential temperature becomes larger.
  • the limit temperature update unit 2123b When the limit temperature update unit 2123b receives a judgment result indicating that the limit temperature is greater than the threshold value, it subtracts the difference temperature from the previously updated limit temperature Rm' to lower the limit temperature Rm, and outputs this as the new limit temperature Rm.
  • the previously updated limit temperature Rm' is stored in the limit temperature correction unit 212.
  • the initial value of the limit temperature Rm is a predetermined upper limit temperature at which the motor 400 operates normally, and is set as the initial value of the limit temperature Rm when the vehicle ignition key is turned on or when the vehicle air conditioning heating is turned on.
  • the limit temperature correction unit 212 updates the limit temperature Ri of the inverter 100 in accordance with the error. Also, when an error occurs between the estimated temperature Mx estimated based on the loss Lm of the motor 400 and the detected temperature Mt of the motor 400, the limit temperature correction unit 212 updates the limit temperature Rm of the motor 400 in accordance with the error. This improves the calculation accuracy of the energy margin value determined by the command value generation unit 213 described below.
  • FIG. 5 is a diagram showing the configuration of the command value generating unit 213.
  • the command value generation unit 213 includes energy margin value calculation units 2131 a and 2131 b , command value reference units 2132 a and 2132 b , command value selection units 2133 a and 2133 b , and a temperature state determination unit 2134 .
  • the energy margin calculation unit 2131a calculates an energy margin value Wi according to the energy margin up to the limit temperature Ri of the inverter 100 based on the limit temperature Ri of the inverter 100, the detected temperature It of the inverter 100, the temperature R1 of the coolant of the inverter 100, and the loss Li of the inverter 100. Specifically, as shown in the graph in the energy margin calculation unit 2131a in FIG. 5, the relationship between the temperature of the inverter 100 and the loss [Wh] of the inverter 100 is stored in advance as a map for each value T1 obtained by subtracting the temperature of the coolant of the inverter 100 from the temperature of the inverter 100.
  • the energy margin calculation unit 2131a refers to this map, subtracts the loss Li of the inverter 100 input from the loss calculation unit 211 from the loss L0 of the inverter 100 corresponding to the limit temperature Ri, and outputs the energy margin value Wi to the command value reference unit 2132a.
  • the command value reference unit 2132a determines the carrier frequency and current command value related to the energy loss of the inverter 100 based on the energy margin value Wi and the deceleration rate Vr. Specifically, the command value reference unit 2132a has maps GIa and Gfa corresponding to a plurality of deceleration rates Vr.
  • the map GIa stores in advance the relationship between the amount of energy loss that the inverter 100 can take according to a plurality of carrier frequencies fc, corresponding to each of a plurality of current command values Iz.
  • the map Gfa stores in advance the relationship between the amount of energy loss that the inverter 100 can take according to a plurality of current command values I*, corresponding to each of a plurality of carrier frequencies fz.
  • the values of the maps GIa and Gfa are calculated in advance based on the torque transition up to a speed of 0 based on the deceleration rate Vr during regenerative driving of the motor 400. Note that the torque transition may be calculated in consideration of not only the deceleration rate Vr but also the load amount, vehicle weight, gradient, etc.
  • the energy loss at each torque increases as the carrier frequency increases.
  • the horizontal axis is time and the vertical axis is loss, and the amount of energy loss occurring in the case of carrier frequency fc1 is shown filled in gray as time progresses.
  • the area surrounded by dotted lines in map GIa is the amount of energy loss, which is greater than the amount of energy loss in the case of carrier frequency fc1. This amount of energy loss becomes heat generated by the inverter 100 and becomes a heat source that warms the refrigerant.
  • the command value reference unit 2132a stores in advance as a map the relationship between the amount of energy loss that the inverter 100 can take according to the multiple carrier frequencies fc, corresponding to each of the multiple current command values Iz at each deceleration Vr.
  • the map Gfa shown in the command value reference unit 2132a in FIG. 5 has time on the horizontal axis and loss on the vertical axis, and shows the amount of energy loss that occurs for a current command value I*1 filled in gray as time progresses.
  • the area surrounded by a dotted line in the map Gfa is the amount of energy loss.
  • the command value reference unit 2132a stores in advance as a map the relationship between the amount of energy loss that the inverter 100 can take according to multiple current command values I* and each of multiple carrier frequencies fz at each deceleration Vr.
  • the command value reference unit 2132a refers to maps GIa and Gfa to calculate a combination of carrier frequency and current command value that results in a loss transition that matches the torque transition indicated by the input deceleration Vr and that is closest to the energy margin value Wi.
  • map GIa is referred to to determine p combinations of carrier frequency and current command value
  • map Gfa is referred to determine q combinations of carrier frequency and current command value.
  • the command value reference unit 2132a outputs these two sets of carrier frequency and current command value to the command value selection unit 2133a.
  • the command value selection unit 2133a selects and outputs one of the combinations of carrier frequency and current command value according to a signal indicating the temperature state from the temperature state determination unit 2134, which determines the temperature state of the inverter 100.
  • the graphs shown in the command value selection unit 2133a in FIG. 5 show a graph G1 of the carrier frequency and the amount of loss, and a graph G2 of the current command value and the amount of loss. If the torque is the same, the amount of energy loss is the same for the p group in which the carrier frequency is relatively high and the current command value is relatively low, and the q group in which the carrier frequency is relatively low and the current command value is relatively high.
  • the command value selection unit 2133a selects and outputs a set of q carrier frequencies and current command values in which the carrier frequency is lower than the set of p and the current command value is higher than the set of p.
  • the carrier frequency is selected within the range of the energy margin value Wi of the inverter 100 and is higher than the carrier frequency in normal operation (operation in which the carrier frequency and the current command value are not changed due to the first temperature state S1 to the third temperature state S3).
  • the current command value is selected to be a low value that prioritizes the increase in loss caused by shifting the current command value from its high efficiency point over the increase in loss caused by the increase in carrier frequency. This makes it possible to select a carrier frequency and a current command that maximize the loss of the inverter 100 and the motor 400.
  • a carrier frequency and a current command value of q set are selected.
  • the selected carrier frequency fc is output to the gate signal generation unit 234 and the command value reference unit 2132b, and the current command value I* is output to the command value selection unit 2133b.
  • the carrier frequency is selected to be a low carrier frequency within the range of the energy margin value Wi of the inverter 100. This carrier frequency is a value lower than the carrier frequency selected in the first temperature state.
  • the current command value is shifted from the high efficiency point and a combination with a carrier frequency that is a high value at which the loss increase is maximized is selected. This makes it possible to select a carrier frequency and a current command that maximize the loss of the motor 400 while limiting the loss of the inverter 100.
  • a set p of carrier frequencies and current command values is selected, the set having a higher carrier frequency than the set q and a lower current command value than the set q.
  • a carrier frequency and current command that maximizes the loss of the inverter 100 while limiting the loss of the motor 400.
  • the command value selection unit 2133a outputs the selected carrier frequency fc to the gate signal generation unit 234 and the command value reference unit 2132b, and outputs the current command value I* to the command value selection unit 2133b.
  • the energy margin value calculation unit 2131b calculates an energy margin value Wm according to the energy margin up to the limit temperature Rm of the motor 400 based on the limit temperature Rm of the motor 400, the detected temperature Mt of the motor 400, the temperature R2 of the coolant of the motor 400, and the loss Lm of the motor 400. Specifically, as shown in the graph in the energy margin value calculation unit 2131b in FIG. 5, the relationship between the temperature of the motor 400 and the loss [Wh] of the motor 400 is stored in advance as a map for each value T2 obtained by subtracting the temperature of the coolant of the motor 400 from the temperature of the motor 400.
  • the energy margin value calculation unit 2131b refers to this map, subtracts the loss Lm of the motor 400 input from the loss calculation unit 211 from the loss L1 of the motor 400 corresponding to the limit temperature Rm, calculates the energy margin value Wm, and outputs it to the command value reference unit 2132b.
  • the command value reference unit 2132b determines the carrier frequency and current command value related to the energy loss of the motor 400 based on the energy margin value Wm and the deceleration rate Vr. Specifically, the command value reference unit 2132b has a map GIb corresponding to a plurality of deceleration rates Vr.
  • the map GIb stores in advance the relationship between the amount of energy loss that the motor 400 can assume according to a plurality of current command values I* and each of a plurality of carrier frequencies fz.
  • the values of the map GIb are calculated in advance based on the torque transition up to a speed of 0 based on the deceleration rate Vr during regenerative driving of the motor 400. Note that the torque transition may be calculated taking into account not only the deceleration rate Vr but also the load amount, vehicle weight, gradient, etc.
  • map GIb shown in command value reference section 2132b in FIG. 5 the horizontal axis is time and the vertical axis is loss, and the amount of energy loss that occurs in the case of current command value I*1 is shown filled in gray as time progresses. Furthermore, for current command value I*2, which is greater than current command value I*1, the area surrounded by dotted lines in map GIb is the amount of energy loss, which is greater than the amount of energy loss in the case of current command value I*1. This energy loss becomes heat generated by motor 400, and serves as a heat source for warming the refrigerant.
  • command value reference section 2132b As shown in map GIb in command value reference section 2132b, in command value reference section 2132b, the relationship between the amount of energy loss that motor 400 can take according to multiple current command values I* and each of multiple carrier frequencies fz at each deceleration Vr is stored in advance as a map.
  • the command value reference unit 2132b refers to the map GIb and calculates a current command value that corresponds to the transition of loss in accordance with the transition of torque indicated by the input deceleration Vr, and that results in an energy loss amount that falls within the energy margin value Wm at the carrier frequency fc output from the command value selection unit 2133a.
  • the current command value I* output from the command value selection unit 2133a is corrected to match the energy margin value Wm of the motor 400, so that maximum energy loss, i.e., maximum heat generation, occurs.
  • the command value selection unit 2133b selects and outputs either the current command value corrected by the command value reference unit 2132b or the current command value changed to a current command value lower than the corrected current command value, or the current command value output by the command value selection unit 2133a, depending on a signal indicating the temperature state from the temperature state determination unit 2134, which determines the temperature state of the motor 400.
  • the command value reference unit 2132b selects the corrected current command value and outputs it to the dq axis conversion unit 232. If the corrected current command value does not fall within the energy loss of the inverter 100, the current command value output from the command value selection unit 2133a is output.
  • the current command value corrected by the command value reference unit 2132b or the current command value output by the command value selection unit 2133a is changed to, for example, a value reduced by a predetermined percentage and output.
  • the command value reference unit 2132b may change the current command value I* to a lower value, and the carrier frequency fc output by the command value selection unit 2133a may be changed to a higher value within a range in which the amount of energy loss falls within the energy margin value Wm.
  • a combination of a low current command value and a carrier frequency that maximizes the increase in loss within the range of the energy margin value Wm of the motor 400 is selected.
  • a combination of a current command value and a carrier frequency is selected so that the torque value of the motor 400 is not changed, that is, so that the torque of the motor 400 remains the same as before the change.
  • the command value generating unit 213 prioritizes the inverter 100 side and calculates and controls the carrier frequency and current command value that will maximize the amount of energy loss, so that the temperature of the inverter 100, which has a smaller heat capacity than the motor 400, can be raised first and efficiently.
  • the command value generating unit 213 pre-calculates the torque transition during regenerative driving of the motor 400, and determines the carrier frequency and current command value related to the energy loss of the inverter 100 and the motor 400.
  • the present invention is not limited to this.
  • the command value generating unit 213 may pre-calculate the torque transition and determine the carrier frequency and current command value related to the energy loss of the inverter 100 and the motor 400.
  • FIG. 6 is a diagram showing the configuration of the temperature state determination unit 2134.
  • the temperature state determination unit 2134 includes temperature rise calculation units 2134a and 2134b, and a temperature determination unit 2134c.
  • the temperature state determination unit 2134 determines the first temperature state S1 when the limit temperature Ri of the inverter 100 and the limit temperature Rm of the motor 400 have not been updated, i.e., when there is no error in the estimated temperatures Ix and Mx, determines the second temperature state S2 when the limit temperature Ri of the inverter 100 has been updated, i.e., when there is an error in the estimated temperature Ix, and determines the third temperature state S3 when the limit temperature Rm of the motor 400 has been updated, i.e., when there is an error in the estimated temperature Mx.
  • the temperature rise calculation unit 2134a determines whether the difference temperature obtained by subtracting the previously updated limit temperature Ri' from the limit temperature Ri of the inverter 100 is greater than a predetermined threshold, and outputs the determination result to the temperature determination unit 2134c.
  • the temperature rise calculation unit 2134b determines whether the difference temperature obtained by subtracting the previously updated limit temperature Rm' from the limit temperature Rm of the motor 400 is greater than a predetermined threshold, and outputs the determination result to the temperature determination unit 2134c.
  • the previously updated limit temperatures Ri', Rm' are stored in the temperature state determination unit 2134.
  • the temperature determination unit 2134c determines that the temperature is in the first temperature state S1.
  • the first temperature state S1 indicates that there is no error in the estimated temperatures Ix and Mx of the inverter 100 and the motor 400, and indicates that the inverter 100 and the motor 400 are capable of generating maximum heat.
  • the temperature determination unit 2134c When the temperature determination unit 2134c receives a determination result from the temperature rise calculation unit 2134a that is greater than the threshold, i.e., the temperature of the inverter 100 is close to the limit temperature, it determines that the second temperature state S2 has occurred.
  • the second temperature state S2 indicates that an error has occurred in the estimated temperature Ix of the inverter 100, i.e., the temperature has risen more than the estimated temperature rise, and it is necessary to reduce the heat generation of the inverter 100.
  • the temperature determination unit 2134c receives a determination result from the temperature rise calculation unit 2134b that is greater than the threshold, it determines that the third temperature state S3 has occurred.
  • the third temperature state S3 indicates that an error has occurred in the estimated temperature Mx of the motor 400, i.e., the temperature has risen more than the estimated temperature rise, and it is necessary to reduce the heat generation of the motor 400.
  • the temperature determination unit 2134c receives determination results greater than the threshold from both the temperature rise calculation unit 2134a and the temperature rise calculation unit 2134b, it determines the state as the second temperature state S2 or the third temperature state S3, depending on which is closer to the limit temperature. Specifically, if the temperature of the inverter 100 is closer to the limit temperature than the temperature of the motor 400, it determines the state as the second temperature state S2. If the temperature of the motor 400 is closer to the limit temperature than the temperature of the inverter 100, it determines the state as the third temperature state S3.
  • the temperature state determination unit 2134 may detect that the detected temperatures It, Mt of the inverter 100 and the motor 400 are approaching the limit temperature, and determine the first temperature state S1, the second temperature state S2, or the third temperature state S3. That is, if the temperature of the inverter 100 is not close to the limit temperature Ri of the inverter 100 and the temperature of the motor 400 is not close to the limit temperature Rm of the motor 400, the first temperature state S1 is determined; if the temperature of the inverter 100 is close to the limit temperature Ri of the inverter 100, the second temperature state S2 is determined; and if the temperature of the motor 400 is close to the limit temperature Rm of the motor 400, the third temperature state S3 is determined.
  • FIG. 7 is a diagram showing the configuration of the switching determination unit 214.
  • the switching determination unit 214 determines whether to permit a change to the carrier frequency fc and the current command value I* generated by the command value generation unit 213. Specifically, as shown in Fig. 7, the vertical axis represents the torque command T*, the horizontal axis represents the rotation speed ⁇ r of the motor 400, and maps Gn1, Gn2, and Gn3, in which an area Np where the switching signal Ch is not output is indicated by being filled in gray, are stored in advance according to the carrier frequency fc.
  • Map Gn1 is a map referenced when the carrier frequency fc is low, and indicates conditions under which the rotation speed ⁇ r is slow and the torque is large, making it easy for ripples to occur in the motor 400.
  • Map Gn2 is a map referenced when the carrier frequency fc is in the audible range, and indicates conditions under which the torque is large and making it easy for switching noise of the motor 400 to occur due to torque.
  • Map Gn3 is a map referenced when the carrier frequency fc is high, and indicates conditions under which the motor 400 is easy to make noise at a specific rotation speed ⁇ r. Both of these map maps prestore conditions under which the motor 400 is easy to make noise or vibration.
  • the switching determination unit 214 refers to maps Gn1, Gn2, and Gn3 according to the carrier frequency fc, and outputs the switching signal Ch to the dq-axis conversion unit 232 and the gate signal generation unit 234 if the region Np in which the switching signal Ch is not output is not included based on the torque command T* and the rotation speed ⁇ r.
  • the switching determination unit 214 does not output the switching signal Ch when the warm-up mode command H* is not input. This makes it possible to prevent the motor 400 from generating noise and vibration.
  • the warm-up mode command H* may be input to the control unit 200, and the control unit 200 may operate when the warm-up mode command H* is input.
  • the operation may be performed under various conditions as necessary, not limited to the warm-up mode command H*.
  • the motor control device 1000 starts operation at time t0. Immediately after the start of operation, the temperature It of the inverter 100 and the temperature Mt of the motor 400 are low. After that, at time t1, the warm-up mode is started by the warm-up mode command H*. When the temperature It of the inverter 100 and the temperature Mt of the motor 400 are not close to the limit temperature Ri and the limit temperature Rm, the first temperature state S1 is established, and the inverter 100 and the motor 400 generate maximum heat. Compared to the case not according to this embodiment, the temperatures of the inverter 100 and the motor 400 can be raised more quickly.
  • the temperature of the inverter 100 with the smallest heat capacity can be raised first.
  • the temperature R1 of the refrigerant of the inverter 100 can be raised quickly and used as a heat source for vehicle air conditioning, etc.
  • the state transitions to the second temperature state S2.
  • the carrier frequency is lowered and the current command value is increased.
  • the heat generation of the inverter 100 is suppressed and the heat generation of the motor 400 is increased.
  • the temperature Mt of the motor 400 approaches the limit temperature Rm at time t3, the state goes to the third temperature state S3. In this case, the current command value is lowered to suppress heat generation by the motor 400.
  • the carrier frequency and current command value that result in the maximum amount of energy loss are used based on the energy margin value, so the temperatures of the inverter 100 and the motor 400 can be efficiently increased. If there is a possibility that the inverter 100 and the motor 400 will exceed the limit temperatures Ri and Rm, well-known protection functions are activated.
  • the motor control device 1000 is connected to an inverter 100 that performs power conversion between DC power and AC power, and controls the inverter 100 based on a carrier frequency fc and a current command value I* corresponding to a torque command T* to control driving of the motor 400 using AC power.
  • the motor control method is a motor control method of a motor control device 1000 that is connected to an inverter 100 that performs power conversion between DC power and AC power, and controls the inverter 100 based on a carrier frequency fc and a current command value I* corresponding to a torque command T* to control driving of a motor 400 using AC power.
  • the warm-up control unit 210 calculates the energy margin value Wi of the inverter 100 and the energy margin value Wm of the motor 400, and determines the carrier frequency fc and the current command value I* in the warm-up mode based on the results of these calculations, and outputs them to the inverter control unit 230.
  • At least one of the energy margin value Wi of the inverter 100 and the energy margin value Wm of the motor 400 is calculated, and the carrier frequency fc and the current command value I* in the warm-up mode are determined based on the calculation results, so that the inverter 100 can be controlled.
  • the loss calculation unit 211 does not need to include the loss reference unit 2111b, the time constant calculation unit 2112b, and the loss integration unit 2113b, which are related to the calculation of the loss Lm of the motor 400.
  • the loss calculation unit 211 does not need to include the estimated temperature reference unit 2121b, the difference temperature calculation unit 2122b, and the limit temperature update unit 2123b, which are related to the update of the limit temperature Rm of the motor 400.
  • the loss calculation unit 2131b, the command value reference unit 2132b, and the command value selection unit 2133b which are related to the calculation of the energy margin value Wm of the motor 400 and the determination of the current command value according to the energy margin value Wm, may not be included. In this way, the temperature of the inverter 100 can be efficiently increased in the warm-up mode and used as a heat source for air conditioning, etc.
  • the loss calculation unit 211 does not need to include the loss reference unit 2111a, the time constant calculation unit 2112a, and the loss integration unit 2113a, which are related to the calculation of the loss Li of the inverter 100.
  • the loss calculation unit 211 does not need to include the estimated temperature reference unit 2121a, the differential temperature calculation unit 2122a, and the limit temperature update unit 2123a, which are related to the update of the limit temperature Ri of the inverter 100.
  • the loss calculation unit 2131a, the command value reference unit 2132a, and the command value selection unit 2133a which are related to the calculation of the energy margin value Wi of the inverter 100 and the determination of the carrier frequency and the current command value according to the energy margin value Wi, are not required. In this way, the temperature of the motor 400 can be efficiently increased in the warm-up mode and used as a heat source for air conditioning, etc.

Landscapes

  • Control Of Ac Motors In General (AREA)
  • Inverter Devices (AREA)

Abstract

直流電力と交流電力との電力変換を行うインバータに接続され、トルク指令に応じたキャリア周波数および電流指令値に基づいて前記インバータを制御して、前記交流電力によるモータの駆動を制御するモータ制御装置であって、前記インバータの検出温度に基づいて、前記インバータの制限温度であるインバータ制限温度までの前記インバータのエネルギー余裕度に応じたインバータエネルギー余裕値を演算し、前記インバータエネルギー余裕値に応じて前記キャリア周波数および前記電流指令値に替わる新たなキャリア周波数および電流指令値を生成する指令値生成部を備え、前記インバータの温度を上昇させる場合に、前記指令値生成部で生成された前記キャリア周波数および前記電流指令値に変更して前記インバータを制御するモータ制御装置。

Description

モータ制御装置、およびモータ制御方法
 本発明は、モータ制御装置、およびモータ制御方法に関する。
 近年、車両に搭載された二次電池から供給される電力でモータを駆動するハイブリッド自動車や電気自動車が普及している。このような車両は、直流電力と交流電力との電力変換を行うインバータを備え、インバータを制御することによりモータを駆動している。そして、インバータやモータを冷却する冷媒を車両の空調等の熱源として用いている。このような車両では、車両の始動時等においてインバータが暖まっていない場合は、空調等の熱源としての役割が果たせない。
 特許文献1には、バッテリの蓄電量が所定値以上のときの非効率制御において、第1温度検出部で検出されたインバータの温度、及び第2温度検出部で検出されたモータジェネレータの温度に基づいて、PWM制御の変調方式を変更する車両の駆動装置が開示されている。
日本国特開2021-132464号公報
 特許文献1に記載の装置では、インバータの温度を制限温度の範囲内で効率よく上昇させることができない。
 本発明の第1の態様によるモータ制御装置は、直流電力と交流電力との電力変換を行うインバータに接続され、トルク指令に応じたキャリア周波数および電流指令値に基づいて前記インバータを制御して、前記交流電力によるモータの駆動を制御するモータ制御装置であって、前記インバータの検出温度に基づいて、前記インバータの制限温度であるインバータ制限温度までの前記インバータのエネルギー余裕度に応じたインバータエネルギー余裕値を演算し、前記インバータエネルギー余裕値に応じて前記キャリア周波数および前記電流指令値に替わる新たなキャリア周波数および電流指令値を生成する指令値生成部を備え、前記インバータの温度を上昇させる場合に、前記指令値生成部で生成された前記キャリア周波数および前記電流指令値に変更して前記インバータを制御する。
 本発明の第2の態様によるモータ制御方法は、直流電力と交流電力との電力変換を行うインバータに接続され、トルク指令に応じたキャリア周波数および電流指令値に基づいて前記インバータを制御して、前記交流電力によるモータの駆動を制御するモータ制御装置のモータ制御方法であって、前記インバータの検出温度に基づいて、前記インバータの制限温度であるインバータ制限温度までの前記インバータのエネルギー余裕度に応じたインバータエネルギー余裕値を演算し、前記インバータエネルギー余裕値に応じて前記キャリア周波数および前記電流指令値に替わる新たなキャリア周波数および電流指令値を生成し、前記インバータの温度を上昇させる場合に、前記インバータエネルギー余裕値に応じて前記新たに生成された前記キャリア周波数および前記電流指令値に変更して前記インバータを制御する。
 本発明によれば、インバータの温度を制限温度の範囲内で効率よく上昇させることができる。
図1は、モータ制御装置のシステム構成図である。 図2は、制御部の構成図である。 図3は、損失演算部の構成図である。 図4は、制限温度補正部の構成図である。 図5は、指令値生成部の構成図である。 図6は、温度状態判定部の構成図である。 図7は、切替判定部の構成図である。 図8は、モータ制御装置の動作例を説明する図である。
 以下、図面を参照して本発明の実施形態を説明する。以下の記載および図面は、本発明を説明するための例示であって、説明の明確化のため、適宜、省略および簡略化がなされている。本発明は、他の種々の形態でも実施する事が可能である。特に限定しない限り、各構成要素は単数でも複数でも構わない。
 図1は、モータ制御装置1000のシステム構成図である。
 モータ制御装置1000は、インバータ100と制御部200とを備える。インバータ100および制御部200を備えるモータ制御装置1000は、直流電源300、モータ400とともに、電気自動車やハイブリッド自動車などの車両に搭載されて、車両を駆動する。モータ制御装置1000は、直流電力と交流電力との電力変換を行うインバータ100に接続され、トルク指令に応じた電流指令値及びキャリア周波数に基づいてインバータ100を制御して、交流電力によるモータ400の駆動を制御する。
 インバータ100は、直流電力と交流電力との電力変換を行う電力変換器である。インバータ100は、三相分の上下アーム回路より構成される。各アーム回路は、スイッチング用のパワー半導体素子とダイオードを備えている。パワー半導体素子は、例えばIGBTである。パワー半導体素子は、制御部200から出力されるゲート信号Gによりスイッチング動作する。パワー半導体素子のスイッチング動作により、インバータ100は、直流電源300から供給された直流電力を交流電力に変換し、三相交流電流を出力する。インバータ100より出力された三相交流電流はモータ400の巻線に供給され、モータ400を力行駆動する。さらに、モータ400の回生駆動時には、インバータ100はモータ400を発電機として機能させ、モータ400からの交流電力を直流電力に変換し、この直流電力はバッテリなどの二次電池である直流電源300に充電される。
 インバータ100内のパワー半導体素子は、スイッチング動作により発熱するが、その温度は、パワー半導体素子の近傍に設置された温度検出器101により検出される。検出された温度は、インバータ100の検出温度Itとして制御部200へ出力される。
 モータ400には、モータ400の回転位置θを検出する位置検出器401が設けられ、検出された回転位置θは制御部200へ出力される。また、インバータ100とモータ400との間の三相交流電流は、電流検出器402により検出され、検出された各相の電流値Iu、Iv、Iwは、制御部200へ出力される。モータ400は、駆動されることにより巻線などが発熱するが、その温度は、巻線などの近傍に設置された温度検出器403により検出される。検出された温度は、モータ400の検出温度Mtとして制御部200へ出力される。
 車両には、車内の冷暖房等に供する図示省略した空調装置が備えられている。空調装置の内部には冷媒500が循環している。冷媒500の流通経路は、インバータ100やモータ400の近傍にも配置され、インバータ100やモータ400からの熱が冷媒に伝達されて、冷媒を車両の空調等の熱源として用いる。インバータ100の近傍の冷媒の温度は、その冷媒の流通経路に設置された温度検出器501により検出される。検出された温度は、インバータ100の冷媒の温度R1として制御部200へ出力される。モータ400の近傍の冷媒の温度は、その冷媒の流通経路の近傍に設置された温度検出器502により検出される。検出された温度は、モータ400の冷媒の温度R2として制御部200へ出力される。
 制御部200は、電流検出器402で検出された電流値Iu、Iv、Iwと位置検出器401で検出された回転位置θとを参照して、図示省略した上位の制御装置からのトルク指令T*に応じた電圧指令値を演算する。そして、電圧指令値と搬送波により生成したゲート信号Gをインバータ100へ出力する。
 制御部200は、図示省略した上位の制御装置からの暖機モード指令H*および車両の減速度Vrを受けて、インバータ100やモータ400の温度を、インバータ100やモータ400の制限温度に達しない範囲で上昇させるように、キャリア周波数や電流指令値を変更する。キャリア周波数や電流指令値の変更によりインバータ100やモータ400に損失エネルギーが発生し、この損失エネルギーが熱として冷媒に伝導する。これにより、車両の始動時等において車内を早く暖めたい場合等に冷媒の温度を効率よく上昇させる。制御部200の詳細は後述する。
 図2は、制御部200の構成図である。
 制御部200は、暖機制御部210、キャリア周波数生成部220、インバータ制御部230を備える。
 暖機制御部210には、インバータ100の検出温度It、モータ400の検出温度Mt、車両の減速度Vr、インバータ100の冷媒の温度R1、モータ400の冷媒の温度R2、暖機モード指令H*が入力される。車両の減速度Vrは、図示省略した上位の制御装置よりモータ400の回生駆動時に入力される。さらに、暖機制御部210には、トルク指令T*、モータ400の回転速度ωr、キャリア周波数fc、電流指令値I*が入力される。モータ400の回転速度ωrは、インバータ制御部230が回転位置θに基づいて算出したものである。キャリア周波数fcは、後述のキャリア周波数生成部220で生成されたものである。電流指令値I*は、インバータ制御部230がトルク指令T*を基に算出したd軸電流指令値Id*、q軸電流指令値Iq*であり、以下、これらを総称して電流指令値I*と記載する。暖機制御部210は、上述の入力に基づいて、キャリア周波数fc、電流指令値I*を新たに生成し、切替信号Chと共に、インバータ制御部230へ出力する。
 キャリア周波数生成部220は、モータ400の回転速度ωrと、d軸電圧指令値V*と、q軸電圧指令値V*と、回転位置θと、直流電源300からの直流電圧値Dvと、トルク指令T*に基づいて、キャリア周波数fcを生成し、これを出力する。なお、キャリア周波数生成部220へ入力される信号は、図示を省略している。
 インバータ制御部230は、電流指令生成部231、dq軸変換部232、UVW座標変換部233、ゲート信号生成部234を備える。
 電流指令生成部231には、直流電源300よりインバータ100へ供給される直流電圧値Dvと、モータ400の回転速度ωrと、トルク指令T*が入力され、入力されたトルク指令T*をd軸電流指令値Id*、q軸電流指令値Iq*に変換する。なお、電流指令生成部231へ入力されるトルク指令T*以外の信号は、図示を省略している。
 dq軸変換部232は、電流検出器402で検出された電流値Iu、Iv、Iwを、回転位置θを参照して、d軸電流値Iとq軸電流値Iに変換する。さらに、d軸電流値Iに基づいて、d軸電流指令値Id*をd軸電圧指令値V*に、q軸電流値Iに基づいて、q軸電流指令値Iq*をq軸電圧指令値V*に変換して、座標変換部233へ出力する。dq軸変換部232には、暖機制御部210からのd軸電流指令値Id*、q軸電流指令値Iq*が入力されているが、暖機制御部210より切替信号Chが入力されている場合には、暖機制御部210より入力されているd軸電流指令値Id*、q軸電流指令値Iq*を有効にする。切替信号Chが入力されていない場合には、電流指令生成部231より入力されているd軸電流指令値Id*、q軸電流指令値Iq*を有効にする。
 座標変換部233は、d軸電圧指令値V*とq軸電圧指令値V*をUVW相の3相の電圧指令値Vu、Vv、Vwに変換して、ゲート信号生成部234へ出力する。
 ゲート信号生成部234は、キャリア周波数fcに基づいて三角波の波形形状の搬送波を生成する。さらに、ゲート信号生成部234は、搬送波と電圧指令値Vu、Vv、Vwを比較し、PWMパルスよりなるゲート信号Gを生成する。ゲート信号生成部234には、暖機制御部210およびキャリア周波数生成部220よりキャリア周波数fcが入力されているが、暖機制御部210より切替信号Chが入力されている場合には、暖機制御部210より入力されているキャリア周波数fcを有効にする。切替信号Chが入力されていない場合には、キャリア周波数生成部220より入力されているキャリア周波数fcを有効にする。
 暖機制御部210は、損失演算部211、制限温度補正部212、指令値生成部213、切替判定部214を備える。
 損失演算部211には、トルク指令T*、モータ400の回転速度ωr、キャリア周波数生成部220からのキャリア周波数fc、電流指令生成部231からの電流指令値I*が入力される。さらに、インバータ100の検出温度It、モータ400の検出温度Mt、インバータ100の冷媒の温度R1、モータ400の冷媒の温度R2が入力される。これらの入力を基に、損失演算部211は、インバータ100の損失Liと、モータ400の損失Lmとをそれぞれ演算して、制限温度補正部212および指令値生成部213へ出力する。損失演算部211の詳細は後述する。
 制限温度補正部212は、入力されたインバータ100の損失Li、モータ400の損失Lm、インバータ100の検出温度It、モータ400の検出温度Mt、インバータ100の冷媒の温度R1、モータ400の冷媒の温度R2を基に、インバータ100の制限温度Riと、モータ400の制限温度Rmとをそれぞれ補正して、指令値生成部213へ出力する。制限温度Ri、Rmは、インバータ100、モータ400が動作する上限の温度である。制限温度補正部212の詳細は後述する。
 指令値生成部213には、インバータ100の検出温度It、モータ400の検出温度Mt、車両の減速度Vr、インバータ100の冷媒の温度R1、モータ400の冷媒の温度R2が入力される。さらに、損失演算部211より、インバータ100の損失Li、モータ400の損失Lmが入力され、制限温度補正部212より、インバータ100の制限温度Ri、モータ400の制限温度Rmが入力される。これらの入力を基に、指令値生成部213は、インバータ100の制限温度Riやモータ400の制限温度Rmまでのエネルギー余裕値を演算し、このエネルギー余裕値に応じて新たなキャリア周波数fcや電流指令値I*を生成して、インバータ制御部230へ出力する。この新に生成されるキャリア周波数fcや電流指令値I*は、キャリア周波数生成部220で生成されるキャリア周波数fcや座標変換部233で生成される電流指令値I*に替えるものである。モータ制御装置1000は、条件に応じて指令値生成部213で生成されたキャリア周波数fcおよび電流指令値I*に変更してインバータを制御する。電流指令値I*は、電流位相角とその大きさにより表される。指令値生成部213の詳細は後述する。
 切替判定部214には、トルク指令T*、モータ400の回転速度ωr、指令値生成部213からのキャリア周波数fc、暖機モード指令H*、が入力される。これらの入力を基に、切替判定部214は、指令値生成部213で生成されたキャリア周波数fcおよび電流指令値I*への変更を許可するかを判定する。変更の許可が判定された場合は、切替信号Chをdq軸変換部232、ゲート信号生成部234へ出力する。切替判定部214の詳細は後述する。
 なお、制御部200を複数のブロックの構成で説明したが、制御部200をCPU、メモリなどを備えたコンピュータにより構成してもよい。この場合、コンピュータはメモリなどに記憶されているプログラムを実行することにより処理を行う。また、複数のブロックの全部の処理、または一部の処理をハードロジック回路により実現してもよい。更に、プログラムは、予め記憶媒体に格納して提供してもよい。あるいは、ネットワーク回線によりプログラムを提供してもよい。データ信号などの種々の形態のコンピュータ読み込み可能なコンピュータプログラム製品として提供してもよい。
 図3は、損失演算部211の構成図である。
 損失演算部211は、損失参照部2111a、2111b、時定数時間算出部2112a、2112b、損失積算部2113a、2113bを備える。損失演算部211の損失参照部2111a、時定数時間算出部2112a、損失積算部2113aは、インバータ100の損失Liを演算する。損失演算部211の損失参照部2111b、時定数時間算出部2112b、損失積算部2113bは、モータ400の損失Lmを演算する。
 損失参照部2111aは、複数のキャリア周波数fcと複数の電流指令値I*の組み合わせに対応するマップm1aを備える。マップm1aは、例えば、キャリア周波数fcが大、中、小のそれぞれにおいて、電流指令値I*が大、中、小の場合のマップを備える。大、中、小の3段階は、一例であり、複数の段階のマップを制御部200のメモリ容量等に応じて適宜設定することが出来る。マップm1aには、特定のキャリア周波数fcと電流指令値I*の組み合わせにおいて、モータ400のトルクと回転速度とに応じたインバータ100の単位時間当たりの損失La[W(ワット)]が予め記憶されている。マップm1aにおいてトルクが0以下は、回生駆動の場合を示している。損失参照部2111aは、入力されたキャリア周波数fcと電流指令値I*の組み合わせに応じたマップm1aを選択し、入力されたトルク指令T*とモータ400の回転速度ωrで参照される位置すなわち動作点a1に対応するインバータ100の単位時間当たりの損失La[W(ワット)]を出力する。一般に、キャリア周波数が高い場合は、インバータ100の単位時間当たりの損失Laが大きくなる。
 時定数時間算出部2112aは、単位時間当たりの損失Laにより、インバータ100が温度上昇して安定するまでの時間、すなわち、時定数時間tiを算出する。インバータ100の検出温度Itからインバータ100の冷媒の温度R1を引いた値と時定数時間tiとの関連が予めマップとして記憶されており、このマップを参照して単位時間当たりの損失Laに対応する時定数時間tiを求める。
 損失積算部2113aは、現在の時間をtとしたとき、単位時間当たりの損失La(t)と時定数時間tiに基づいて、次の式(1)により、時定数時間tiの間におけるインバータ100の損失Li[Wh]を演算する。
Figure JPOXMLDOC01-appb-M000001
 損失参照部2111bは、複数のキャリア周波数fcと電流指令値I*の組み合わせに対応するマップm1bを備える。マップm1bは、例えば、キャリア周波数fcが大、中、小のそれぞれにおいて、電流指令値I*が大、中、小の場合のマップを備える。大、中、小の3段階は、一例であり、複数の段階のマップを制御部200のメモリ容量等に応じて適宜設定することが出来る。マップm1bには、特定のキャリア周波数fcと電流指令値I*の組み合わせにおいて、モータ400のトルクと回転速度とに応じたモータ400の単位時間当たりの損失Lb[W(ワット)]が予め記憶されている。損失参照部2111bは、入力されたキャリア周波数fcと電流指令値I*の組み合わせに応じたマップm1bを選択し、入力されたトルク指令T*とモータ400の回転速度ωrで参照される位置すなわち動作点b1に対応するモータ400の単位時間当たりの損失Lb[W(ワット)]を出力する。
 時定数時間算出部2112bは、単位時間当たりの損失Lbにより、モータ400が温度上昇して安定するまでの時間、すなわち、時定数時間tmを算出する。モータ400の検出温度Mtからモータ400の冷媒の温度R2を引いた値と時定数時間tmとの関連が予めマップとして記憶されており、このマップを参照して単位時間当たりの損失Lbに対応する時定数時間tmを求める。
 損失積算部2113bは、現在の時間をtとしたとき、単位時間当たりの損失Lb(t)と時定数時間tmに基づいて、次の式(2)により、時定数時間tmの間におけるモータ400の損失Lm[Wh]を演算する。
Figure JPOXMLDOC01-appb-M000002
 なお、時定数時間算出部2112a、2112bで時定数時間ti、tmを求め、これを用いて損失Li、Lmを演算したが、時定数時間ti、tmの代わりに、予め定められた固定の時間を用いてもよい。
 図4は、制限温度補正部212の構成図である。
 制限温度補正部212は、推定温度参照部2121a、2121b、差分温度算出部2122a、2122b、制限温度更新部2123a、2123bを備える。
 推定温度参照部2121aは、インバータ100の損失Liに基づいてインバータ100の温度を推定し、推定した推定温度Ixを出力する。具体的には、インバータ100の温度からインバータ100の冷媒の温度を引いた値T1に応じて、インバータ100の温度Ixとインバータ100の損失[Wh]との関連が予めマップとして記憶されている。推定温度参照部2121aは、前回に算出された損失Li’に、今回に算出された損失Liを加算し、マップを参照して加算結果の損失に対応する推定温度Ixを求める。損失の演算周期は、時定数時間ti以上の時間周期である。前回に算出された損失Li’は、前回に損失演算部211より送られた損失を制限温度補正部212に記憶している。
 差分温度算出部2122aは、検出温度Itから推定温度Ixを減算した差分温度が予め定められた閾値より大きいかを判定し、差分温度と判定結果を制限温度更新部2123aへ出力する。検出温度Itが推定より上昇すると差分温度は大きくなる。
 制限温度更新部2123aは、閾値より大きいことを示す判定結果を受けた場合に、前回に更新した制限温度Ri’から差分温度を減算して制限温度Riを下げ、これを新たな制限温度Riとして出力する。前回に更新した制限温度Ri’は、制限温度補正部212に記憶している。なお、制限温度Riの初期値はインバータ100が正常に動作する予め定められた上限温度であり、車両のイグニションキーがオンされた場合や車両の空調の暖房がオンされた場合などに制限温度Riの初期値として設定される。
 推定温度参照部2121bは、モータ400の損失Lmに基づいてモータ400の温度を推定し、推定した推定温度Mxを出力する。具体的には、モータ400の温度からモータ400の冷媒の温度を引いた値T2に応じて、モータ400の温度とモータ400の損失[Wh]との関連が予めマップとして記憶されている。推定温度参照部2121bは、前回に算出した損失Lm’に、今回に算出した損失Lmを加算し、マップを参照して加算結果の損失に対応する推定温度Mxを求める。損失の演算周期は、時定数時間tm以上の時間周期である。前回に算出された損失Lm’は、前回に損失演算部211より送られた損失を制限温度補正部212に記憶している。
 差分温度算出部2122bは、検出温度Mtから推定温度Mxを減算した差分温度が予め定められた閾値より大きいかを判定し、差分温度と判定結果を制限温度更新部2123bへ出力する。検出温度Mtが推定より上昇すると差分温度は大きくなる。
 制限温度更新部2123bは、閾値より大きいことを示す判定結果を受けた場合に、前回に更新した制限温度Rm’から差分温度を減算して制限温度Rmを下げ、これを新たな制限温度Rmとして出力する。前回に更新した制限温度Rm’は、制限温度補正部212に記憶している。なお、制限温度Rmの初期値はモータ400が正常に動作する予め定められた上限温度であり、車両のイグニションキーがオンされた場合や車両の空調の暖房がオンされた場合などに制限温度Rmの初期値として設定される。
 以上のように、制限温度補正部212は、インバータ100の損失Liに基づいて推定した推定温度Ixとインバータ100の検出温度Itとに誤差が生じた場合、その誤差に応じてインバータ100の制限温度Riを更新する。また、制限温度補正部212は、モータ400の損失Lmに基づいて推定した推定温度Mxとモータ400の検出温度Mtとに誤差が生じた場合、その誤差に応じてモータ400の制限温度Rmを更新する。これにより、後述の指令値生成部213で求めるエネルギー余裕値の演算精度を向上させる。
 図5は、指令値生成部213の構成図である。
 指令値生成部213は、エネルギー余裕値算出部2131a、2131b、指令値参照部2132a、2132b、指令値選択部2133a、2133b、温度状態判定部2134を備える。
 エネルギー余裕値算出部2131aは、インバータ100の制限温度Ri、インバータ100の検出温度It、インバータ100の冷媒の温度R1、インバータ100の損失Liに基づいて、インバータ100の制限温度Riまでのエネルギー余裕度に応じたエネルギー余裕値Wiを算出する。具体的には、図5のエネルギー余裕値算出部2131a内のグラフに示すように、インバータ100の温度からインバータ100の冷媒の温度を引いた値T1毎に、インバータ100の温度とインバータ100の損失[Wh]との関連が予めマップとして記憶されている。エネルギー余裕値算出部2131aは、このマップを参照して、制限温度Riに対応するインバータ100の損失L0から損失演算部211より入力されたインバータ100の損失Liを減算してエネルギー余裕値Wiを算出し、指令値参照部2132aへ出力する。
 指令値参照部2132aは、エネルギー余裕値Wiと減速度Vrに基づいて、インバータ100のエネルギー損失にかかるキャリア周波数および電流指令値を決定する。具体的には、指令値参照部2132aは、複数の減速度Vrに対応するマップGIaおよびマップGfaを備える。マップGIaには、複数の電流指令値Izのそれぞれに対応して、複数のキャリア周波数fcに応じたインバータ100の取り得るエネルギー損失量との関連が予め記憶されている。マップGfaには、複数のキャリア周波数fzのそれぞれに対応して、複数の電流指令値I*に応じたインバータ100の取り得るエネルギー損失量との関連が予め記憶されている。マップGIa、Gfaの値は、モータ400の回生駆動時において、減速度Vrに基づく速度0までのトルクの推移を基に予め試算して求められたものである。なお、減速度Vrのみならず、積載量、車両重量、勾配などを考慮してトルクの推移を試算してもよい。
 一般に、特定の電流指令値下においては、各トルクにおけるエネルギー損失はキャリア周波数が高くなるほど大きくなる。例えば、図5の指令値参照部2132a内に示すマップGIaは、横軸が時間、縦軸が損失であり、時間の推移に合わせてキャリア周波数fc1の場合に生じるエネルギー損失量をグレイで塗り潰して示している。キャリア周波数fc1より高いキャリア周波数fc2では、マップGIaの点線で囲まれた領域がエネルギー損失量であり、キャリア周波数fc1の場合よりエネルギー損失量が大きくなる。このエネルギー損失量はインバータ100の発熱となり、冷媒を暖める熱源となる。指令値参照部2132a内のマップGIaに示すように、指令値参照部2132aには、各減速度Vrにおいて、複数の電流指令値Izのそれぞれに対応して、複数のキャリア周波数fcに応じたインバータ100の取り得るエネルギー損失量との関連が予めマップとして記憶されている。
 同様に、例えば、図5の指令値参照部2132a内に示すマップGfaは、横軸が時間、縦軸が損失であり、時間の推移に合わせて電流指令値I*1の場合に生じるエネルギー損失量をグレイで塗り潰して示している。電流指令値I*1より高い電流指令値I*2では、マップGfaの点線で囲まれた領域がエネルギー損失量である。指令値参照部2132a内のマップGfaに示すように、指令値参照部2132aには、各減速度Vrにおいて、複数のキャリア周波数fzのそれぞれに対応して、複数の電流指令値I*に応じたインバータ100の取り得るエネルギー損失量との関連が予めマップとして記憶されている。
 指令値参照部2132aは、マップGIa、Gfaを参照して、入力された減速度Vrで示されるトルクの推移に合わせた損失の推移であって、エネルギー余裕値Wiに最も近いエネルギー損失量となるキャリア周波数と電流指令値との組み合わせを算出する。この場合、キャリア周波数を変化させた場合と、電流指令値を変化させた場合とで、キャリア周波数と電流指令値との組み合わせはp組とq組の2組存在する。具体的には、マップGIaを参照して、キャリア周波数と電流指令値との組み合わせであるp組を、マップGfaを参照して、キャリア周波数と電流指令値との組み合わせであるq組を求める。指令値参照部2132aは、この2組のキャリア周波数と電流指令値を指令値選択部2133aへ出力する。
 指令値選択部2133aは、インバータ100の温度状態を判定する温度状態判定部2134からの温度状態を示す信号に応じて、キャリア周波数と電流指令値との組み合わせのいずれかを選択して出力する。図5の指令値選択部2133a内に示すグラフには、キャリア周波数と損失量のグラフG1と電流指令値と損失量のグラフG2を示す。キャリア周波数が相対的に高く、電流指令値が相対的に低いp組と、キャリア周波数が相対的に低く、電流指令値が相対的に高いq組とは、トルクが同じであればエネルギー損失量は同じである。
 指令値選択部2133aは、温度状態判定部2134よりインバータ100やモータ400の温度が制限温度の近くではないこと等を示す第1温度状態S1の信号が入力された場合に、キャリア周波数がp組のものよりも低く、電流指令値がp組のものよりも高いq組のキャリア周波数と電流指令値とを選択してこれを出力する。具体的には、キャリア周波数は、インバータ100のエネルギー余裕値Wiの範囲内でキャリア周波数を通常動作(第1温度状態S1~第3温度状態S3によるキャリア周波数や電流指令値の変更を行わない場合の動作)におけるキャリア周波数より高いキャリア周波数を選択する。また、電流指令値は、キャリア周波数上昇による損失上昇より電流指令値をその高効率点からずらす事による損失上昇を優先する低い値を選択する。これにより、インバータ100とモータ400の損失を最大にするキャリア周波数と電流指令を選択する事ができる。
 一方、温度状態判定部2134よりインバータ100の温度が制限温度の近くであること等を示す第2温度状態の信号が入力された場合に、キャリア周波数がp組のものよりも低く、電流指令値がp組のものよりも高いq組のキャリア周波数と電流指令値とを選択する。選択されたキャリア周波数fcはゲート信号生成部234および指令値参照部2132bへ出力され、電流指令値I*は、指令値選択部2133bへ出力される。具体的には、キャリア周波数は、インバータ100のエネルギー余裕値Wiの範囲内で低いキャリア周波数を選択する。このキャリア周波数は、第1温度状態で選択されるキャリア周波数より低い値である。電流指令値は、その高効率点からずらし、その損失上昇が最大となる高い値となるキャリア周波数との組み合わせを選択する。これにより、インバータ100の損失を制限しつつモータ400の損失を最大とするキャリア周波数と電流指令を選択する事が出来る。
 一方、温度状態判定部2134よりモータ400の温度がモータ400の制限温度の近くであること等を示す第3温度状態の信号が入力された場合に、キャリア周波数がq組のものよりも高く、電流指令値がq組のものよりも低いp組のキャリア周波数と電流指令値とを選択する。具体的には、キャリア周波数は、インバータ100のエネルギー余裕値Wiの範囲内で高いキャリア周波数を選択することで、モータ400の損失を制限しつつインバータ100の損失を最大とするキャリア周波数と電流指令を選択する事が出来る。
 指令値選択部2133aは、選択したキャリア周波数fcをゲート信号生成部234および指令値参照部2132bへ出力し、電流指令値I*を、指令値選択部2133bへ出力する。
 エネルギー余裕値算出部2131bは、モータ400の制限温度Rm、モータ400の検出温度Mt、モータ400の冷媒の温度R2、モータ400の損失Lmに基づいて、モータ400の制限温度Rmまでのエネルギー余裕度に応じたエネルギー余裕値Wmを算出する。具体的には、図5のエネルギー余裕値算出部2131b内のグラフに示すように、モータ400の温度からモータ400の冷媒の温度を引いた値T2毎に、モータ400の温度とモータ400の損失[Wh]との関連が予めマップとして記憶されている。エネルギー余裕値算出部2131bは、このマップを参照して、制限温度Rmに対応するモータ400の損失L1から損失演算部211より入力されたモータ400の損失Lmを減算してエネルギー余裕値Wmを算出し、指令値参照部2132bへ出力する。
 指令値参照部2132bは、エネルギー余裕値Wmと減速度Vrに基づいて、モータ400のエネルギー損失にかかるキャリア周波数および電流指令値を決定する。具体的には、指令値参照部2132bは、複数の減速度Vrに対応するマップGIbを備える。マップGIbには、複数のキャリア周波数fzのそれぞれに対応して、複数の電流指令値I*に応じたモータ400の取り得るエネルギー損失量との関連が予め記憶されている。マップGIbの値は、モータ400の回生駆動時において、減速度Vrに基づく速度0までのトルクの推移を基に予め試算して求められたものである。なお、減速度Vrのみならず、積載量、車両重量、勾配などを考慮してトルクの推移を試算してもよい。
 図5の指令値参照部2132b内に示すマップGIbは、横軸が時間、縦軸が損失であり、時間の推移に合わせて電流指令値I*1の場合に生じるエネルギー損失量をグレイで塗り潰して示している。また、電流指令値I*1より大きい電流指令値I*2では、マップGIbの点線で囲まれた領域がエネルギー損失量であり、電流指令値I*1の場合よりエネルギー損失量が多くなる。このエネルギー損失分がモータ400の発熱となり、冷媒を暖める熱源となる。指令値参照部2132b内のマップGIbに示すように、指令値参照部2132bには、各減速度Vrにおいて、複数のキャリア周波数fzのそれぞれに対応して、複数の電流指令値I*に応じたモータ400の取り得るエネルギー損失量との関連が予めマップとして記憶されている。
 指令値参照部2132bはマップGIbを参照して、入力された減速度Vrで示されるトルクの推移に合わせた損失の推移であって、指令値選択部2133aより出力されたキャリア周波数fcにおいてエネルギー余裕値Wm以内のエネルギー損失量に収まる電流指令値を算出する。換言すれば、指令値選択部2133aより出力された電流指令値I*をモータ400のエネルギー余裕値Wmに合わせて最大限のエネルギー損失、すなわち、最大限の発熱が生じるように、電流指令値I*を補正する。ただし、インバータ100のエネルギー損失内に収まる電流指令値を算出することが望ましい。
 指令値選択部2133bは、モータ400の温度状態を判定する温度状態判定部2134からの温度状態を示す信号に応じて、指令値参照部2132bで補正された電流指令値もしくは補正された電流指令値より低い電流指令値に変更した電流指令値、指令値選択部2133aより出力された電流指令値のいずれかを選択して出力する。
 具体的には、モータ400の温度がモータ400の制限温度の近くであること等を示す第3温度状態S3の信号が入力されていない場合は、指令値参照部2132bで補正された電流指令値を選択してdq軸変換部232へ出力する。なお、補正された電流指令値がインバータ100のエネルギー損失内に収まらない場合は、指令値選択部2133aより出力された電流指令値を出力する。
 第3温度状態S3の信号が入力されている場合は、指令値参照部2132bで補正された電流指令値もしくは指令値選択部2133aより出力された電流指令値を、例えば所定%減じた値に変更して出力する。または、第3温度状態S3の信号が入力されている場合に、指令値参照部2132bで、電流指令値I*を低く変更し、かつエネルギー余裕値Wm以内のエネルギー損失量に収まる範囲で、指令値選択部2133aより出力されたキャリア周波数fcを高く変更してもよい。具体的には、電流指令値は低い値であって、モータ400のエネルギー余裕値Wmの範囲内で損失上昇が最大となるキャリア周波数との組み合わせを選択する。この場合、モータ400のトルク値が変更されないように、すなわち、モータ400のトルクが変更前と同一のままになるように、電流指令値とキャリア周波数の組み合わせを選択する。
 指令値生成部213は、インバータ100側を優先して最大のエネルギー損失量となるキャリア周波数と電流指令値とを算出して制御しているので、熱容量がモータ400と比較して小さいインバータ100の温度を先に効率よく上昇させることできる。
 なお、指令値生成部213は、モータ400の回生駆動時において、トルクの推移を予め試算して、インバータ100やモータ400のエネルギー損失にかかるキャリア周波数および電流指令値を決定する例を説明した。これに限らず、モータ400の力行駆動時において、トルクの推移を予め試算して、インバータ100やモータ400のエネルギー損失にかかるキャリア周波数および電流指令値を決定してもよい。
 図6は、温度状態判定部2134の構成図である。
 温度状態判定部2134は、温度上昇算出部2134a、2134b、温度判定部2134cを備える。
 温度状態判定部2134は、インバータ100の制限温度Riおよびモータ400の制限温度Rmが更新されていない場合に、すなわち、推定温度Ix、Mxに誤差が生じていない場合に、第1温度状態S1と判定し、インバータ100の制限温度Riが更新されている場合に、すなわち、推定温度Ixに誤差が生じている場合に、第2温度状態S2と判定し、モータ400の制限温度Rmが更新されている場合に、すなわち、推定温度Mxに誤差が生じている場合に、第3温度状態S3と判定する。
 温度上昇算出部2134aは、インバータ100の制限温度Riから前回に更新した制限温度Ri’を減算した差分温度が予め定められた閾値より大きいかを判定し、判定結果を温度判定部2134cへ出力する。温度上昇算出部2134bは、モータ400の制限温度Rmから前回に更新した制限温度Rm’を減算した差分温度が予め定められた閾値より大きいかを判定し、判定結果を温度判定部2134cへ出力する。前回に更新した制限温度Ri’、Rm’は、温度状態判定部2134に記憶している。
 温度判定部2134cは、温度上昇算出部2134a、2134bのいずれからも閾値より大きい判定結果が入力されていない場合は、第1温度状態S1と判定する。第1温度状態S1は、インバータ100およびモータ400の推定温度Ix、Mxに誤差が生じていないことを示し、インバータ100およびモータ400を最大限に発熱することが可能であることを示している。
 温度判定部2134cは、温度上昇算出部2134aから閾値より大きい判定結果が入力されている場合、すなわち、インバータ100の温度が制限温度の近くであり、第2温度状態S2と判定する。第2温度状態S2は、インバータ100の推定温度Ixに誤差が生じている、すなわち、推定した温度上昇より温度が上昇していることを示し、インバータ100の発熱を低減する必要があることを示している。また、温度判定部2134cは、温度上昇算出部2134bから閾値より大きい判定結果が入力されている場合、すなわち、第3温度状態S3と判定する。第3温度状態S3は、モータ400の推定温度Mxに誤差が生じている、すなわち、推定した温度上昇より温度が上昇していることを示し、モータ400の発熱を低減する必要があることを示している。
 なお、温度判定部2134cは、温度上昇算出部2134aおよび温度上昇算出部2134bからともに閾値より大きい判定結果が入力されている場合は、制限温度の近い方に対応して第2温度状態S2または第3温度状態S3と判定する。具体的には、インバータ100の温度がモータ400の温度より制限温度の近くであれば第2温度状態S2と判定する。モータ400の温度がインバータ100の温度より制限温度の近くであれば第3温度状態S3と判定する。
 なお、温度状態判定部2134は、インバータ100やモータ400の検出温度It、Mtが制限温度に近くなったことを検出して、第1温度状態S1、第2温度状態S2、第3温度状態S3を判定してもよい。すなわち、インバータ100の温度がインバータ100の制限温度Riの近くではなく、モータ400の温度がモータ400の制限温度Rmの近くではない場合に、第1温度状態S1と判定し、インバータ100の温度がインバータ100の制限温度Riの近くである場合に、第2温度状態S2と判定し、モータ400の温度がモータ400の制限温度Rmの近くである場合に、第3温度状態S3と判定する。
 図7は、切替判定部214の構成図である。
 切替判定部214は、指令値生成部213で生成されたキャリア周波数fcおよび電流指令値I*へ変更することを許可するかを判定する。具体的には、図7に示すように、縦軸がトルク指令T*、横軸がモータ400の回転速度ωrであって、切替信号Chを出力しない領域Npをグレイの塗りつぶしで示すマップGn1、Gn2、Gn3が、キャリア周波数fcに応じて予め記憶されている。
 マップGn1は、キャリア周波数fcが低い場合に参照されるマップであり、回転速度ωrが遅くトルクが大きくモータ400のリプルが発生し易い条件を示している。マップGn2は、キャリア周波数fcが可聴領域で参照されるマップであり、トルクが大きくトルクによるモータ400の切り替え音が発生し易い条件を示している。マップGn3は、キャリア周波数fcが高い場合に参照されるマップであり、特定の回転速度ωrでのモータ400の音が発生し易い条件を示している。いずれも、モータ400の音や振動が発生し易い条件を予め記憶している。
 切替判定部214は、暖機モード指令H*が入力されている場合に、キャリア周波数fcに応じたマップGn1、Gn2、Gn3を参照して、トルク指令T*および回転速度ωrを基に、切替信号Chを出力しない領域Npに該当しない場合に、切替信号Chをdq軸変換部232、ゲート信号生成部234へ出力する。切替判定部214は、暖機モード指令H*が入力されていない場合は、切替信号Chを出力しない。これにより、モータ400の音や振動が発生することを回避できる。なお、暖機モード指令H*を切替判定部214に入力する例で説明したが、暖機モード指令H*を制御部200へ入力し、制御部200は、暖機モード指令H*が入力されている場合に動作を行うようにしてもよい。また、暖機モード指令H*に限らず、必要に応じて種々の条件で動作を行うようにしてもよい。
 図8は、モータ制御装置1000の動作例を説明する図である。縦軸は温度、横軸は時間である。
 モータ制御装置1000は、時刻t0で動作を開始する。動作開始直後はインバータ100の温度Itやモータ400の温度Mtは低い。その後、時刻t1で暖機モード指令H*により暖機モードになる。インバータ100の温度Itやモータ400の温度Mtが制限温度Ri、制限温度Rmに近くない場合は、第1温度状態S1であり、インバータ100およびモータ400を最大限に発熱する。本実施形態によらない場合と比較して、インバータ100およびモータ400の温度を早く上昇させることができる。特に、インバータ100側を優先して最大のエネルギー損失量となるキャリア周波数と電流指令値とを算出しているので、熱容量が小さいインバータ100からその温度を上昇させることができる。これにより、インバータ100の冷媒の温度R1を早く上昇させて車両の空調等の熱源として用いることができる。
 時刻t2でインバータ100の温度Itが制限温度Riに近くなった場合は、第2温度状態S2となる。この場合には、キャリア周波数を低く、電流指令値を高くする。相対的に、インバータ100の発熱を抑え、モータ400の発熱を大きくする。
 時刻t3でモータ400の温度Mtが制限温度Rmに近くなった場合は、第3温度状態S3となる。この場合には、電流指令値を低くしてモータ400の発熱を抑える。 
 いずれの場合も、エネルギー余裕値を基に、最大のエネルギー損失量となるキャリア周波数と電流指令値とを用いているので、効率よくインバータ100やモータ400の温度を上昇させることができる。なお、インバータ100やモータ400が制限温度Ri、Rmを超える可能性がある場合は、周知の保護機能を動作させる。
 以上説明した実施形態によれば、次の作用効果が得られる。
(1)モータ制御装置1000は、直流電力と交流電力との電力変換を行うインバータ100に接続され、トルク指令T*に応じたキャリア周波数fcおよび電流指令値I*に基づいてインバータ100を制御して、交流電力によるモータ400の駆動を制御する。そして、インバータ100の検出温度Itに基づいて、インバータ100の制限温度であるインバータ制限温度Riまでのインバータ100のエネルギー余裕度に応じたインバータエネルギー余裕値Wiを演算し、インバータエネルギー余裕値Wiに応じてキャリア周波数fcおよび電流指令値I*に替わる新たなキャリア周波数fcおよび電流指令値I*を生成する指令値生成部213を備え、インバータ100の温度を上昇させる場合に、指令値生成部213で生成されたキャリア周波数fcおよび電流指令値I*に変更してインバータ100を制御する。これにより、インバータの温度を制限温度Riの範囲内で効率よく上昇させることできる。
(2)モータ制御方法は、直流電力と交流電力との電力変換を行うインバータ100に接続され、トルク指令T*に応じたキャリア周波数fcおよび電流指令値I*に基づいてインバータ100を制御して、交流電力によるモータ400の駆動を制御するモータ制御装置1000のモータ制御方法である。そして、インバータ100の検出温度Itに基づいて、インバータ100の制限温度であるインバータ制限温度Riまでのインバータ100のエネルギー余裕度に応じたインバータエネルギー余裕値Wiを演算し、インバータエネルギー余裕値Wiに応じてキャリア周波数fcおよび電流指令値I*に替わる新たなキャリア周波数fcおよび電流指令値I*を生成し、インバータ100の温度を上昇させる場合に、エネルギー余裕値Wiに応じて生成されたキャリア周波数fcおよび電流指令値I*に変更してインバータ100を制御する。これにより、インバータの温度を制限温度Riの範囲内で効率よく上昇させることできる。
 なお、以上説明した実施形態では、暖機制御部210において、インバータ100のエネルギー余裕値Wiと、モータ400のエネルギー余裕値Wmとをそれぞれ演算し、これらの演算結果に基づいて、暖機モードにおけるキャリア周波数fcと電流指令値I*を決定して、インバータ制御部230へ出力する例を説明した。しかしながら、インバータ100のエネルギー余裕値Wiと、モータ400のエネルギー余裕値Wmとのいずれか一方のみを演算し、その演算結果に基づいて、暖機モードにおけるキャリア周波数fcと電流指令値I*を決定してもよい。すなわち本発明では、インバータ100のエネルギー余裕値Wiおよびモータ400のエネルギー余裕値Wmの少なくとも一方を演算し、その演算結果に基づいて暖機モードにおけるキャリア周波数fcと電流指令値I*を決定することで、インバータ100の制御を行うことができる。
 なお、インバータ100のエネルギー余裕値Wiの演算結果のみを用いる場合、損失演算部211は、モータ400の損失Lmの演算に係る損失参照部2111b、時定数時間算出部2112bおよび損失積算部2113bを備えなくてもよい。また、モータ400の制限温度Rmの更新に係る推定温度参照部2121b、差分温度算出部2122bおよび制限温度更新部2123bを備えなくてもよい。さらに、モータ400のエネルギー余裕値Wmの演算およびエネルギー余裕値Wmに応じた電流指令値の決定に係るエネルギー余裕値算出部2131b、指令値参照部2132bおよび指令値選択部2133bを備えなくてもよい。このようにすれば、暖機モードにおいてインバータ100の温度を効率よく上昇させて空調等の熱源に利用することができる。
 一方、モータ400のエネルギー余裕値Wmの演算結果のみを用いる場合、損失演算部211は、インバータ100の損失Liの演算に係る損失参照部2111a、時定数時間算出部2112aおよび損失積算部2113aを備えなくてもよい。また、インバータ100の制限温度Riの更新に係る推定温度参照部2121a、差分温度算出部2122aおよび制限温度更新部2123aを備えなくてもよい。さらに、インバータ100のエネルギー余裕値Wiの演算およびエネルギー余裕値Wiに応じたキャリア周波数と電流指令値の決定に係るエネルギー余裕値算出部2131a、指令値参照部2132aおよび指令値選択部2133aを備えなくてもよい。このようにすれば、暖機モードにおいてモータ400の温度を効率よく上昇させて空調等の熱源に利用することができる。
 本発明は、上述の実施形態に限定されるものではなく、本発明の特徴を損なわない限り、本発明の技術思想の範囲内で考えられるその他の形態についても、本発明の範囲内に含まれる。
 100・・・インバータ、101・・・温度検出器、200・・・制御部、210・・・暖機制御部、211・・・損失演算部、212・・・制限温度補正部、213・・・指令値生成部、214・・・切替判定部、220・・・キャリア周波数生成部、230・・・インバータ制御部、231・・・電流指令生成部、232・・・dq軸変換部、233・・・UVW座標変換部、234・・・ゲート信号生成部、300・・・直流電源、400・・・モータ、401・・・位置検出器、402・・・電流検出器、500・・・冷媒、502・・・温度検出器、1000・・・モータ制御装置、2111a、2111b・・・損失参照部、2112a、2112b・・・時定数時間算出部、2113a、2113b・・・損失積算部、2121a、2121b・・・推定温度参照部、2122a、2122b・・・差分温度算出部、2123a、2123b・・・制限温度更新部、2131a、2131b・・・エネルギー余裕値算出部、2132a、2132b・・・指令値参照部、2133a、2133b・・・指令値選択部、2134・・・温度状態判定部、It、Mt・・・検出温度、Vr・・・減速度、R1、R2・・・冷媒の温度、H*・・・暖機モード指令、T*・・・トルク指令、ωr・・・回転速度、fc・・・キャリア周波数、I*・・・電流指令値、θ・・・回転位置、Ch・・・切替信号、Li、Lm・・・損失、Ri、Rm・・・制限温度、Wi、Wm・・・エネルギー余裕値。

Claims (13)

  1.  直流電力と交流電力との電力変換を行うインバータに接続され、トルク指令に応じたキャリア周波数および電流指令値に基づいて前記インバータを制御して、前記交流電力によるモータの駆動を制御するモータ制御装置であって、
     前記インバータの検出温度に基づいて、前記インバータの制限温度であるインバータ制限温度までの前記インバータのエネルギー余裕度に応じたインバータエネルギー余裕値を演算し、前記インバータエネルギー余裕値に応じて前記キャリア周波数および前記電流指令値に替わる新たなキャリア周波数および電流指令値を生成する指令値生成部を備え、
     前記インバータの温度を上昇させる場合に、前記指令値生成部で生成された前記キャリア周波数および前記電流指令値に変更して前記インバータを制御するモータ制御装置。
  2.  請求項1に記載のモータ制御装置において、
     前記トルク指令、前記モータの回転速度、前記電流指令値および前記キャリア周波数に基づいて、前記インバータの所定の時間における損失を求める損失演算部を備え、
     前記指令値生成部は、前記損失演算部で求められた前記インバータの損失に基づいて前記インバータエネルギー余裕値を演算するモータ制御装置。
  3.  請求項2に記載のモータ制御装置において、
     前記インバータの損失に基づいて推定した推定温度が前記インバータの検出温度と誤差が生じた場合、その誤差に応じて前記インバータ制限温度を更新する制限温度補正部を備えるモータ制御装置。
  4.  請求項3に記載のモータ制御装置において、
     前記指令値生成部は、前記インバータの温度状態を判定する温度状態判定部を備え、
     前記温度状態判定部は、前記インバータの温度が前記インバータ制限温度の近くではない場合に、または、前記インバータの損失に基づいて推定した前記推定温度に誤差が生じていない場合に、第1温度状態と判定し、
     前記指令値生成部は、前記第1温度状態である場合には、前記キャリア周波数を高い値に、前記電流指令値を低い値に生成するモータ制御装置。
  5.  請求項4に記載のモータ制御装置において、
     前記温度状態判定部は、前記インバータの温度が前記インバータ制限温度の近くである場合に、または、前記インバータの損失に基づいて推定した前記推定温度に誤差が生じている場合に、第2温度状態と判定し、前記指令値生成部は、前記第2温度状態である場合には、前記電流指令値を高い値に前記キャリア周波数を低い値に生成するモータ制御装置。
  6.  請求項5に記載のモータ制御装置において、
     前記指令値生成部は、前記モータの検出温度に基づいて、前記モータの制限温度であるモータ制限温度までの前記モータのエネルギー余裕度に応じたモータエネルギー余裕値を演算し、前記モータエネルギー余裕値に応じて前記新たな前記電流指令値を生成するモータ制御装置。
  7.  請求項6に記載のモータ制御装置において、
     前記制限温度補正部は、前記モータの損失に基づいて推定した推定温度が前記モータの検出温度と誤差が生じた場合、その誤差に応じて前記モータ制限温度を更新し、
     前記温度状態判定部は、前記モータの温度が前記モータ制限温度の近くである場合に、または、前記モータの損失に基づいて推定した前記推定温度に誤差が生じている場合に、第3温度状態と判定し、
     前記指令値生成部は、前記第3温度状態である場合には、そうでない場合よりも前記新たな前記電流指令値を低い値に生成するモータ制御装置。
  8.  請求項7に記載のモータ制御装置において、
     前記温度状態判定部は、前記第1温度状態として、前記インバータの温度が前記インバータ制限温度の近くでなく、かつ前記モータの温度が前記モータ制限温度の近くでない状態を判定し、前記第2温度状態として、前記インバータの温度が前記インバータ制限温度の近くである状態を判定し、前記第3温度状態として、前記モータの温度が前記モータ制限温度の近くである状態を判定するモータ制御装置。
  9.  請求項8に記載のモータ制御装置において、
     前記温度状態判定部は、
     前記インバータの温度が前記インバータ制限温度に応じた第1の条件を満たすか否かを判定するとともに、前記モータの温度が前記モータ制限温度に応じた第2の条件を満たすか否かを判定し、
     前記インバータの温度が前記第1の条件を満たさず、かつ前記モータの温度が前記第2の条件を満たさない場合は、前記第1温度状態であると判定し、
     前記インバータの温度が前記第1の条件を満たす場合は、前記第2温度状態であると判定し、
     前記モータの温度が前記第2の条件を満たす場合は、前記3温度状態であると判定し、
     前記インバータの温度が前記第1の条件を満たし、かつ前記モータの温度が前記第2の条件を満たす場合は、前記インバータの温度または前記モータの温度のいずれが前記インバータ制限温度または前記モータ制限温度により近いかを判断して、前記第2温度状態または前記第3温度状態と判定するモータ制御装置。
  10.  請求項1から請求項9までの何れか一項に記載のモータ制御装置において、
     前記トルク指令、前記モータの回転速度および前記キャリア周波数に基づいて、前記指令値生成部により前記新たに生成された前記キャリア周波数および前記電流指令値の変更を許可するかを判定する切替判定部を、備え、
     前記切替判定部で変更の許可が判定されている場合に、前記指令値生成部により前記新たに生成された前記電流指令値および前記キャリア周波数を用いるモータ制御装置。
  11.  請求項1から請求項9までの何れか一項に記載のモータ制御装置において、
     暖機を指示する暖機モード指令が入力されている場合に、前記指令値生成部により前記新たに生成された前記電流指令値および前記キャリア周波数に変更して前記インバータを制御するモータ制御装置。
  12.  請求項1から請求項9までの何れか一項に記載のモータ制御装置において、
     前記モータが回生駆動されている場合に、前記指令値生成部により前記新たに生成された前記電流指令値および前記キャリア周波数に変更して前記インバータを制御するモータ制御装置。
  13.  直流電力と交流電力との電力変換を行うインバータに接続され、トルク指令に応じたキャリア周波数および電流指令値に基づいて前記インバータを制御して、前記交流電力によるモータの駆動を制御するモータ制御装置のモータ制御方法であって、
     前記インバータの検出温度に基づいて、前記インバータの制限温度であるインバータ制限温度までの前記インバータのエネルギー余裕度に応じたインバータエネルギー余裕値を演算し、前記インバータエネルギー余裕値に応じて前記キャリア周波数および前記電流指令値に替わる新たなキャリア周波数および電流指令値を生成し、
     前記インバータの温度を上昇させる場合に、前記インバータエネルギー余裕値に応じて前記新たに生成された前記キャリア周波数および前記電流指令値に変更して前記インバータを制御するモータ制御方法。
     
PCT/JP2022/046103 2022-12-14 2022-12-14 モータ制御装置、およびモータ制御方法 WO2024127570A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/046103 WO2024127570A1 (ja) 2022-12-14 2022-12-14 モータ制御装置、およびモータ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/046103 WO2024127570A1 (ja) 2022-12-14 2022-12-14 モータ制御装置、およびモータ制御方法

Publications (1)

Publication Number Publication Date
WO2024127570A1 true WO2024127570A1 (ja) 2024-06-20

Family

ID=91484611

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/046103 WO2024127570A1 (ja) 2022-12-14 2022-12-14 モータ制御装置、およびモータ制御方法

Country Status (1)

Country Link
WO (1) WO2024127570A1 (ja)

Similar Documents

Publication Publication Date Title
JP4797476B2 (ja) 二次電池の制御装置
KR101628385B1 (ko) 영구자석 동기모터의 제어방법
US7595600B2 (en) Method and system for torque control in permanent magnet machines
US8098050B2 (en) Charge/discharge control device for secondary battery and vehicle equipped with the same
US7923961B2 (en) Vehicle equipped with motor and inverter
US8306692B2 (en) Input/output control device for secondary battery and vehicle
RU2379821C1 (ru) Система электропривода
JP5633631B2 (ja) インバータの過熱保護制御装置およびインバータの過熱保護制御方法
US8054031B2 (en) Converter device, rotating electrical machine control device, and drive device
JP5050324B2 (ja) 二次電池の制御装置
KR101491247B1 (ko) 친환경 자동차의 인버터 제어 방법
US7667426B2 (en) On-line minimum copper loss control of interior permanent-magnet synchronous machine for automotive applications
JP2007166804A (ja) モータ駆動装置およびそれを備えた車両
US8653772B2 (en) Control device for voltage conversion device, vehicle incorporating the same, and control method for voltage conversion device
JP2009171640A (ja) 電動機の駆動制御装置および駆動制御方法ならびに電動車両
JP2010246207A (ja) 交流電動機の制御装置
RU2677217C1 (ru) Устройство управления транспортным средством
WO2024127570A1 (ja) モータ制御装置、およびモータ制御方法
JP4048995B2 (ja) モータ駆動装置、モータ駆動装置の制御方法、モータ駆動装置の制御をコンピュータに実行させるプログラムを記録したコンピュータ読取り可能な記録媒体
KR100836343B1 (ko) 하이브리드 전기 차량의 배터리 입/출력 전력 제한 방법
JP5352326B2 (ja) モータ駆動制御装置
KR101438611B1 (ko) 변속기 오일 온도 제어 방법 및 그 장치
JP2022063117A (ja) 回生制御方法及び回生制御装置
JP4140241B2 (ja) モータの駆動制御装置、駆動制御方法およびその方法を実現するプログラムを記録した記録媒体
JP2017050924A (ja) 電動車両