Patent Description:
For example, an electrified vehicle such as a hybrid vehicle and an electric vehicle is provided with a plurality of motors such as a motor for driving front wheels or rear wheels and a motor for generating power. A control device of each motor executes control processing by distributing the load for each motor by, for example, a plurality of microcontrollers having a built-in processor such as a central processing unit (CPU) (for example, <CIT> (<CIT>)).

One microcontroller executes, when abnormality has occurred in the other microcontroller, the control processing on behalf of the other microcontroller to operate the motor normally. With this, a fail-safe function is realized.

Document <CIT> discloses a running command correction device of a work vehicle.

<CIT> discloses a motor bridge driver integrated circuit.

<CIT> discloses an electric vehicle and a method for controlling an emergency thereof.

When the control processing of the plurality of motors is integrated into one microcontroller, the load of the control processing of the processor built in the microcontroller increases. Therefore, it is conceivable that a part of the control processing is shared with, for example, an application specific integrated circuit (ASIC). In this case, the ASIC realizes the fail-safe function by executing the control processing of the microcontroller when abnormality has occurred in the microcontroller.

In addition, in order to make it possible to mount the microcontroller on a plurality of vehicle types of vehicles, the microcontroller executes control processing by switching, using software, characteristic data related to motor drive control in response to a vehicle type of a vehicle that is a mounting target. However, in order to reduce the device cost, the ASIC does not have a built-in memory that stores characteristic data corresponding to the plurality of vehicle types in advance, so that the ASIC can execute solely control processing in accordance with the characteristics of a specific vehicle type.

Therefore, in a case where the ASIC is used for a vehicle of a vehicle type that the ASIC does not support, the control device cannot normally drive and control the motor in accordance with the characteristics corresponding to the vehicle type of the vehicle on which the control device is mounted when abnormality has occurred in the microcontroller, so that the fail-safe function cannot be appropriately realized.

In that regard, the present invention provides a motor control device capable of restraining an increase in device cost and appropriately realizing a fail-safe function in response to a vehicle type.

A first aspect of the invention relates to a motor control device including a first storage unit, a second storage unit, a processor, and a drive circuit. The first storage unit is configured to store characteristic data related to drive control of a motor of a plurality of vehicle types. The second storage unit is configured to store a vehicle type parameter related to a predetermined vehicle type, wherein the vehicle type parameter is a reduction ratio of a differential gear connected to the motor. The processor is configured to execute arithmetic processing related to the drive control corresponding to the predetermined vehicle type, based on the vehicle type parameter and the characteristic data. The drive circuit is configured to execute a drive processing of a motor of a vehicle of the predetermined vehicle type, based on a result of the arithmetic processing. The drive circuit is configured to read out the characteristic data from the first storage unit and the vehicle type parameter from the second storage unit when abnormality has occurred in the processor, and to execute the arithmetic processing related to the drive control corresponding to the predetermined vehicle type, based on the vehicle type parameter and the characteristic data.

In the motor control device according to the first aspect, the first storage unit may be configured to store the characteristic data corresponding to the other vehicle type different from the predetermined vehicle type. The drive circuit may be configured to correct the characteristic data such that the characteristic data corresponds to the predetermined vehicle type, based on the vehicle type parameter, when abnormality has occurred in the processor and to use the corrected characteristic data for the arithmetic processing.

The drive circuit may be configured to read out, from the first storage unit, the characteristic data corresponding to the predetermined vehicle type out of the plurality of vehicle types based on the vehicle type parameter, and to use the characteristic data for the arithmetic processing.

In the motor control device according to the first aspect, the characteristic data may include a correlation between rotation speed and torque of the motor.

In the motor control device according to the first aspect, the characteristic data may include a correlation between torque and a current value of the motor.

In the motor control device according to the first aspect, the drive circuit may be configured to receive notification regarding normality of the processor. The drive circuit may be configured to determine whether or not abnormality has occurred in the processor, based on the notification.

