This application claims priority from Japanese Patent Application No. 2018-200343 filed on Oct. 24, 2018, the entire contents of which are hereby incorporated by reference.
The technology relates to a motor control apparatus and a motor control method.
An aspect of the technology provides a motor control apparatus that controls a motor including a rotor and a resolver. The motor control apparatus includes a first detector, a second detector, and a switcher. The first detector is configured to detect a rotation position of the rotor using a signal from the resolver. The first detector allows resolution of the rotation position to become lower in a region in which a rotation speed of the rotor is higher than a first predetermined value, than in a region in which the rotation speed is equal to or lower than the first predetermined value. The second detector is configured to estimate the rotation position of the rotor using a current of the motor without using the signal from the resolver. The switcher is configured to switch between a first control and a second control in the region in which the rotation speed is equal to or lower than the first predetermined value. The first control includes controlling the motor using the rotation position detected by the first detector. The second control includes controlling the motor using the rotation position estimated by the second detector.
An aspect of the technology provides a motor control apparatus that controls a motor. The motor drives a vehicle and includes a resolver. The motor control apparatus includes a first detector, a second detector, and a switcher. The first detector is configured to detect a rotation position of a rotor of the motor using a signal from the resolver. The second detector is configured to estimate the rotation position of the rotor using a current of the motor without using the signal from the resolver. The switcher is configured to execute a first control while inhibiting a second control on the condition that an amount of change per time in a driving force of the vehicle or an amount of change per time in a vehicle speed, or an amount of change per time in a parameter related to the driving force of the vehicle or an amount of change per time in a parameter related to the vehicle speed is equal to or greater than a threshold. The first control includes controlling the motor using the rotation position detected by the first detector. The second control includes controlling the motor using the rotation position estimated by the second detector.
An aspect of the technology provides a motor control method of controlling a motor including a rotor and a resolver. The motor control method includes switching between a first control and a second control in a region in which a rotation speed of the rotor is equal to or lower than a predetermined value. The first control includes controlling the motor using a rotation position of the rotor detected by a detection method. The detection method includes detecting the rotation position using a signal from the resolver. The detection method includes allowing resolution of the rotation position to become lower in a region in which the rotation speed of the rotor is higher than the predetermined value, than in a region in which the rotation speed is equal to or lower than the predetermined value. The second control includes controlling the motor using the rotation position estimated using a current of the motor without using the signal from the resolver.
An aspect of the technology provides a motor control apparatus that controls a motor including a rotor and a resolver. The motor control apparatus includes a first detector and circuitry. The first detector is configured to detect a rotation position of the rotor using a signal from the resolver. The first detector allows resolution of the rotation position to become lower in a region in which a rotation speed of the rotor is higher than a first predetermined value, than in a region in which the rotation speed is equal to or lower than the first predetermined value. The circuitry is configured to estimate the rotation position of the rotor using a current of the motor without using the signal from the resolver. The circuitry is configured to switch between a first control and a second control in the region in which the rotation speed is equal to or lower than the first predetermined value. The first control includes controlling the motor using the rotation position detected by the first detector. The second control includes controlling the motor using the rotation position estimated by the circuitry.
An aspect of the technology provides a motor control apparatus that controls a motor. The motor drives a vehicle and includes a resolver. The motor control apparatus includes a first detector and circuitry. The first detector is configured to detect a rotation position of a rotor of the motor using a signal from the resolver. The circuitry is configured to estimate the rotation position of the rotor using a current of the motor without using the signal from the resolver. The circuitry is configured to execute a first control while inhibiting a second control on the condition that an amount of change per time in a driving force of the vehicle or an amount of change per time in a vehicle speed, or an amount of change per time in a parameter related to the driving force of the vehicle or an amount of change per time in a parameter related to the vehicle speed is equal to or greater than a threshold. The first control includes controlling the motor using the rotation position detected by the first detector. The second control includes controlling the motor using the rotation position estimated by the circuitry.
The accompanying drawings are included to provide a further understanding of the disclosure, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments and, together with the specification, serve to explain the principles of the disclosure.
There have been known motor control apparatuses including a detector that detects a rotation position of a motor. For example, Japanese Unexamined Patent Application Publication (JP-A) No. 2003-164187 describes a control apparatus including an R/D converter that converts an angle signal detected by a resolver into a digital signal. The control apparatus is able to estimate a rotation angle of a motor on the basis of a back electromotive voltage detected from the motor.
The control apparatus described in JP-A No. 2003-164187 is configured to detect the rotation angle using the R/D converter in a normal state, and to detect the rotation angle on the basis of the back electromotive voltage at the time of a failure. This hinders a motor control in the normal state by utilizing characteristics of both detections. Accordingly, there is room for improving control accuracy or responsiveness.
It is desirable to provide a new and improved motor control apparatus and motor control method that make it possible to improve control accuracy or responsiveness, or both.
In the following, some preferred but non-limiting embodiments of the technology are described in detail with reference to the accompanying drawings. Note that the following description is directed to illustrative examples of the disclosure and not to be construed as limiting to the technology. In each of the drawings referred to in the following description, elements have different scales in order to illustrate the respective elements with sizes recognizable in the drawings. Therefore, factors including, without limitation, the number of each of the elements, the shape of each of the elements, a size of each of the elements, a dimension of each of the elements, a material of each of the elements, a ratio between the elements, relative positional relationship between the elements, and any other specific numerical value are illustrative only and not to be construed as limiting to the technology. Further, elements in the following example embodiments which are not recited in a most-generic independent claim of the disclosure are optional and may be provided on an as-needed basis. Throughout the specification and the drawings, elements having substantially the same function and configuration are denoted with the same numerals to avoid redundant description, and elements not in direct relation to the technology may not be illustrated.
Described first is an example of a configuration of a motor control apparatus according to a first embodiment of the technology. The motor control apparatus according to this embodiment may be applied to a control system of a motor, i.e., a rotating electric machine, to be mounted on a motor-driven vehicle.
A motor 3 may include a motor generator that not only serves as a driving force source generating a driving force of a vehicle but also serves as a generator. The motor 3 may include a rotary shaft coupled to a drive wheel 4 of the vehicle. It is to be noted that the rotary shaft of the motor 3 may be coupled to a shifting machine or (a crankshaft of) an internal combustion engine. The motor 3 may include a three-phase brushless motor. In one specific but non-limiting example, the motor 3 may include a permanent magnet type synchronous motor. The motor 3 may include a rotor (a rotating element) and a stator (a fixed element). The rotor of the motor 3 may serve as a field. The stator may include three-phase (U-phase, V-phase, and W-phase) windings. The motor 3 may be of an inner rotor type or an outer rotor type. Moreover, permanent magnets may be on a surface of the rotor, or alternatively, the permanent magnets may be inside the rotor. A power supply 2 of the motor 3 may include an on-vehicle DC (direct current) voltage supply.
The control system may include a resolver 30 and a motor ECU (Electronic Control Unit) 1. The resolver 30 may detect a rotation position (rotation angle) θ and a rotation speed (rotation angular speed) ω of the rotor. The resolver 30 may include, for example, an input side winding and two output side windings. An AC signal (voltage) may be applied to the input side winding. This causes the input side winding to be excited, resulting in generation of an induced electromotive force in both the output side windings. Thus, each of the output side windings outputs an AC signal (voltage). Phases of the output signals of both the output side windings are different from each other. An amplitude of the output signal of each of the output side windings changes in accordance with the rotation position θ of the rotor. It is to be noted that the resolver 30 is not limited to those of an amplitude modulation method but may be of a phase modulation method.
The motor ECU 1 may include an electronic control unit that serves as a control device of the motor 3. The motor ECU 1 may include a power control unit in which an inverter 11, a current sensor 13, and an R/D (Resolver-Digital) converter 14 are mounted on one board together with a microcomputer 10. The inverter 11 may serve as a power conversion circuit. The R/D converter 14 may serve as an analog-to-digital conversion circuit. The microcomputer 10 may serve as a digital circuit. In this case, the motor ECU 1 may be covered with a shield in order to suppress influence of an external electromagnetic noise. It is to be noted that the inverter 11, without limitation, may be separate from the motor ECU 1, i.e., the microcomputer 10.
The inverter 11 may include a three-phase bridging circuit including six switching elements such as IGBTs (insulated gate bipolar transistors). The inverter 11 may be coupled to the power supply 2 by a power supply line 20, and be coupled to the motor 3 by an electric wire 21. A capacitor 12 may be provided in parallel with power supply 2 in order to control fluctuations in a DC voltage between the power supply 2 and the inverter 11. It is to be noted that the power supply 2 is not limited to a DC power supply but may include an AC power supply and a rectifying circuit. The current sensor 13 may include detectors that detect respective three-phase currents iu, iv, and iw flowing through the windings of the stator.
The R/D converter 14 may be coupled to the output side windings of the resolver 30 through a signal line 22. The R/D converter 14 may convert the analog signals inputted from the resolver 30, i.e., the output signals of the output side windings, into digital signals, and output the digital signals as a detection value of the rotation position θ of the rotor (a detected rotation position θ1) and a detection value of the rotation speed ω of the rotor (a detected rotation speed ω1). For example, the R/D converter 14 may calculate the detected rotation speed ω1 on the basis of cycles on which amplitude of the output signals of the output side windings change. The R/D converter 14 may calculate the detected rotation position θ1 by a combination of the output signals of both the output side windings.
In one embodiment of the technology, the R/D converter 14 may serve as a “first detector” configured to detect a rotation position of a rotor using a signal from a resolver.
Resolution of the rotation position θ by the R/D converter 14 is lower in a region where the rotation speed ω (or a rotational acceleration rate) of the rotor is higher than a first predetermined value A1, than in a region where the rotation speed ω is equal to or lower than the first predetermined value A1. That is, there is a range of the rotation speed ω in which the R/D converter 14 is able to detect the rotation position θ with predetermined resolution following rotation of the rotor, and an upper limit of the range (maximum speed) may serve as the first predetermined value A1. Accordingly, as illustrated by way of example in
Moreover, the R/D converter 14 is configured to be able to determine whether or not the output signals of the output side windings contain a noise. That is, a noise may be generated in a case where a leakage magnetic flux or other magnetic flux of the motor 3 passes through the windings of the resolver 30 or the signal line 22. In this case, there is possibility of deformation of waveforms themselves of the output signals of the output side windings. In addition, a noise may be generated in a case where, for example, the signal line 22 carries a spike caused by the inverter 11 as a PWM driving circuit. In this case, a spike-like noise is superimposed on the output waveforms of the output side windings. For example, the R/D converter 14 may determine that noise superimposition occurs in a case where the output signals become greater than or become lower than a predetermined threshold value, with amplitude centers and maximum amplitudes of the output signals of the output side windings falling within a normal range. It is to be noted that the R/D converter 14 may be configured to be able to detect, for example, a functional abnormality of the R/D converter 14 itself, or a disconnection of the signal line 22 coupled to the resolver 30.
The motor ECU 1 (microcomputer 10) may be coupled to a host ECU 5 and various sensors mounted on the vehicle via a CAN (Controller Area Network) or a signal line. These sensors may include, for example but not limited to, the resolver 30 and a vehicle speed sensor 6. The motor ECU 1 may generate a signal that operates the inverter 11 (the switching elements) and output the signal, on the basis of signals inputted from the sensors as mentioned above, in order to realize a command torque Tr* or a command rotation speed ω* of the motor 3 inputted from the host ECU 5. By controlling the motor 3 in this way, the motor ECU 1 realizes an appropriate driving force in accordance with a traveling state of the vehicle. It is to be noted that the motor ECU 1 may receive the signals from, for example, the vehicle speed sensor 6, (indirectly) through the host ECU 5.
The microcomputer 10 may include a central processing unit (CPU), a read-only memory (ROM), a random access memory (RAM), and an input/output interface (I/O). The CPU may execute various calculation processing. The ROM may hold various control programs. The RAM may be used as a work area for data storage and program execution. The microcomputer 10 may have a general configuration in which the CPU, the ROM, the RAM, and the I/O are coupled to one another through a bidirectional common bus. The microcomputer 10 may serve as a plurality of processors by executing a predetermined program. The plurality of processors may include a command current calculator 101, a command voltage calculator 102, coordinate converters 103 and 105, a PWM signal generator 104, a rotation position estimator 106, a rotation speed estimator 107, and a switcher 108. The term such as “calculation” to be carried out by the calculators as mentioned above may mean overall processing on software, and each of the plurality of the processors may be realized by software. It is to be noted that each of the plurality of the processor may be realized by an electronic circuit.
The command current calculator 101 may calculate command currents on a dq coordinate system (d-axis command current id* and q-axis command current iq*), on the basis of the command torque Tr* or on the basis of the command rotation speed ω* and the rotation speed ω (inputted from the switcher 108). The dq coordinate system is an orthogonal coordinate system that rotates in synchronization with the rotor (permanent magnets). The d-axis command current id* is a command value of a d-axis current component along a magnetic pole direction of the rotor. The q-axis command current iq* is a command value of a q-axis current component orthogonal to the d-axis. The command current calculator 101 may calculate the d-axis command current id* and the q-axis command current iq* by an arithmetic expression or may set them using a map. In this map, for example, the d-axis command current id* and the q-axis command current iq* corresponding to the command torque Tr* or a rotation speed deviation (ω*−ω) may be set in advance by, for example, experiments.
The command voltage calculator 102 may calculate command voltages on the dq coordinate system (d-axis command voltage vd* and q-axis command voltage vq*). For example, the d-axis command voltage vd* and the q-axis command voltage vq* may be calculated by integrating a deviation between the command currents id* and iq* (inputted from the command current calculator 101) and actual currents id and iq (inputted from the coordinate converter 105) and multiplying the resultant value by a predetermined gain.
The coordinate converter 103 may carry out calculation to convert the command voltages vd* and vq* (inputted from the command voltage calculator 102) into command voltages on a three-phase coordinate system fixed to the stator (three-phase command voltages, i.e., a u-phase command voltage vu*, a v-phase command voltage vv*, and a w-phase command voltage vw*), with the use of the rotation position θ of the rotor (inputted from the switcher 108). The command voltages vu*, vv*, and vw* are command voltages of respective phases that are directed to a control of the inverter 11.
The PWM (Pulse Width Modulation) signal generator 104 may generate an on/off signal (operating signal) on the basis of the three-phase command voltages vu*, vv*, and vw* (inputted from the coordinate converter 103), and output the resultant signal to the inverter 11. This causes voltage application to the respective phases of the motor 3 at duty ratios corresponding to the command voltages vu*, vv*, vw* of the respective phases. The inverter 11 may drive the motor 3 by supplying a three-phase current (sine wave).
The coordinate converter 105 may carry out calculation to convert the three-phase actual currents iu, iv, and iw (inputted from the current sensor 13) into actual currents on the dq coordinate system (d-axis actual current id and q-axis actual current iq), with the use of the rotation position θ of the rotor (inputted from the switcher 108).
The rotation position estimator 106 may calculate an estimated value (estimated rotation position) θ2 of the rotation position θ, using a predetermined model of the motor 3, on the basis of the dq-axis command voltages vd* and vq*, the dq-axis actual currents id and iq, and a rotation speed ω2 of the rotor (inputted from the rotation speed estimator 107). In one specific but non-limiting example, an induced voltage generated by the permanent magnets of the rotor may be calculated in a form of a vector by subtracting, from the command voltages vd* and vq*, a voltage drop (calculated by the command currents id and iq, and the rotation speed ω2) caused by winding resistance of the stator and dq-axis inductance. The estimated rotation position θ2 may be calculated from a phase of the vector (extended induced voltage). In this calculation, used may be values obtained by removing, by a low-pass filter, respective high-frequency components of the command voltages vd* and vq*, and the actual currents id and iq inputted. Moreover, a value obtained by removing, by a low-pass filter, a high-frequency component of the estimated rotation position θ2 calculated as described above may serve as the final estimated rotation position θ2.
In one embodiment of the technology, the rotation position estimator 106 may serve as a “second detector” configured to estimate the rotation position of the rotor using a current of a motor without using the signal from the resolver.
The rotation speed estimator 107 may calculate an estimated value (estimated rotation speed) ω2 of the rotation speed ω using the estimated rotation position θ2 (inputted from the rotation position estimator 106). For example, the rotation speed estimator 107 may be able to calculate the estimated rotation speed ω2 by differentiating the estimated rotation position θ2 inputted in or before previous processing and removing a high-frequency component thereof by a low-pass filter.
As illustrated in
The switcher 108 may be able to receive the command torque Tr* or the command rotation speed ω* of the motor 3 from the host ECU 5, and be able to receive a signal indicating that a vehicle control such as, but not limited to, a cruise control is being executed. The switcher 108 may switch between the detected rotation position θ1 and the estimated rotation position θ2, on the basis of, for example but not limited to, a signal from the host ECU 5, a signal from the R/D converter 14 (noise-related data), the rotation speeds ω1 and ω2, and a signal of a vehicle speed Vsp. The switcher 108 may set either the detected rotation position θ1 or the estimated rotation position θ2 as the final rotation position θ, to output the resultant rotation position θ. Moreover, the switcher 108 may switch between the detected rotation speed ω1 and the estimated rotation speed ω2. The switcher 108 may set either the detected rotation speed ω1 or the estimated rotation speed ω2 as the final rotation speed ω, to output the resultant rotation position ω.
In a case with a noise included in the output signals of the resolver 30 inputted to the R/D converter 14, the switcher 108 may be able to determine, on the basis of a signal from the R/D converter 14, magnitude of influence of the noise, i.e., a degree of noise influence, on accuracy or reliability of the detection of the detected rotation position θ1 and the detected rotation speed ω1 by the R/D converter 14. For example, in a case where the number of occurrences of the noise within a predetermined period of time is equal to or greater than a predetermined number of times, the switcher 108 may be able to determine that the degree of the noise influence is great. Alternatively, the switcher 108 may numeralize a degree of deformation of a signal waveform caused by the noise, and determine that the degree of the noise influence is great in a case where the numeralized value is equal to or greater than a predetermined threshold. In this way, the magnitude of the influence exerted by the noise may be determined by numeralizing the degree of the noise influence by a predetermined parameter such as, but not limited to, the number of times of the occurrence of the noise or the degree of the deformation of the waveform, and comparing the resultant value with the predetermined threshold.
In step S3, a determination may be made as to whether or not the degree of the noise influence d in the output signals of the resolver 30 is equal to or greater than a threshold D. As the degree of the noise influence d, a value calculated according to the procedure illustrated in
In step S5, the detected rotation position θ1 may be set as the rotation position θ, while the detected rotation speed ω1 may be set as the rotation speed ω. These values may be outputted and the current cycle may be terminated. In step S6, the estimated rotation position θ2 may be set as the rotation position θ, while the estimated rotation speed ω2 may be set as the rotation speed ω. These values may be outputted and the current cycle may be terminated.
It is to be noted that the switcher 108 may execute step S4 after making the negative determination in step S2 and before proceeding to step S3. In this case, after the negative determination is made in step S4, the process may proceed to step S3.
The switcher 108 may switch a combination of values (θ, ω) of the rotation position θ and the rotation speed ω between (θ1, ω1) and (θ2, ω). At this occasion, the switcher 108 may gradually change the combination of the values from pre-switching values to post-switching values. For example, in switching from (θ1, ω1) to (θ2, ω), instead of immediately switching to (θ2, ω), the switcher 108 may change the combination of the values toward (θ2, ω), with time change rates (Δθ, Δω) of the combination of the values (θ, ω) falling within predetermined ranges. For example, the switcher 108 may bring differences between the combinations of the values (θ, ω) outputted on the respective cycles, i.e., gradients of changes in the combination of the values (θ, ω), to predetermined constant values. It is to be noted that except at the time of the switching as mentioned above, the switcher 108 may output, to the R/D converter 14 or the rotation position estimator 106 (and the rotation speed estimator 107), a command to stop detection or estimation of whichever combination of (θ1, ω) and (θ2, ω) is not to be outputted.
In step S65, a determination may be made as to whether or not the detected rotation speed ω1 is smaller than the estimated rotation speed ω2, and whether or not a value (ω2−ω1) obtained by subtracting the detected rotation speed ω1 from the estimated rotation speed ω2 is greater than the variation threshold c. In a case with an affirmative determination (YES in step S65), the process may proceed to step S66. In a case with a negative determination (NO in step S65), the process may proceed to step S69. In step S66, a determination may be made as to whether or not a value (ω2−ω1)/n obtained by dividing the value (ω2−ω1) by the number of times n is smaller than the variation threshold c. In a case where the value (ω2−ω1)/n is smaller than the variation threshold c (YES in step S66), the process may proceed to step S67. In a case where the value (ω2−ω1)/n is equal to or greater than the variation threshold c (NO in step S66), the process may proceed to step S68. In step S67, a value obtained by adding the value (ω2−ω1)/n to the detected rotation speed ω1 may be set as the control rotation speed ω. In step S68, a value obtained by adding the variation threshold value c to the detected rotation speed ω1 may be set as the control rotation speed ω. In step S69, the estimated rotation speed ω2 may be set as the control rotation speed ω.
That is, in switching the rotation speed ω from the detected rotation speed ω1 to the estimated rotation speed ω2, the switcher 108 may reduce an amount of variation for each cycle in the control rotation speed ω to a value equal to or smaller than the variation threshold c. In one specific but non-limiting example, in the case where magnitude of a rotation speed difference between the detected rotation speed ω1 and the estimated rotation speed ω2 is equal to or smaller than the variation threshold c, the switcher 108 may immediately switch from the detected rotation speed ω1 to the estimated rotation speed ω2 (steps S61→S65→S69). In the case where the rotation speed difference between the pre-switching detected rotation speed ω1 and the post-switching estimated rotation speed ω2 is greater than the variation threshold c, the switcher 108 may gradually decrease the rotation speed difference by dividing it by the predetermined number of times n, to reduce the amount of variation for each cycle in the control rotation speed ω at the time of the switching to a value smaller than the variation threshold c (steps S61→S62→S63, and steps S65→S66→S67). In a case where the value obtained by dividing the rotation speed difference by the number of times n is equal to or greater than the variation threshold c, the switcher 108 may gradually decrease the rotation speed difference by the variation threshold c, to reduce the amount of variation for each cycle in the control rotation speed ω at the time of the switching to the variation threshold c (steps S61→S62→S64, and steps S65→S66→S68). It is to be noted that the variation threshold c in steps S61 and S65 may be a value different from the variation threshold c in, for example, steps S62 and S66. The switcher 108 may use the same procedure as that of
Described next are workings and effects. The motor ECU 1 may be able to execute a motor control (hereinafter referred to as a first control) using the rotation position θ1 detected by the R/D converter 14 and a motor control (hereinafter referred to as a second control) using the rotation position θ2 estimated by the rotation position estimator 106 (microcomputer 10). The rotation position θ1 is the rotation position detected using the signals from the resolver 30. The rotation position θ2 is the rotation position estimated using the currents of the motor 3. The motor ECU 1 is able to switch between the first control and the second control to execute the first control or the second control, by switching between the detected rotation position θ1 and the estimated rotation position θ2 to use the detected rotation position θ1 or the estimated rotation position θ2. This makes it possible to enhance fail-safe performance because in a case where the R/D converter 14 or the rotation position estimator 106 fails, it is possible to use the remaining one. Even in a case where neither the R/D converter 14 nor the rotation position estimator 106 fails, it is possible to realize high accuracy or responsiveness of the motor control as a whole, by switching between the first control and the second control so as to cover weakness of the first control and the second control.
That is, the weakness of the first control include, for example, the following points (A) and (B).
(A) In the region where the rotation speed ω of the rotor is high (ω>A1), the resolution of the detected rotation position θ1 lowers, causing possibility that the detection accuracy X12 of the detected rotation position θ1 (and the detected rotation speed oil) may become lower than the requested accuracy X0. It is to be noted that in order to prevent the detection accuracy from becoming lower than the requested accuracy X0, the predetermined value A1 may be raised. The predetermined value A1 corresponds to the upper limit A1 of the rotation speed ω at which the resolution of the detected rotation position θ1 is kept high. However, this may cause an increase in costs of the R/D converter 14.
(B) The signals from the resolver 30 may contain a noise via the signal line 22 that couples together the resolver 30 and the motor ECU 1. In particular, the noise is likely to be introduced in a case where the signal line 22 is extended close to the motor 3, or is disposed parallel to the power supply line 20 or the electric wire 21, or the signal line 22 is relatively long.
The weakness of the second control include, for example, the following points (C) and (D).
(C) In the region where the rotation speed ω of the rotor is low (ω<A2), the estimation accuracy X2 of the estimated rotation position θ2 (and the estimated rotation speed ω2) may become lower than the requested accuracy X0.
(D) The estimation processing of the rotation position θ2 (and the rotation speed ω2) is necessary in a feedback control, causing low responsiveness to changes in the command values Tr* and ω*.
That is, as to the first control, the resolution of the detected rotation position θ1 using the signals from the resolver 30 is higher in the region where the rotation speed ω is equal to or lower than the first predetermined value A1, than in the region where the rotation speed ω is greater than the first predetermined value A1. However, with the noise included in the signals from the resolver 30, there is possibility that the detection accuracy X11 of, for example, the detected rotation position θ1 may lower. Meanwhile, as to the second control, the current signals are less likely to include the noise because, for example, the currents iu, iv, iw of the motor 3 are detectable inside the motor ECU 1. Estimating, for example, the estimated rotation position θ2 using the current signals hardly causes possibility that the estimation accuracy X2 of, for example, the estimated rotation position θ2 lowers due to the noise. In the second control, however, the responsiveness to the changes in the command values Tr* and ω* is lower than that in the first control. Moreover, in the second control, in the region where the rotation speed ω is lower than the second predetermined value A2, there is possibility that the estimation accuracy X2 of, for example, the estimated rotation position θ2 may become lower than the requested accuracy X0.
The motor ECU 1 may, therefore, basically execute the first control in the region where the rotation speed ω of the rotor is equal to or lower than the first predetermined value A1. This allows the detection accuracy X11 using the resolver 30 to be equal to or higher than the requested accuracy X0, making it possible to attain enhanced accuracy of the motor control. For example, in the case where the rotation speed ω is lower than the second predetermined value A2 (A2<A1), the motor ECU 1 may execute the first control while inhibiting the second control (steps S2→S5 in
For example, in the region where the rotation speed ω of the rotor is equal to or lower than the first predetermined value A1, the motor ECU 1 may determine the magnitude of the influence of the noise in the signals from the resolver 30 on the accuracy of the detection by the R/D converter 14. In a case where the magnitude of the influence is equal to or greater than the predetermined threshold D, the motor ECU 1 may execute the second control while inhibiting the first control (steps S3→S6 in
Meanwhile, in the case with possibility of low responsiveness of the second control, the motor ECU 1 may execute the first control while inhibiting the second control. For example, the motor ECU 1 may execute the first control while inhibiting the second control, in the case where the amount of change per time ΔTr* in the torque Tr* of the motor 3 is equal to or greater than the threshold B (steps S4→S5 in
It is to be noted that the use of the amount of change ΔTr* in the command value Tr* of the motor torque is non-limiting. The determination as to the change in the torque may be made, with the use of an amount of change ΔTr in the detected value Tr by, for example, a sensor. In the case with the use of the amount of change ΔTr* in the command value Tr*, it is unnecessary to detect an actual torque value, making it possible to determine the change in the torque more quickly. Moreover, the use of the amount of change in the torque itself of the motor 3 is non-limiting. The determination as to the change in the torque may be made, with the use of an amount of change per time in a parameter related to the torque of the motor 3. For example, the rotational acceleration rate or a current of the motor 3 may be used as the parameter. Note that the concept of an acceleration rate includes a deceleration rate, and the same shall apply hereinafter. The parameter as mentioned above may be a value detected by, for example, a sensor, an estimated value obtained by calculation, or a command value.
The motor ECU 1 may also execute the first control while inhibiting the second control, in the case where the amount of change per time ΔTr* in the torque Tr* of the motor 3 is smaller than the threshold B. Meanwhile, the motor ECU 1 according to this embodiment may execute the second control while inhibiting the first control, in the case where the amount of change per time ΔTr* in the torque Tr* of the motor 3 is smaller than the threshold B (steps S4→S6 in
In addition, for example, the motor ECU 1 may execute the first control while inhibiting the second control, in the case where the amount of change per time Δω in the rotation speed ω of the motor 3 is equal to or greater than the threshold C (steps S4→S5 in
It is to be noted that the use of the amount of change in the detected rotation speed ω1 or the estimated rotation speed ω2 is non-limiting. The motor ECU 1 may determine the change in the rotation speed ω with the use of the amount of change Δω* in the command value ω* of the rotation speed. The use of the amount of change Δω* in the command value makes it unnecessary to detect or estimate the actual rotation speed ω. Hence, it is possible to determine the change in the rotation speed ω more quickly. Further, the use of the amount of change in the rotation speed ω itself of the motor 3 is non-limiting. The motor ECU 1 may determine the change in the rotation speed ω, with the use of the amount of change per time in the parameter related to the rotation speed ω. For example, the rotational acceleration rate or a voltage of the motor 3 may be used as the parameter as mentioned above. The parameter may be a value detected by, for example, a sensor, an estimated value obtained by calculation, or a command value.
The motor ECU 1 may also execute the first control while inhibiting the second control, in the case where the amount of change per time Δω in the rotation speed ω of the motor 3 is smaller than the threshold C. Meanwhile, the motor ECU 1 according to this embodiment may execute the second control while inhibiting the first control, in the case where the amount of change per time Δω in the rotation speed ω of the motor 3 is smaller than the threshold C (steps S4→S6 in
The motor 3 is directed to vehicle driving. The amount of change per time ΔTr* in the torque of the motor 3 may correspond to an amount of change per time in a vehicle driving force to be requested in a vehicle control. Accordingly, executing the first control while inhibiting the second control in the case where the amount of change ΔTr* is equal to or greater than the threshold B contributes to enhanced responsiveness of a vehicle driving force control by ensuring the responsiveness of the motor control. Further, for example, in a hybrid electric vehicle, in a case of a control of the torque of the motor 3 in cooperation with output torque of an engine, controlling the change in the torque of the motor 3 with high accuracy makes it possible to enhance fuel consumption or exhaust performance of the engine. From this viewpoint, in step S4 of
Moreover, the amount of change per time Δω in the rotation speed ω of the motor 3 may correspond to an amount of change per time of the vehicle speed Vsp, i.e., the vehicle acceleration rate, that is requested in the vehicle control. Accordingly, executing the first control while inhibiting the second control in the case where the amount of change Δω is equal to or greater than the threshold C contributes to the enhanced responsiveness of a vehicle speed control by ensuring the responsiveness of the motor control. From this viewpoint, in step S4 of
In a case where the cruise control is being executed that includes maintaining the vehicle speed Vsp within a predetermined range, the amount of change per time in the vehicle speed Vsp requested in the control is small. It may be, therefore, determined that the amount of change per time Δω in the rotation speed ω of the motor 3 is small. Accordingly, in the case where the cruise control is being executed, the motor ECU 1 may execute the second control while inhibiting the first control. For example, in step S4 of
It is to be noted that it suffices for the method of estimating the rotation position θ2 of the rotor without using the signals from the resolver 30 to use the currents of the motor 3. Non-limiting examples may include to superimpose a pulse signal for position estimation on the command voltage and to detect a current response to estimate the rotation position θ2. In contrast, the motor ECU 1 (microcomputer 10) according to this embodiment may estimate the rotation position θ2 of the rotor on the basis of the induced electromotive force of the motor 3 generated by the rotation of the rotor. Accordingly, in a case where a circuit that detects the induced electromotive force (rotation position estimator 106 or rotation speed estimator 107) has a time constant (filter), the responsiveness to the changes in the command values Tr* and ω* becomes low. Thus, switching to the first control makes it possible to effectively compensate the deterioration in the responsiveness of the motor control. Moreover, in the case where the rotation speed ω of the rotor is low, there is high possibility of deterioration in the accuracy in estimating the rotation position θ2 using the induced electromotive force. In contrast, the motor ECU 1 may execute the first control while inhibiting the second control in the region in which the rotation speed ω is lower than the second predetermined value A2 (steps S2→S5 in
The motor ECU 1 may execute the second control while inhibiting the first control in the region in which the rotation speed ω is higher than the first predetermined value A1 (steps S1→S6 in
In switching between the first control and the second control, the motor ECU 1 may gradually change the rotation position θ used in controlling the motor 3 from the pre-switching value to the post-switching value. This suppresses the rotation position θ to be used in the motor control from changing abruptly in accompaniment with the switching between the first control and the second control. Hence, it is possible to suppress instability of the motor control. It is to be noted that in step S1 of
Described next, with reference to
In switching the combination of the values (θ, ω) of the rotation position θ and the rotation speed ω between (θ1, ω1) and (θ2, ω), in a case where the rotation speed ω falls within a predetermined range including the third predetermined value A3, the switcher 108 may change the combination of the values (θ, ω) from the pre-switching values to the post-switching values earlier in a case where the rotational acceleration rate in a direction toward the third predetermined value A3 is greater than a predetermined threshold, than in a case where the rotational acceleration rate is smaller than the predetermined threshold. For example, in the case where the rotation speed ω falls within the predetermined range including the third predetermined value A3, if the rotational acceleration rate in the direction toward the third predetermined value A3 is equal to or greater than the predetermined threshold, changing the third predetermined value A3 so as to bring the third predetermined value A3 closer to the current rotation speed ω makes it possible to advance start timing of the switching. Description is given next of workings and effects. In the case where the rotation speed ω of the rotor is equal to or lower than the third predetermined value A3, the motor ECU 1 may execute the first control while inhibiting the second control. Thus, in the case where the rotation speed ω is equal to or lower than the third predetermined value A3, the vehicle speed Vsp is low. It may be, therefore, determined that the amount of change per time in the vehicle driving force requested in the vehicle control is great, that is, the responsiveness requested for the control of the motor 3 is higher than the responsiveness of the second control. In such a case, executing the first control to detect the rotation position at higher responsiveness to the change in the requested driving force makes it possible to accurately control the torque of the motor 3, i.e., the driving force of the vehicle. It is to be noted that setting the third predetermined value A3 to a higher value than the second predetermined value A2 produces, in a case where the process proceeds from step S10 to step S5, similar workings and effects to those in the first embodiment in the case where the process proceeds from step S2 to step S5.
In the case where the rotation speed ω falls in the predetermined range including the third predetermined value A3, the motor ECU 1 may switch between the first control and the second control earlier in the case where the rotational acceleration rate in the direction toward the third predetermined value A3 is greater than the predetermined threshold, than in the case where the rotational acceleration rate is smaller than the predetermined threshold. In other words, there is higher possibility that the rotation speed ω changes across the third predetermined value A3 in the case where the rotational acceleration rate in the direction toward the third predetermined value A3 is greater than the predetermined threshold, than in the case where the rotational acceleration rate is smaller than the predetermined threshold. In such a case, switching between the first control and the second control at earlier timing makes it possible to realize quicker and more accurate switching. For example, in the case where the rotational acceleration rate in the direction toward the third predetermined value A3 is equal to or greater than the predetermined threshold, the third predetermined value A3 may be changed so as to bring the third predetermined value A3 closer to the current rotation speed ω. In this case, it is possible to change the timing as mentioned above by a simple configuration in which the third predetermined value A3 as a threshold of the switching between the first control and the second control is changed.
It is to be noted that in step S10 of
In the case where the cruise control is being executed that includes maintaining the vehicle speed Vsp within the predetermined range, the amount of change per time in the vehicle driving force requested in the vehicle control is small. It may be, therefore, determined that the responsiveness requested for the control of the motor 3 is low. Accordingly, in the case where the cruise control is being executed, the motor ECU 1 may execute the second control while inhibiting the first control. For example, step S11 may be provided on the way to step S3, in the case with the negative determination in step S10 of
Although some preferred but non-limiting embodiments of the technology are described above by way of example with reference to the accompanying drawings, the technology is by no means limited to the embodiments described above. It should be appreciated that modifications and alterations may be made by persons skilled in the art without departing from the scope as defined by the appended claims.
For example, the motor is not limited to a synchronous motor, but may be, for example, an induction motor. In short, it suffices to be a rotating electric machine including a rotor and a resolver. The application of the motor is not limited to a vehicle, and may be, for example, a home appliance.
The control method of the voltage to be outputted from the inverter to the motor is not limited to the PWM control. The voltage to be outputted from the inverter to the motor may be controlled using a PAM (Pulse Amplitude Modulation) control. The voltage to be outputted from the inverter to the motor is not limited to a sine wave, and may be a rectangular wave or a trapezoidal wave. That is, the motor is not limited to a brushless AC motor, and may be a brushless DC motor.
The method by which the motor control apparatus controls the motor using the detected or estimated rotation position is not limited to a vector control. Using the vector control as in the forgoing example embodiments makes it possible to efficiently control the torque of the motor.
The motor control apparatus may estimate the currents to be used in the sensorless control, i.e., the second control, without directly detecting the currents by the current sensor. For example, a DC bus current of an inverter may be detected by, for example, a shunt resistance, and the currents of the motor may be estimated and calculated.
According to the aspects of the technology, it is possible to provide a motor control apparatus and a motor control method that switch between a first control and a second control, making it possible to achieve high accuracy or responsiveness, or both, of a motor control as a whole.
The motor ECU 1 or the microcomputer 10 illustrated in
It should be appreciated that modifications and alterations may be made by persons skilled in the art without departing from the scope as defined by the appended claims. The use of the terms first, second, etc. does not denote any order or importance, but rather the terms first, second, etc. are used to distinguish one element from another. The technology is intended to include such modifications and alterations in so far as they fall within the scope of the appended claims or the equivalents thereof.
Number | Date | Country | Kind |
---|---|---|---|
2018-200343 | Oct 2018 | JP | national |