A second aspect of the invention relates to a motor control method. The motor control method includes determining, by a drive circuit, whether or not abnormality has occurred in a processor configured to execute arithmetic processing related to drive control corresponding to a predetermined vehicle type, wherein the vehicle type parameter is a reduction ratio of a differential gear connected to the motor, based on a vehicle type parameter related to drive control of a motor of a vehicle and characteristic data related to the predetermined vehicle type; reading out, by the drive circuit, the characteristic data from a first storage unit configured to store the characteristic data and the vehicle type parameter from a second storage unit configured to store the vehicle type parameter when the drive circuit determines that abnormality has occurred in the processor; and executing, by the drive circuit, the arithmetic processing related to the drive control corresponding to the predetermined vehicle type, based on the vehicle type parameter and the characteristic data.

According to the above-described aspects of the present invention, it is possible to restrain an increase in device cost and appropriately realize a fail-safe function in response to a vehicle type.

<FIG> is a configuration diagram showing an example of a motor control device <NUM>. The motor control device <NUM> includes a microcontroller <NUM>, an ASIC <NUM>, an electronic control unit (ECU) <NUM>, an accelerator sensor <NUM>, and a brake sensor <NUM>, and is mounted on an electrified vehicle such as a hybrid vehicle or an electric vehicle (hereinafter, referred to as a "vehicle").

The motor control device <NUM> controls inverter circuits <NUM>, <NUM> connected to motors <NUM>, <NUM>, respectively. Each of the inverter circuits <NUM>, <NUM> has, for example, a plurality of insulated gate bipolar transistors (IGBTs) corresponding to three-phase upper and lower arms. On/off control is performed for each IGBT by a pulse width modulation (PWM) signal received from ASIC <NUM> as an input.

The inverter circuits <NUM>, <NUM> generate three-phase alternating current in accordance with the PWM signals and output the three-phase alternating current to the motors <NUM>, <NUM>, respectively. The inverter circuits <NUM>, <NUM> may have other types of transistors instead of the IGBT.

The motors <NUM>, <NUM> are driven by three-phase alternating current in accordance with the control of the motor control device <NUM>. Current sensors <NUM>, <NUM> that detect the current value of each phase of the three-phase alternating current are provided between the inverter circuits <NUM>, <NUM> and the motors <NUM>, <NUM>, respectively. The current sensors <NUM>, <NUM> notify the microcontroller <NUM> and the ASIC <NUM> of the current value.

The motor <NUM> is used to drive the wheels (front wheels or rear wheels) <NUM>, <NUM> of the vehicle, as an example. The motor <NUM> is connected to a differential gear <NUM> via a drive shaft <NUM>. The differential gear <NUM> transmits the torque of the motor <NUM> to the wheels <NUM>, <NUM> as a driving force corresponding to the reduction ratio unique to the vehicle type of the vehicle. In addition, the motor <NUM> is used, for example, to generate power. Note that the number of motors mounted on the vehicle is not limited.

The accelerator sensor <NUM> detects the operation amount of an accelerator pedal of the vehicle and outputs the detected value to the ECU <NUM>. The brake sensor <NUM> detects the operation amount of a brake pedal of the vehicle and outputs the detected value to the ECU <NUM>.

The ECU <NUM> is a computer device that generally controls the vehicle. The ECU <NUM> calculates the driving force requested for the vehicle (hereinafter, referred to as a "requested driving force") from the operation amount of the accelerator pedal, the operation amount of the brake pedal, and the like. The ECU <NUM> notifies the microcontroller <NUM> of the requested driving force.

The microcontroller <NUM> has a CPU <NUM> that is an example of the processor, a read only memory (ROM) <NUM>, a random access memory (RAM) <NUM>, memories <NUM>, <NUM>, a communication port <NUM>, and a hardware interface unit (HW-INF) <NUM>. The CPU <NUM> is electrically connected to the ROM <NUM>, the RAM <NUM>, the memories <NUM>, <NUM>, the communication port <NUM>, and the HW-INF <NUM> via a bus <NUM> such that signals can be input to and output from each other.

The ROM <NUM> stores a program by which the CPU <NUM> is driven. The RAM <NUM> functions as a working memory of the CPU <NUM>. The communication port <NUM> is used to communicate with the ASIC <NUM>. The HW-INF <NUM> receives the current values of the three-phase alternating current from the current sensors <NUM>, <NUM>. The HW-INF <NUM> notifies the ASIC <NUM> of the current value via the CPU <NUM> or the communication port <NUM>.

The memory <NUM> is an example of the second storage unit, and stores a parameter (hereinafter, referred to as a "vehicle type parameter") <NUM> related to the vehicle type of the vehicle on which the motor control device <NUM> is mounted. Examples of the vehicle type parameter <NUM> include the reduction ratio of the differential gear <NUM> connected to the motor <NUM>, or a value related to the output performance of the motors <NUM>, <NUM>. As described above, the vehicle type parameter <NUM> is a parameter related to the specification unique to the vehicle type of the vehicle on which the motor control device <NUM> is mounted.

The memory <NUM> is an example of the first storage unit, and stores characteristic map data <NUM> related to the drive control of each of the motors <NUM>, <NUM>. The characteristic map data <NUM> is an example of the characteristic data. The characteristic map data <NUM> includes, for example, rotation speed-torque map data indicating a correlation between the rotation speed and torque requested for the motors <NUM>, <NUM> (hereinafter, referred to as "requested rotation speed" and "requested torque", respectively), and torque-current map data indicating a correlation between the requested torque and current command value of the three-phase current.

The memories <NUM>, <NUM> are non-volatile memories such as a flash memory. At the time of manufacturing the motor control device <NUM>, the vehicle type parameter <NUM> that is decided by the vehicle type of the vehicle that is a mounting target of the motor control device <NUM> is written in the memory <NUM>, and the characteristic map data <NUM> corresponding to one or more vehicle types is written in the memory <NUM>.

The CPU <NUM> reads a program from the ROM <NUM> and is operated in accordance with the program. The CPU <NUM> receives the requested driving force from the ECU <NUM>, and executes arithmetic processing related to the drive control of the motors <NUM>, <NUM> corresponding to the type of the vehicle on which the motor control device <NUM> is mounted based on the vehicle type parameter <NUM> and the characteristic map data <NUM> such that the requested driving force is satisfied.

In the arithmetic processing, the CPU <NUM> calculates the current command value of each of the motors <NUM>, <NUM> based on the vehicle type parameter <NUM> and the characteristic map data <NUM> from the requested driving force, and calculates the voltage command value of each of the motors <NUM>, <NUM> from the current command values and the current values acquired from the current sensors <NUM>, <NUM>. Further, the CPU <NUM> calculates on/off timing (hereinafter, referred to as "on/off timing") that decides the duty ratio of the PWM signal, from the voltage command value. The CPU <NUM> notifies the ASIC <NUM> of the on/off timing via the communication port <NUM>. The on/off timing is an example of the result of the arithmetic processing. The details of the arithmetic processing will be described later.

The ASIC <NUM> is an example of a drive circuit, and has a monitoring unit <NUM>, an arithmetic unit <NUM>, and an output unit <NUM>. The output unit <NUM> executes drive processing of each of the motors <NUM>, <NUM> based on the result of the arithmetic processing of the CPU <NUM>. The output unit <NUM> receives notification of the on/off timing from the CPU <NUM> via the communication port <NUM>. The output unit <NUM> generates the PWM signals in accordance with the on/off timing and outputs the PWM signals to the inverter circuits <NUM>, <NUM>.

The monitoring unit <NUM> receives notification regarding the normality of the CPU <NUM> from the ECU <NUM>. The ECU <NUM> monitors whether or not the CPU <NUM> is normally operated. For example, when the CPU <NUM> is normally operated, the monitoring unit <NUM> generates a pulse signal having a predetermined frequency from a clock signal received from an oscillator (not shown) as an input and transmits the pulse signal to the ECU <NUM>. The ECU <NUM> determines the normality of the pulse signal received from the CPU <NUM>. When the ECU <NUM> detects, for example, a stop of the pulse signal or the abnormality in the frequency of the pulse signal, the ECU <NUM> determines that abnormality has occurred in the CPU <NUM>.

The monitoring unit <NUM> determines whether or not abnormality has occurred in the CPU <NUM>, based on the notification. When the monitoring unit <NUM> determines that abnormality has occurred in the CPU <NUM>, the monitoring unit <NUM> instructs the arithmetic unit <NUM> and the output unit <NUM> to perform the fail-safe operation.

When the arithmetic unit <NUM> receives the instruction on the fail-safe operation from the monitoring unit <NUM>, the arithmetic unit <NUM> executes the above-described arithmetic processing of the CPU <NUM> on behalf of the CPU <NUM>. In this case, the arithmetic unit <NUM> acquires the vehicle type parameter <NUM> and the characteristic map data <NUM> from the memories <NUM>, <NUM>, respectively. At this time, the arithmetic unit <NUM> accesses the memories <NUM>, <NUM> via the communication port <NUM> and reads out the vehicle type parameter <NUM> and the characteristic map data <NUM> from the memories <NUM>, <NUM>, respectively. Further, the arithmetic unit <NUM> acquires the current value of each phase of the three-phase alternating current from the current sensors <NUM>, <NUM>.

The arithmetic unit <NUM> executes the arithmetic processing related to the drive control corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted in the same manner as the CPU <NUM> as normal, based on the vehicle type parameter <NUM> acquired from the memory <NUM> and the characteristic map data <NUM> acquired from the memory <NUM>.

The output unit <NUM> receives notification of the on/off timing from the arithmetic unit <NUM> on behalf of the CPU <NUM>. The output unit <NUM> generates the PWM signals in accordance with the on/off timing and outputs the PWM signals to the inverter circuits <NUM>, <NUM>, as in a case where the CPU <NUM> is normal. With this, a fail-safe function when abnormality has occurred in the CPU <NUM> is realized.

In the present example, the memories <NUM>, <NUM> are provided inside the microcontroller <NUM>, but may be provided outside the microcontroller <NUM> and the ASIC <NUM>. In this case, the CPU <NUM> and the ASIC <NUM> can access the memories <NUM>, <NUM> via, for example, a separate bus. Further, the vehicle type parameter <NUM> and the characteristic map data <NUM> may be stored on a common non-volatile memory. In this case, the storage area of the characteristic map data <NUM> and the storage area of the vehicle type parameter <NUM> in the memory are examples of the first and second storage units, respectively.

Next, the vehicle type parameter <NUM> and the characteristic map data <NUM> will be described. The rotation speed-torque map data and the torque-current map data suitable for the drive control of the motors <NUM>, <NUM> differ depending on the specification of each vehicle type. Therefore, the CPU <NUM> and the arithmetic unit <NUM> acquire the rotation speed-torque map data and the torque-current map data corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted from the characteristic map data <NUM>, based on the vehicle type parameter <NUM>, and use the acquired map data for the arithmetic processing. The rotation speed-torque map data and the torque-current map data when the vehicle type parameter <NUM> is the reduction ratio of the differential gear <NUM> will be described below as examples.

<FIG> is a diagram showing an example of rotation speed-torque map data Pa, Pb, Pc that correspond to a plurality of reduction ratios Ka, Kb, Kc of the differential gear <NUM>, respectively, the reduction ratios being different from each other for each vehicle type. The rotation speed-torque map data Pa, Pb, Pc indicate the correlation between the rotation speed and the torque of the motors <NUM>, <NUM>. The rotation speed-torque map data Pa, Pb, Pc may be different from each other for each of the motors <NUM>, <NUM> or may be common for the motors <NUM>, <NUM>.

For example, the rotation speed-torque map data Pa, Pb, Pc have a similar relationship with each other in accordance with the ratios of the reduction ratios Ka, Kb, Kc to each other. For a certain rotation speed, out of the rotation speed-torque map data Pa, Pb, Pc, the rotation speed-torque map data Pa corresponding to the reduction ratio Ka shows the highest torque, and the rotation speed-torque map data Pc corresponding to the reduction ratio Kc shows the lowest torque.

The CPU <NUM> and the arithmetic unit <NUM> use the rotation speed-torque map data Pa, Pb, Pc corresponding to a reduction ratio indicated by the vehicle type parameter <NUM>, out of the reduction ratios Ka, Kb, Kc, for the arithmetic processing. As an example, when the vehicle type parameter <NUM> indicates the reduction ratio Kc, the CPU <NUM> and the arithmetic unit <NUM> use the rotation speed-torque map data Pc corresponding to the reduction ratio Kc for the arithmetic processing. In this case, when the rotation speed satisfying the requested driving force of which the ECU <NUM> has notified the CPU <NUM> and the arithmetic unit <NUM> is N, the CPU <NUM> and the arithmetic unit <NUM> calculate requested torque T corresponding to the rotation speed N from the rotation speed-torque map data Pc.

<FIG> is a diagram showing an example of torque-current map data Qa, Qb, Qc corresponding to the reduction ratios Ka, Kb, Kc of the differential gear <NUM>, respectively, the reduction ratios being different from each other for each vehicle type. The torque-current map data Qa, Qb, Qc indicate the correlation between the current command values of the motors <NUM>, <NUM> and the requested torque. The torque-current map data Qa, Qb, Qc may be different from each other for each of the motors <NUM>, <NUM>, or may be common for the motors <NUM>, <NUM>.

For example, the torque-current map data Qa, Qb, Qc have a similar relationship with each other in accordance with the ratios of the reduction ratios Ka, Kb, Kc to each other. For a certain requested torque, out of the torque-current map data Qa, Qb, Qc, the torque-current map data Qc corresponding to the reduction ratio Kc shows the highest current command value, and the torque-current map data Qa corresponding to the reduction ratio Ka shows the lowest current command value.

The CPU <NUM> and the arithmetic unit <NUM> use the torque-current map data Qa, Qb, Qc corresponding to a reduction ratio indicated by the vehicle type parameter <NUM>, out of the reduction ratios Ka, Kb, Kc, for the arithmetic processing. As an example, when the vehicle type parameter <NUM> indicates the reduction ratio Kc, the CPU <NUM> and the arithmetic unit <NUM> use the torque-current map data Qc corresponding to the reduction ratio Kc for the arithmetic processing. In this case, when the requested torque is T, the CPU <NUM> and the arithmetic unit <NUM> calculate a current command value I corresponding to the requested torque T from the torque-current map data Qc.

Next, a method of acquiring rotation speed-torque map data and torque-current map data corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted will be described.

<FIG> is a diagram showing an example of the method of acquiring the rotation speed-torque map data Pc and the torque-current map data Qc corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted. In the present example, it is assumed that the motor control device <NUM> is mounted on a vehicle of the vehicle type of the reduction ratio Kc. Therefore, the memory <NUM> stores, for example, the reduction ratio Kc as the vehicle type parameter <NUM> related to the vehicle type of the vehicle on which the motor control device <NUM> is mounted.

Further, the characteristic map data <NUM> stored on the memory <NUM> includes solely the rotation speed-torque map data Pa corresponding to the reduction ratio Ka, out of the rotation speed-torque map data Pa, Pb, Pc, and includes solely the torque-current map data Qa corresponding to the reduction ratio Ka, out of the torque-current map data Qa, Qb, Qc. That is, the memory <NUM> stores the torque-current map data Qa corresponding to the other vehicle type different from the vehicle type of the vehicle on which the motor control device <NUM> is mounted.

If the CPU <NUM> and the arithmetic unit <NUM> use the rotation speed-torque map data Pa and the torque-current map data Qa for the arithmetic processing, the motors <NUM>, <NUM> cannot be normally driven and controlled because the rotation speed-torque map data Pa and the torque-current map data Qa are not suitable for the characteristics of the vehicle type of the vehicle on which the motor control device <NUM> is mounted. As a result, the fail-safe function cannot be appropriately realized.

For this reason, the CPU <NUM> and the arithmetic unit <NUM> acquire the reduction ratio Kc and the rotation speed-torque map data Pa from the memories <NUM>, <NUM>, respectively, and correct the rotation speed-torque map data Pa based on reduction ratio Kc to acquire the rotation speed-torque map data Pc corresponding to the reduction ratio Kc. For example, the CPU <NUM> and the arithmetic unit <NUM> multiply the rotation speed of the rotation speed-torque map data Pa by a constant based on the ratio of the reduction ratio Ka to the reduction ratio Kc, to obtain the rotation speed-torque map data Pc corresponding to the reduction ratio Kc. Here, the CPU <NUM> and the arithmetic unit <NUM> hold the reduction ratio Ka corresponding to the rotation speed-torque map data Pa in advance as a fixed value.

Further, the CPU <NUM> and the arithmetic unit <NUM> acquire the torque-current map data Qa from the memory <NUM>, and correct the torque-current map data Qa based on the reduction ratio Kc to acquire the torque-current map data Qc corresponding to the reduction ratio Kc. For example, the CPU <NUM> and the arithmetic unit <NUM> multiply the current command value of the torque-current map data Qa by a constant based on the ratio of the reduction ratio Ka to the reduction ratio Kc, to obtain the torque-current map data Qc corresponding to the reduction ratio Kc.

In this way, the CPU <NUM> and the arithmetic unit <NUM> correct the rotation speed-torque map data Pa and the torque-current map data Qa such that the rotation speed-torque map data Pa and the torque-current map data Qa correspond to the vehicle type of the vehicle on which the motor control device <NUM> is mounted, based on the vehicle type parameter <NUM>, and use the corrected map data for the arithmetic processing.

<FIG> is a diagram showing another example of the method of acquiring the rotation speed-torque map data Pa, Pb, Pc and the torque-current map data Qa, Qb, Qc. In the present example, it is assumed that the motor control device <NUM> is mounted on a vehicle of the vehicle type of the reduction ratio Kc. Therefore, the memory <NUM> stores, for example, the reduction ratio Kc as the vehicle type parameter <NUM> related to the vehicle type of the vehicle on which the motor control device <NUM> is mounted.

Further, the characteristic map data <NUM> stored on the memory <NUM> includes the rotation speed-torque map data Pa, Pb, Pc and the torque-current map data Qa, Qb, Qc corresponding to the reduction ratios Ka, Kb, Kc related to a plurality of vehicle types, respectively. The characteristic map data <NUM> also includes the rotation speed-torque map data Pa, Pb and the torque-current map data Qa, Qb other than the vehicle type of the vehicle on which the motor control device <NUM> is mounted. That is, the memory <NUM> stores the characteristic map data <NUM> corresponding to the plurality of vehicle types.

The CPU <NUM> and the arithmetic unit <NUM> acquire the reduction ratio Kc from the memory <NUM>. The CPU <NUM> and the arithmetic unit <NUM> select and acquire solely the rotation speed-torque map data Pc corresponding to the reduction ratio Kc out of the rotation speed-torque map data Pa, Pb, Pc stored on the memory <NUM>. Specifically, the CPU <NUM> and the ASIC <NUM> read out the rotation speed-torque map data Pc from, for example, the storage area corresponding to the reduction ratio Kc out of the storage areas of the memory <NUM>.

Further, the CPU <NUM> and the arithmetic unit <NUM> select and acquire solely the torque-current map data Qc corresponding to the reduction ratio Kc out of the torque-current map data Qa, Qb, Qc stored on the memory <NUM>. Specifically, the CPU <NUM> and the arithmetic unit <NUM> read out the torque-current map data Qc from, for example, the storage area corresponding to the reduction ratio Kc out of the storage areas of the memory <NUM>.

As described above, the CPU <NUM> and the arithmetic unit <NUM> read out, from the memory <NUM>, the rotation speed-torque map data Pc and the torque-current map data Qc corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted, out of the plurality of vehicle types, based on the vehicle type parameter <NUM> and use the read-out map data for the arithmetic processing.

In this way, the CPU <NUM> and the arithmetic unit <NUM> can acquire the rotation speed-torque map data Pc and the torque-current map data Qc corresponding to the reduction ratio Kc of the vehicle type of the vehicle on which the motor control device <NUM> is mounted. Therefore, the CPU <NUM> and the arithmetic unit <NUM> can calculate an appropriate requested torque and current command value corresponding to the reduction ratio Kc.

Further, in the case of the example of <FIG>, the capacity of the memory <NUM> can be reduced because the amount of data of the characteristic map data <NUM> stored on the memory <NUM> is smaller than the amount of data in the case of the example of <FIG>. On the other hand, in the case of the example of <FIG> unlike the case of the example of <FIG>, it is unnecessary for the CPU <NUM> and the arithmetic unit <NUM> to perform the correction processing of the rotation speed-torque map data Pa and the torque-current map data Qa, so that the load of the arithmetic processing can be reduced.

<FIG> is a flowchart showing an example of the operation of the CPU <NUM>. Steps St2 to St8 described below are examples of the arithmetic processing related to the drive control of the motors <NUM>, <NUM> corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted.

The CPU <NUM> receives notification of the requested driving force from the ECU <NUM> (step St1). Next, the CPU <NUM> acquires the vehicle type parameter <NUM> from the memory <NUM> (step St2).

Next, the CPU <NUM> first reads out the rotation speed-torque map data, out of the characteristic map data <NUM>, from the memory <NUM> (step St3). Next, the CPU <NUM> calculates the requested torque corresponding to the rotation speed of the motors <NUM>, <NUM> satisfying the requested driving force, from the vehicle type parameter <NUM> and the rotation speed-torque map data (step St4).

At this time, the CPU <NUM> acquires, based on the vehicle type parameter <NUM>, the rotation speed-torque map data corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted, in accordance with the acquisition method described with reference to <FIG> or <FIG>. The CPU <NUM> obtains the requested torque corresponding to the rotation speed of the motors <NUM>, <NUM> from the rotation speed-torque map data corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted.

Next, the CPU <NUM> reads out the torque-current map data, out of the characteristic map data <NUM>, from the memory <NUM> (step St5). Next, the CPU <NUM> calculates the current command value of three-phase alternating current satisfying the requested torque, from the vehicle type parameter <NUM> and the torque-current map data (step St6).

At this time, the CPU <NUM> acquires, based on the vehicle type parameter <NUM>, the torque-current map data corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted, in accordance with the acquisition method described with reference to <FIG> or <FIG>. Further, the CPU <NUM> obtains the current command value of three-phase alternating current satisfying the requested torque, from the torque-current map data corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted.

Next, the CPU <NUM> calculates the voltage command values of the motors <NUM>, <NUM> from the current command values (step St7). At this time, the CPU <NUM> acquires the current value of the three-phase alternating current from the current sensors <NUM>, <NUM> via the HW-INF <NUM>. The CPU <NUM> decides the current command value by PI control, for example, in accordance with the difference between the current command value and the current value of the current sensor.

Next, the CPU <NUM> performs duty arithmetic of the PWM signal from the voltage command value (step St8). At this time, as indicated by the reference numeral G, the CPU <NUM> generates a carrier signal that changes in a triangular wave shape on the time axis, and compares the voltage command value that changes in a sine wave shape with the signal value of the carrier signal. The carrier signal is a signal that is used to decide the on/off timing of the PWM signal. The PWM signal is turned off when the signal value of the carrier signal is the voltage command value or more, and the PWM signal is turned on when the signal value of the carrier signal is less than the voltage command value. The CPU <NUM> calculates time Ton when the PWM signal is turned on and time Toff when the PWM signal is turned off. The duty ratio of the PWM signal is decided by time Ton and Toff.

In this way, the CPU <NUM> executes arithmetic processing related to the drive control of the motors <NUM>, <NUM> corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted, based on the vehicle type parameter <NUM> and the characteristic map data <NUM>.

Next, the CPU <NUM> notifies the output unit <NUM> of the ASIC <NUM>, via the communication port <NUM>, of the on/off timing as a result of the arithmetic processing, that is, time Ton and Toff (step St9). In this way, the CPU <NUM> is operated.

<FIG> is a flowchart showing an example of the operation of the ASIC <NUM>. Steps St15 to St21 described below are examples of the arithmetic processing related to the drive control of the motors <NUM>, <NUM> corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted. Further, step St13 described below is an example of the drive processing of the motors <NUM>, <NUM> of the vehicle on which the motor control device <NUM> is mounted.

The monitoring unit <NUM> of the ASIC <NUM> determines whether or not the operation of the CPU <NUM> is normal, based on the notification from the ECU <NUM> (step St11). The monitoring unit <NUM> may directly determine the normality of the CPU <NUM> by communicating with the CPU <NUM>, without going through the ECU <NUM>.

When the operation of the CPU <NUM> is normal (Yes in step St11), the output unit <NUM> receives notification of the on/off timing from the CPU <NUM> (step St12). Next, the output unit <NUM> generates the PWM signals (see reference numeral G in <FIG>) based on the on/off timing and outputs the PWM signals to the inverter circuits <NUM>, <NUM> (step St13). As described above, when the operation of the CPU <NUM> is normal, the ASIC <NUM> executes generation processing and output processing of the PWM signal based on the result of the arithmetic processing of the CPU <NUM> regardless of the type of vehicle, out of the control for the motors <NUM>, <NUM>.

Alternatively, when the operation of the CPU <NUM> is abnormal (No in step St11), the ASIC <NUM> performs the arithmetic processing of following steps St14 to St21 on behalf of the CPU <NUM>, in order to realize the fail-safe function.

The arithmetic unit <NUM> receives notification of the requested driving force from the ECU <NUM> (step St14). Next, the ASIC <NUM> acquires the vehicle type parameter <NUM> from the memory <NUM> (step St15).

Next, the arithmetic unit <NUM> first reads out the rotation speed-torque map data, out of the characteristic map data <NUM>, from the memory <NUM> (step St16). Next, the arithmetic unit <NUM> calculates the requested torque corresponding to the rotation speed of the motors <NUM>, <NUM> satisfying the requested driving force, from the vehicle type parameter <NUM> and the rotation speed-torque map data (step St17).

At this time, the arithmetic unit <NUM> acquires, based on the vehicle type parameter <NUM>, the rotation speed-torque map data corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted, in accordance with the acquisition method described with reference to <FIG> or <FIG>. Further, the arithmetic unit <NUM> obtains the requested torque corresponding to the rotation speed of the motors <NUM>, <NUM> from the rotation speed-torque map data corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted.

Next, the arithmetic unit <NUM> reads out the torque-current map data, out of the characteristic map data <NUM>, from the memory <NUM> (step St18). Next, the arithmetic unit <NUM> calculates the current command value of the three-phase alternating current satisfying the requested torque, from the vehicle type parameter <NUM> and the torque-current map data (step St19).

At this time, the arithmetic unit <NUM> acquires, based on the vehicle type parameter <NUM>, the torque-current map data corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted, in accordance with the acquisition method described with reference to <FIG> or <FIG>. Further, the arithmetic unit <NUM> obtains the current command value of three-phase alternating current satisfying the requested torque, from the torque-current map data corresponding to the vehicle type of the vehicle on which the motor control device <NUM> is mounted.

Next, the arithmetic unit <NUM> calculates the voltage command values of the motors <NUM>, <NUM> from the current command values (step St20). At this time, the arithmetic unit <NUM> acquires the current values of the three-phase alternating current from the current sensors <NUM>, <NUM>. The arithmetic unit <NUM> decides the current command value by PI control, for example, in accordance with the difference between the current command value and the current value of the current sensor.

Next, the arithmetic unit <NUM> performs duty arithmetic of the PWM signal from the voltage command value (step St21). At this time, as described with reference to the reference numeral G in <FIG>, the arithmetic unit <NUM> compares the signal value of the carrier signal with the voltage command value to calculate time Ton when the PWM signal is turned on and time Toff when the PWM signal is turned off, as the on/off timing.

Next, the arithmetic unit <NUM> generates the PWM signals based on the on/off timing and outputs the PWM signals to the inverter circuits <NUM>, <NUM> (step St13).

As described above, when the operation of the CPU <NUM> is abnormal, the ASIC <NUM> execute the arithmetic processing corresponding to the type of the vehicle on which the motor control device <NUM> is mounted based on the vehicle type parameter <NUM> and the characteristic map data <NUM> that are read out from the memories <NUM>, <NUM>, respectively.

Therefore, with the fail-safe operation of the ASIC <NUM>, the motor control device <NUM> can continue the drive control of the motors <NUM>, <NUM> corresponding to the characteristics of the vehicle type of the vehicle on which the motor control device <NUM> is mounted, even when abnormality has occurred in the CPU <NUM>. Further, since the memories <NUM>, <NUM> are provided outside the ASIC <NUM>, an increase in device cost is restrained. Accordingly, the motor control device <NUM> can restrain the increase in device cost and appropriately realize the fail-safe function in response to the vehicle type.

Claim 1:
A motor control device comprising:
a first storage unit configured to store characteristic data (<NUM>) related to drive control of a motor (<NUM>, <NUM>) of a plurality of vehicle types;
a second storage unit configured to store a vehicle type parameter (<NUM>) related to a predetermined vehicle type, wherein the vehicle type parameter is a reduction ratio of a differential gear connected to the motor;
a processor (<NUM>) configured to execute arithmetic processing related to the drive control corresponding to the predetermined vehicle type, based on the vehicle type parameter and the characteristic data; and
a drive circuit (<NUM>) configured to execute drive processing of a motor of a vehicle of the predetermined vehicle type, based on a result of the arithmetic processing,
wherein the drive circuit is configured to read out the characteristic data from the first storage unit and the vehicle type parameter from the second storage unit when abnormality has occurred in the processor, and to execute the arithmetic processing related to the drive control corresponding to the predetermined vehicle type, based on the vehicle type parameter and the characteristic data.