Motor control device and control method

By designing a motor control device including a first detection unit and a second detection unit, the rotational position is detected by using the rotary transformer signal and motor current, the problem of insufficient control accuracy and responsiveness in the prior art is solved, and high-precision and high-responsive motor control is realized.

CN111181449BActive Publication Date: 2025-04-08SUBARU CORP
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN201910948815.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2018-10-24
Filing Date
2019-10-08
Publication Date
2025-04-08
Estimated Expiration
2039-10-08

AI Technical Summary

Technical Problem

In normal times, the existing motor control device cannot fully utilize the characteristics of the two detection units, resulting in room for improvement in control accuracy and responsiveness.

Method used

A motor control device is designed, including a first detection unit and a second detection unit. The first detection unit uses a rotation transformer signal to detect the rotor rotation position, and the resolution is low in the high rotation speed region; the second detection unit does not use the rotation transformer signal, but estimates the rotation position by the motor current. The control device can switch between two control modes in the low rotation speed area and switch according to conditions such as noise influence and torque change.

Benefits of technology

By switching the first control and the second control, high accuracy and responsiveness of the motor control are achieved, fail-safe performance is improved, and the impact of noise on detection accuracy is reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN111181449B_ABST
    Figure CN111181449B_ABST
Patent Text Reader

Abstract

The present invention provides a control device and a control method for a motor capable of improving the accuracy or responsiveness of control. The motor control device includes a detection unit for detecting the rotational position of a rotor, the detection unit includes: a first detection unit, which detects the rotational position of the rotor using a signal from a rotary transformer, the resolution of the rotational position of the first detection unit is lower in an area where the rotational speed of the rotor is higher than a predetermined value than in an area where the rotational speed is below the predetermined value; and a second detection unit, which estimates the rotational position of the rotor using the current of the motor instead of using the signal from the rotary transformer, the control device can execute a first control for controlling the motor using the rotational position detected by the first detection unit, and a second control for controlling the motor using the rotational position estimated by the second detection unit, and is set to be able to switch and execute the first control and the second control in an area where the rotational speed is below the predetermined value.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to a control device and a control method for a motor. Background Art

[0002] Conventionally, there are known motor control devices that include a detection unit for detecting the rotational position of a motor. For example, the control device described in Patent Document 1 includes an R / D converter that converts an angle signal detected by a resolver into a digital signal, and is configured to be able to estimate the rotational angle of the motor based on the back electromotive force detected from the motor.

[0003] Prior art literature

[0004] Patent Literature

[0005] Patent Document 1: Japanese Patent Application Publication No. 2003-164187 Summary of the invention

[0006] Technical issues

[0007] However, since the control device described in the above-mentioned Patent Document 1 is configured to detect the rotation angle using an R / D converter in normal times and to detect the rotation angle based on back electromotive force in the event of a fault, it is not possible to utilize the characteristics of the two detection units to control the motor in normal times. Therefore, there is room for improving the accuracy or responsiveness of the control.

[0008] Therefore, the present invention has been made in view of the above-mentioned problems, and an object of the present invention is to provide a new and improved motor control device and control method capable of improving the control accuracy or responsiveness.

[0009] Technical Solution

[0010] In order to solve the above-mentioned problems, according to one aspect of the present invention, there is provided a motor control device for controlling a motor having a rotor, wherein a rotary transformer is provided in the motor, and the control device has a detection unit for detecting the rotational position of the rotor, the detection unit having: a first detection unit, which detects the rotational position of the rotor using a signal from the rotary transformer, wherein a resolution of the rotational position of the first detection unit is lower in an area where a rotational speed of the rotor is higher than a first predetermined value than in an area where the rotational speed is below the first predetermined value; and a second detection unit, which estimates the rotational position of the rotor using a current of the motor instead of a signal from the rotary transformer, wherein the control device is capable of executing a first control for controlling the motor using the rotational position detected by the first detection unit and a second control for controlling the motor using the rotational position estimated by the second detection unit, and the control device is configured to be capable of switching between the first control and the second control for execution in an area where the rotational speed is below the first predetermined value.

[0011] The motor control device may be configured to gradually change the rotation position used for controlling the motor from a value before switching to a value after switching when switching between the first control and the second control.

[0012] The motor control device may be configured to determine the magnitude of the effect of noise in the signal from the resolver on the accuracy of detection by the first detection unit, and to execute the second control and prohibit the first control when the magnitude of the effect is greater than a threshold.

[0013] The control device of the motor can be set to execute the first control and prohibit the second control when the change in the motor torque per unit time or the change in the rotational speed per unit time, or the change in a parameter related to the motor torque per unit time or the change in a parameter related to the rotational speed per unit time is greater than a threshold value.

[0014] In an area where the rotation speed of the rotor is lower than a second predetermined value which is smaller than the first predetermined value, the estimated accuracy of the above-mentioned rotation position of the second detection unit is lower than the predetermined required accuracy, and the control device of the motor can be set to execute the first control and prohibit the second control when the rotation speed of the rotor is lower than the second predetermined value.

[0015] In an area where the rotation speed of the rotor is lower than a second predetermined value that is smaller than the first predetermined value, the estimated accuracy of the above-mentioned rotation position of the second detection unit is lower than a predetermined required accuracy, and the control device of the motor can be set to execute the first control and prohibit the second control when the rotation speed of the rotor is below a third predetermined value that is lower than the first predetermined value and higher than the second predetermined value.

[0016] The control device of the motor can be set to switch between the first control and the second control when the rotation speed of the rotor changes across a predetermined value. Furthermore, it can be set to switch between the first control and the second control earlier when the rotation acceleration of the rotor in the direction of the predetermined value is large than when the rotation acceleration is small when the rotation speed of the rotor is within a predetermined range including the predetermined value.

[0017] In addition, according to another aspect of the present invention, a motor control device is provided, which is a control device for controlling a motor used to drive a vehicle, wherein a rotary transformer is provided in the motor, and the control device has a detection unit for detecting the rotational position of the rotor of the motor, the detection unit having: a first detection unit, which uses a signal from the rotary transformer to detect the rotational position of the rotor; and a second detection unit, which uses the current of the motor to estimate the rotational position of the rotor without using the signal from the rotary transformer, and the control device is capable of switching and executing a first control and a second control, wherein the first control controls the motor using the rotational position detected by the first detection unit, and the second control controls the motor using the rotational position estimated by the second detection unit, and the control device is set to execute the first control and prohibit the second control when the change in the vehicle's driving force per unit time or the change in the vehicle speed per unit time, or the change in a parameter related to the vehicle's driving force per unit time or the change in a parameter related to the vehicle speed per unit time is greater than a threshold value.

[0018] The control device for the motor may be configured to execute the second control and prohibit the first control when a cruise control for maintaining the vehicle speed within a predetermined range is executed.

[0019] In addition, according to another aspect of the present invention, a motor control method is provided, which is a method in which a control device controls a motor having a rotor and a rotary transformer, wherein the motor control method switches and executes a first control and a second control in an area where the rotation speed of the rotor is below a predetermined value, wherein the first control controls the motor using the rotation position of the rotor detected by a detection method, wherein the detection method is a method of detecting the rotation position using a signal from a rotary transformer, wherein the resolution of the rotation position of the detection method is lower in an area where the rotation speed of the rotor is higher than the predetermined value than in an area where the rotation speed is below the predetermined value, and wherein the second control controls the motor using an estimated rotation position, wherein the estimated rotation position is estimated using the current of the motor instead of using the signal from the rotary transformer.

[0020] Technical Effects

[0021] According to the present invention, a motor control device and a motor control method are provided that can realize high accuracy or responsiveness of motor control as a whole by switching between first control and second control. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1 This is a block diagram of a motor control device according to a first embodiment of the present invention.

[0023] Figure 2 : is a graph showing the relationship between the rotation speed of the motor according to the present embodiment, the detection accuracy using the resolver, and the estimation accuracy using the current.

[0024] Figure 3 1 is a flowchart showing a calculation process of the noise influence degree performed by the motor control device of the embodiment.

[0025] Figure 4 1 is a flowchart showing a switching process performed by the motor control device according to the embodiment.

[0026] Figure 5 1 is a flowchart showing a process of setting a control rotational speed at the time of switching performed by the motor control device according to the embodiment.

[0027] Figure 6 1 is a flowchart showing a switching process performed by the motor control device according to the second embodiment of the present invention.

[0028] Explanation of symbols

[0029] 1 Motor ECU (control device)

[0030] 106 Rotational position estimation unit (second detection unit)

[0031] 14 R / D converter (first detection unit)

[0032] 3 Motor

[0033] 30 Resolver DETAILED DESCRIPTION

[0034] The preferred embodiments of the present invention are described in detail below with reference to the accompanying drawings. It should be noted that in this specification and the accompanying drawings, the same symbols are marked for elements having substantially the same functions and structures, thereby omitting repeated descriptions, and elements that are not directly related to the present invention are omitted from illustration.

[0035] <First embodiment>

[0036] [constitute]

[0037] First, the configuration of a motor (rotating electric machine) control device according to the first embodiment will be described. The control device of this embodiment is applied to a control system of a motor mounted on an electric vehicle. Figure 1 1 is a block diagram showing the electrical configuration of the control system. The electric vehicle may be an electric vehicle or a hybrid electric vehicle. In addition, it is not limited to an automobile and may be a vehicle used for railways, etc.

[0038] Motor 3 is an electric generator that functions as a driving force source for generating a driving force for the vehicle and can function as a generator. The rotating shaft of motor 3 is connected to the driving wheel 4 of the vehicle. It should be noted that the rotating shaft of motor 3 can be connected to a transmission or an internal combustion engine (crankshaft). Motor 3 is a three-phase brushless motor, specifically a permanent magnet synchronous motor. The rotor of motor 3 functions as a field magnet. The stator has three-phase (U-phase, V-phase and W-phase) coils. Motor 3 can be an inner rotor type or an outer rotor type. In addition, the permanent magnet can be located on the surface of the rotor or inside the rotor. The power supply 2 of motor 3 is a vehicle-mounted DC voltage source.

[0039] The control system has a rotary transformer 30 and a motor ECU (Electronic Control Unit) 1. The rotary transformer 30 detects the rotation position (rotation angle) θ and the rotation speed (rotation angular velocity) ω of the rotor. The rotary transformer 30, for example, has an input side coil and two output side coils. An AC signal (voltage) is applied to the input side coil. Thus, if the input side coil is excited, an induced electromotive force is generated in the two output side coils, and each output side coil outputs an AC signal (voltage). The phases of the output signals of the two output side coils are different from each other. The amplitude of the output signal of each output side coil varies according to the rotation position θ of the rotor. It should be noted that the rotary transformer 30 is not limited to an amplitude modulation method, but can also be a phase modulation method.

[0040] The motor ECU 1 is an electronic control unit that functions as a control device for the motor 3. The motor ECU 1 can be configured as a power control unit that includes an inverter 11 (as a power conversion circuit), a current sensor 13, and an R / D (Resolver-Digital) converter 14 (as an analog-to-digital conversion circuit) and a microcomputer 10 (as a digital circuit) on a single substrate. In this case, in order to suppress the influence of external electromagnetic noise, the motor ECU 1 can be covered with a shielding object. It should be noted that the inverter 11 and the like can be separate from the motor ECU (microcomputer 10).

[0041] The inverter 11 is a three-phase bridge circuit composed of six switching elements (IGBT, etc.). The inverter 11 is connected to the power supply 2 through the power line 20, and is connected to the motor 3 through the wire 21. In order to suppress the change of the DC voltage between the power supply 2 and the inverter 11, a capacitor 12 is provided in parallel with the power supply 2. It should be noted that the power supply 2 is not limited to a DC power supply, and can also be composed of an AC power supply and a rectifier circuit. The current sensor 13 is a detector that detects the three-phase currents iu, iv, and iw flowing in the stator coil respectively.

[0042] The R / D converter 14 is connected to the output side coil of the resolver 30 via the signal line 22. The R / D converter 14 converts the analog signal (output signal of the output side coil) received from the resolver 30 into a digital signal, and outputs it as a detection value of the rotation position θ of the rotor (detected rotation position θ1) and a detection value of the rotation speed ω (detected rotation speed ω1). For example, the R / D converter 14 calculates the detected rotation speed ω1 based on the cycle of the amplitude change of the output signal of the output side coil. The detected rotation position θ1 is calculated based on the combination of the output signals of the two output side coils. The R / D converter 14 functions as a first detection unit for detecting the rotation position θ of the rotor.

[0043] The resolution of the rotation position θ of the R / D converter 14 is lower in the region where the rotation speed ω (or rotation acceleration) of the rotor is higher than the first predetermined value A1 than in the region where the rotation speed ω is lower than the first predetermined value A1. That is, the R / D converter 14 has a range of the rotation speed ω in which the rotation position θ can be detected with a predetermined resolution following the rotation of the rotor, and the upper limit (maximum speed) of the range is the first predetermined value A1. Therefore, if Figure 2 As shown in the example, the detection accuracy X11 of the rotation position θ1 and the rotation speed ω1 detected by the resolver 30 in the region where the rotation speed ω is below the first predetermined value A1 is higher than the detection accuracy X12 of the rotation position θ1 and the rotation speed ω1 detected by the resolver 30 in the region where the rotation speed ω is higher than the first predetermined value A1. Here, generally, the accuracy of the rotation position θ or the rotation speed ω required for controlling the motor when the rotation speed ω is low (hereinafter referred to as the required accuracy) X0 is higher than when the rotation speed ω is high. Figure 2 In the example, the shaded area is used to represent the area that does not meet the required accuracy X0. Figure 2 As shown, in the region where the rotation speed ω is less than or equal to the first predetermined value A1, the detection accuracy X11 by the resolver 30 can be greater than or equal to the required accuracy X0.

[0044] In addition, the R / D converter 14 is configured to be able to determine whether noise is mixed in the output signal of the output side coil. That is, when the leakage magnetic flux of the motor 3 or other magnetic flux penetrates the coil or signal line 22 of the rotary transformer 30, noise will be generated. In this case, the waveform of the output signal of the output side coil itself may be deformed. In addition, when the spike signal generated by the inverter 11 as a PWM drive circuit is loaded on the signal line 22, etc., noise will be generated. In this case, the spike-shaped noise is superimposed on the output waveform of the output side coil. The R / D converter 14 can, for example, determine that the superposition of noise is generated when the amplitude center and the maximum amplitude of the output signal of the output side coil are within the normal range and the above-mentioned output signal is higher or lower than a predetermined threshold. It should be noted that the R / D converter 14 can be configured to detect a functional abnormality of the R / D converter 14 itself, or a disconnection of the signal line 22 connected to the rotary transformer 30, etc.

[0045] The motor ECU1 (microcomputer 10) is connected to the upper ECU5 and various sensors mounted on the vehicle via CAN (Controller Area Network) or signal lines. These sensors include a rotary transformer 30 and a vehicle speed sensor 6, etc. The motor ECU1 generates a signal to operate the inverter 11 (switching element) based on the signal received from the above-mentioned sensor and outputs it so as to realize the command torque Tr* or command rotation speed ω* of the motor 3 received from the upper ECU5. Thus, by controlling the motor 3, an appropriate driving force that conforms to the driving conditions of the vehicle is realized. It should be noted that the motor ECU1 can (indirectly) receive signals from the vehicle speed sensor 6, etc. via the upper ECU5.

[0046] The microcomputer 10 may be a general structure as follows: it has a central processing unit (CPU) that performs various calculations, a read-only memory (ROM) that stores various control programs, a random access memory (RAM) used as a work area for storing data and / or executing programs, and an input / output interface (I / O), and the above-mentioned devices are connected to each other through a bidirectional common bus. The microcomputer 10 functions as a plurality of processing units by executing predetermined programs. The plurality of processing units include a command current calculation unit 101, a command voltage calculation unit 102, a coordinate conversion unit 103, a coordinate conversion unit 105, a PWM signal generation unit 104, a rotation position estimation unit 106, a rotation speed estimation unit 107, and a switching unit 108. Here, calculations, etc. refer to the entire processing on software, and each processing unit is implemented by software. It should be noted that each processing unit can also be implemented by an electronic circuit.

[0047] The command current calculation unit 101 calculates the command current (d-axis command current id*, q-axis command current iq*) on the dq coordinate system based on the command torque Tr*, or based on the command rotation speed ω* and the rotation speed ω (received from the switching unit 108). The dq coordinate system is an orthogonal coordinate system that rotates synchronously with the rotor (permanent magnet). The d-axis command current id* is the command value of the d-axis current component along the magnetic pole direction of the rotor. The q-axis command current Iq* is the command value of the q-axis current component orthogonal to the d-axis. The command current calculation unit 101 can calculate id* and iq* through arithmetic expressions, or it can set id* and iq* using a mapping. In the mapping, id* and iq* that conform to the command torque Tr* or the rotation speed deviation (ω*-ω) are set in advance, for example, through experiments.

[0048] The command voltage calculation unit 102 calculates the command voltage (d-axis command voltage vd*, q-axis command voltage vq*) on the dq coordinate system. For example, vd* and vq* are calculated by integrating the deviation between the command current id* and iq* (received from the command current calculation unit 101) and the actual current id and iq (received from the coordinate conversion unit 105) and multiplying the deviation by a predetermined gain.

[0049] The coordinate conversion unit 103 performs the following calculation: using the rotation position θ of the rotor (received from the switching unit 108), the command voltages vd* and vq* (received from the command voltage calculation unit 102) are converted into command voltages (three-phase command voltages, i.e., u-phase command voltage vu*, v-phase command voltage vv*, and w-phase command voltage vw*) fixed on the three-phase coordinate system of the stator. vu*, vv*, and vw* are command voltages for controlling each phase of the inverter 11.

[0050] The PWM (Pulse Width Modulation) signal generation unit 104 generates an on / off signal (operation signal) based on the three-phase command voltages vu*, vv*, and vw* (received from the coordinate conversion unit 103), and outputs it to the inverter 11. Thus, a voltage is applied to each phase of the motor 3 at a duty ratio corresponding to the command voltages vu*, vv*, and vw* of each phase. The inverter 11 drives the motor 3 by supplying a three-phase current (sine wave).

[0051] The coordinate conversion unit 105 performs the following calculation: using the rotor rotation position θ (received from the switching unit 108), the three-phase actual currents iu, iv, iw (received from the current sensor 13) are converted into actual currents on the dq coordinate system (d-axis actual current id, q-axis actual current iq).

[0052] The rotation position estimation unit 106 calculates the estimated value (estimated rotation position) θ2 of the rotation position θ based on the dq axis command voltage vd*, vq*, the dq axis actual current id, iq, and the rotation speed ω2 of the rotor (received from the rotation speed estimation unit 107), using the predetermined mode of the motor 3. Specifically, by subtracting the amount of voltage drop (calculated by id, iq and ω2) generated by the coil resistance of the stator and the dq axis inductance from vd*, vq*, the induced voltage generated by the permanent magnet of the rotor is calculated in the form of a vector. The estimated rotation position θ2 is calculated based on the phase of the vector (expanded induced voltage). When performing this calculation, the value after the high-frequency components of the received vd*, vq* and id, iq are removed respectively by a low-pass filter can be used. In addition, the value after the high-frequency components of the estimated rotation position θ2 calculated as described above are removed by a low-pass filter can be used as the final estimated rotation position θ2. Thus, the rotation position estimating unit 106 functions as a second detecting unit for detecting the rotation position θ of the rotor.

[0053] The rotation speed estimating unit 107 calculates an estimated value of the rotation speed ω (estimated rotation speed) ω2 using the estimated rotation position θ2 (received from the rotation position estimating unit 106). For example, ω2 can be calculated by differentiating θ2 received in the previous process and removing its high frequency component using a low pass filter.

[0054] like Figure 2As shown, the estimation accuracy X2 of the estimated rotational position θ2 and the estimated rotational speed ω2 using the current can be lower than the detection accuracy X11 using the resolver 30 in the region where the rotational speed ω of the rotor is less than the first predetermined value A1, and higher than the detection accuracy X12 using the resolver 30 in the region where the rotational speed ω is higher than the first predetermined value A1. Here, generally, the required accuracy X0 is higher when the rotational speed ω is low than when the rotational speed ω is high. Therefore, when the rotational speed ω is less than the first predetermined value A1, the estimation accuracy X2 using the current can be higher than the required accuracy X0 in the region where the rotational speed ω is greater than the second predetermined value A2 (<A1), and on the other hand, the estimation accuracy X2 using the current can become lower than the required accuracy X0 in the region where the rotational speed ω is less than the second predetermined value A2. In other words, the rotational position estimation unit 106 has a range of the rotational speed ω that can ensure the predetermined required accuracy X0, and the lower limit (minimum speed) of the range is the second predetermined value A2. As described above, the rotation position estimation unit 106 calculates the estimated rotation position θ2 using the induced electromotive force (induced voltage) generated by the rotation of the rotor. However, since the induced voltage becomes smaller as the rotation speed ω of the rotor is lower, θ2 becomes a value deviated from the actual rotation position θ, in other words, the possibility of deterioration of the estimated accuracy X2 becomes high. Therefore, in the region where the rotation speed ω is lower than the second predetermined value A2, the possibility of the estimated accuracy X2 becoming lower than the required accuracy X0 also becomes high.

[0055] The switching unit 108 receives the command torque Tr* or the command rotation speed ω* of the motor 3 from the upper ECU 5, and can receive a signal indicating that the vehicle control such as cruise control is being executed. The switching unit 108 switches between the detected rotation position θ1 and the estimated rotation position θ2 based on the signal from the upper ECU 5, the signal from the R / D converter 14 (information about noise), the rotation speed ω1, the rotation speed ω2, and the vehicle speed signal Vsp, and outputs the detected rotation position θ1 and the estimated rotation position θ2. In addition, the detected rotation speed ω1 and the estimated rotation speed ω2 are switched, and either one of them is used as the final rotation speed ω, and the ω is output.

[0056] In addition, when the output signal of the rotary transformer 30 input to the R / D converter 14 is mixed with noise, the switching unit 108 can judge the magnitude of the influence of the above-mentioned noise on the accuracy or reliability of the detection of the rotation position θ1 and the detection of the rotation speed ω1 by the R / D converter 14 (the degree of influence of the noise) based on the signal from the R / D converter 14. For example, if the number of times the noise is generated within a predetermined time is more than the predetermined number of times, it can be determined that the degree of influence of the noise is large. Alternatively, if the degree of deformation of the signal waveform caused by the noise is digitized and it is more than a predetermined threshold value, it can be determined that the degree of influence of the noise is large. Thus, by digitizing the degree of influence using a predetermined parameter (the number of times the noise is generated or the degree of deformation of the waveform, etc.), and comparing it with a predetermined threshold value, the magnitude of the influence caused by the noise can be determined.

[0057] Figure 3 An example of a process in which the switching unit 108 calculates the degree of influence of noise is shown. The process of this processing is repeatedly executed in a predetermined cycle. In step S71, the difference between the rotation speed ω1(m-1) detected in the previous cycle and the rotation speed ω1(m) detected in this cycle is calculated, and it is determined whether the difference is greater than the predetermined noise generation judgment threshold f. If the difference is greater than f, the process proceeds to step S72. If the difference is less than f, the process proceeds to step S73. In step S72, 1 is added to the noise influence degree d, and the current cycle is ended. In step S73, 1 is subtracted from the noise influence degree d, and the process proceeds to step S74. In step S74, it is determined whether the noise influence degree d is a negative value. If the noise influence degree d is negative, the process proceeds to step S75. If d is greater than 0, the current cycle is ended. In step S75, d is set to 0. That is, in Figure 3 In the process shown, the influence degree d of the noise is calculated as a value that increases according to the number of times it is determined that the noise is generated (step S71→S72). In addition, the influence degree d of the noise is calculated as a value that decreases according to the number of times it is determined that the noise is not generated (S71→S73). The lower limit of the influence degree d of the noise is 0 (step S74→S75). It should be noted that the detection value used to calculate the influence degree d of the noise is not limited to the detection of the rotation speed ω1, and can be the detection of the rotation position θ1, etc.

[0058] Figure 4An example of the flow of the main processing performed by the switching unit 108 is shown. The flow of this processing is repeatedly executed in a predetermined cycle. In step S1, it is determined whether the rotation speed ω output in the previous cycle is less than the first predetermined value A1. If ω is less than A1, the process proceeds to step S2, and if ω is higher than A1, the process proceeds to step S6. It should be noted that the command rotation speed ω* can be used instead of ω. In step S2, it is determined whether the rotation speed ω output in the previous cycle is lower than the second predetermined value A2. If ω is lower than A2, the process proceeds to step S5, and if ω is higher than A2, the process proceeds to step S3. It should be noted that ω* can be used instead of ω.

[0059] In step S3, it is determined whether the influence degree d of the noise in the output signal of the resolver 30 is greater than or equal to a threshold value D. As the influence degree d of the noise, it is possible to use Figure 3 The value calculated by the process shown in the figure is not limited to this. If the noise influence degree d is greater than the threshold value D, the process proceeds to step S6, and if d is less than D, the process proceeds to step S4. In step S4, it is determined whether the change in the command torque Tr* of the motor 3 received from the upper ECU 5 per unit time (for example, the difference in Tr* between cycles) ΔTr* is greater than a predetermined threshold value B, or whether the change in the rotation speed ω per unit time output in the cycle until the last time Δω is greater than a predetermined threshold value C. If ΔTr* is greater than B, or Δω is greater than C, the process proceeds to step S5. If ΔTr* is less than B, and Δω is less than C, the process proceeds to step S6.

[0060] In step S5, the detected rotational position θ1 is output as the rotational position θ, and the detected rotational speed ω1 is output as the rotational speed ω, and the current cycle is terminated. In step S6, the estimated rotational position θ2 is output as the rotational position θ, and the estimated rotational speed ω2 is output as the rotational speed ω, and the current cycle is terminated.

[0061] It should be noted that the switching unit 108 may execute step S4 before proceeding to step S3 after a negative determination is made in step S2. In this case, the process may proceed to step S3 after a negative determination is made in step S4.

[0062] When the switching unit 108 switches the set (θ, ω) of the rotation position θ and the rotation speed ω between (θ1, ω1) and (θ2, ω2), it can gradually change the value from the value before the switching to the value after the switching. For example, when switching from (θ1, ω1) to (θ2, ω2), it does not switch to (θ2, ω2) immediately, but changes to (θ2, ω2) in a manner such that the time change rate (Δθ, Δω) of (θ, ω) is within a predetermined range. For example, the difference of (θ, ω) outputted in each cycle, that is, the change slope of (θ, ω) can be set to a predetermined constant value. It should be noted that the switching unit 108 can also output an instruction for stopping the detection or estimation of (θ, ω) which is not outputted except in the above-mentioned switching process to the R / D converter 14 or the rotation position estimation unit 106 (and the rotation speed estimation unit 107).

[0063] Figure 5 Shown in Figure 4 An example of a process in which the switching unit 108 switches the rotation speed ω from the detected rotation speed ω1 to the estimated rotation speed ω2 in step S6. The process of this processing is repeatedly executed in a predetermined cycle. Hereinafter, the rotation speed ω during the switching process is referred to as the control rotation speed ω. In step S61, it is determined whether the detected rotation speed ω1 is greater than the estimated rotation speed ω2, and the value (ω1-ω2) obtained by subtracting the estimated rotation speed ω2 from the detected rotation speed ω1 is greater than the predetermined change threshold c. If the judgment is affirmative, the process proceeds to step S62. If the judgment is negative, the process proceeds to step S65. In step S62, it is determined whether the value (ω1-ω2) / n obtained by dividing (ω1-ω2) by the predetermined number of times n is less than the change threshold c. If (ω1-ω2) / n is less than the change threshold c, the process proceeds to step S63. If (ω1-ω2) / n is greater than the change threshold c, the process proceeds to step S64. In step S63, a value obtained by subtracting (ω1-ω2) / n from the detected rotational speed ω1 is set as the control rotational speed ω. In step S64, a value obtained by subtracting the change threshold c from the detected rotational speed ω1 is set as the control rotational speed ω.

[0064] In step S65, it is determined whether the detected rotational speed ω1 is less than the estimated rotational speed ω2, and the value (ω2-ω1) obtained by subtracting the detected rotational speed ω1 from the estimated rotational speed ω2 is greater than the change threshold c. If the determination is affirmative, the process proceeds to step S66. If the determination is negative, the process proceeds to step S69. In step S66, it is determined whether the value (ω2-ω1) / n obtained by dividing (ω2-ω1) by the number n is less than the change threshold c. If (ω2-ω1) / n is less than the change threshold c, the process proceeds to step S67. If (ω2-ω1) / n is greater than the change threshold c, the process proceeds to step S68. In step S67, the value obtained by adding (ω2-ω1) / n to the detected rotational speed ω1 is set as the control rotational speed ω. In step S68, the value obtained by adding the change threshold c to the detected rotational speed ω1 is set as the control rotational speed ω. In step S69, the estimated rotational speed ω2 is set as the control rotational speed ω.

[0065] That is, when the switching unit 108 switches the rotation speed ω from the detected rotation speed ω1 to the estimated rotation speed ω2, the change amount of the control rotation speed ω per cycle is suppressed to be below the change threshold value c. Specifically, if the difference between the two rotation speeds ω1 and ω2 is below the change threshold value c, the detected rotation speed ω1 is immediately switched to the estimated rotation speed ω2 (steps S61→S65→S69). If the rotation speed difference between the detected rotation speed ω1 before the switching and the estimated rotation speed ω2 after the switching is greater than the change threshold value c, the rotation speed difference is gradually reduced by dividing into a predetermined number of times n, thereby suppressing the change amount of the control rotation speed ω per cycle during the switching process to be less than the change threshold value c (steps S61→S62→S63, S65→S66→S67). If the value obtained by dividing the above rotational speed difference by the number of times n is greater than the change threshold c, the above rotational speed difference is gradually reduced by the change threshold c, thereby suppressing the change amount of each cycle of the control rotational speed ω during the switching process to the change threshold c (steps S61→S62→S64, S65→S66→S68). It should be noted that the change threshold c in steps S61 and S65 may be a different value from the change threshold c in steps S62, S66, etc. The switching unit 108 Figure 4 When switching from the estimated rotation speed ω2 to the detected rotation speed ω1 in step S5, the same method as Figure 5 The same process. In addition, Figure 4 In step S5 and step S6, when the rotation position θ is switched between the detected rotation position θ1 and the estimated rotation position θ2, the same method as described above can also be used. Figure 5 Same process.

[0066] [Effects]

[0067] Next, the effect will be described. The motor ECU1 can execute motor control of the rotation position θ1 detected by the R / D converter 14 (hereinafter referred to as the first control) and motor control of the rotation position θ2 estimated by the rotation position estimation unit 106 (microcomputer 10) (hereinafter referred to as the second control). θ1 is a rotation position detected by the signal from the resolver 30. θ2 is a rotation position estimated by the current of the motor 3. The motor ECU1 switches between the detection of the rotation position θ1 and the estimation of the rotation position θ2, thereby switching between the first control and the second control for execution. Therefore, in the case where one of the R / D converter 14 and the rotation position estimation unit 106 fails, the other can be used, so that the fail-safe performance can be improved. Even in the case where neither the R / D converter 14 nor the rotation position estimation unit 106 fails, the first control and the second control can be switched in a manner that compensates for the shortcomings of the first control and the second control, thereby achieving high accuracy or responsiveness of the motor control as a whole.

[0068] That is, as disadvantages of the first control, for example, the following points are listed.

[0069] In the region where the rotation speed ω of the rotor is high (ω>A1), the resolution of detecting the rotation position θ1 decreases, and the detection accuracy X12 of detecting the rotation position θ1 (and detecting the rotation speed ω1) may be lower than the required accuracy X0. It should be noted that if the upper limit A1 of the rotation speed ω that can maintain a high resolution of detecting the rotation position θ1 is increased in order to ensure that the detection accuracy does not fall below the required accuracy X0, the cost of the R / D converter 14 increases.

[0070] Noise may be mixed into the signal from the resolver 30 via the signal line 22 connecting the resolver 30 and the motor ECU 1. In particular, noise is easily mixed when the signal line 22 passes near the motor 3, is arranged in parallel with the power line 20 or the electric line 21, or is relatively long.

[0071] As disadvantages of the second control, for example, the following points are listed.

[0072] In a region where the rotation speed ω of the rotor is low (ω<A2), there is a possibility that the estimation accuracy X2 of the estimated rotation position θ2 (and the estimated rotation speed ω2) is lower than the required accuracy X0.

[0073] Since the estimation process of the rotation position θ2 (and the rotation speed ω2) is required in the feedback control, the responsiveness to the change of the command value Tr*, ω* is low.

[0074] That is, in the first control, the resolution of detecting the rotational position θ1 using the signal from the resolver 30 is higher in the region where the rotational speed ω is less than the first predetermined value A1 than in the region where the rotational speed ω is greater than the first predetermined value A1. However, since noise is included in the signal from the resolver 30, the detection accuracy X11 of detecting the rotational position θ1 and the like may be reduced. On the other hand, in the second control, since the currents iu, iv, iw and the like of the motor 3 can be detected inside the motor ECU1, the possibility of noise entering the current signal is small. Since the rotational position θ2 and the like are estimated using the current signal, the possibility of the estimated accuracy X2 of the rotational position θ2 and the like being reduced due to noise is small. However, in the second control, the responsiveness to the change of the command value Tr*, ω* is lower than that of the first control. In addition, in the second control, in the region where the rotational speed ω is less than the second predetermined value A2, the estimated accuracy X2 of the rotational position θ2 and the like may be lower than the required accuracy X0.

[0075] Therefore, the motor ECU1 basically performs the first control in the region where the rotation speed ω of the rotor is below the first predetermined value A1. As a result, since the detection accuracy X11 of the resolver 30 can reach the required accuracy X0 or above, the motor control accuracy can be improved. For example, when the rotation speed ω is lower than the second predetermined value A2 (<A1), the motor ECU1 can perform the first control and prohibit the second control ( Figure 4 In this case, the second control based on the estimated accuracy X2 lower than the required accuracy X0 is avoided, so the accuracy of the motor control can be improved. On the other hand, even in the area where the rotation speed ω is below the first predetermined value A1, the motor ECU 1 does not always execute the first control, but switches and executes the first control and the second control according to the situation, thereby improving the accuracy or responsiveness of the motor control as a whole.

[0076] For example, the motor ECU 1 may determine the magnitude of the influence of the noise in the signal from the resolver 30 on the accuracy of detection by the R / D converter 14 in the region where the rotation speed ω of the rotor is less than the first predetermined value A1, and when the magnitude of the influence is greater than or equal to a predetermined threshold value D, execute the second control and prohibit the first control ( Figure 4Steps S3→S6). When the first control is being executed, the second control is switched to, and when the second control is being executed, the second control is continued. In this case, the accuracy of the motor control can be improved by using the estimated rotation position θ2 that is less affected by noise for control. In addition, in the R / D converter 14, since the necessity of providing a filter for removing noise is reduced, the structure of the R / D converter 14 can be simplified. In addition, the necessity of providing a shielding object for noise countermeasures on the signal line 22 is reduced, and the freedom of the configuration and / or length of the signal line 22 can be improved.

[0077] On the other hand, the motor ECU1 may execute the first control and prohibit the second control when the responsiveness of the second control is likely to be low. For example, the motor ECU1 may execute the first control and prohibit the second control when the change ΔTr* per unit time of the torque Tr* of the motor 3 is greater than the threshold value B ( Figure 4 Steps S4→S5). When the second control is being executed, the first control is switched to the first control, and when the first control is being executed, the first control is continued. In this case, when the torque of the motor 3 as the control object changes, the second control with low responsiveness to the change is prohibited, and the first control with high responsiveness is executed, thereby ensuring the responsiveness of the motor control. By judging whether ΔTr* is greater than B, it is possible to judge the change in the torque of the motor 3 as the control object.

[0078] It should be noted that the change in torque is not limited to the change ΔTr* of the command value Tr* of the motor torque, and the change ΔTr of the detection value Tr obtained by a sensor or the like can also be used to judge the change in torque. When the change ΔTr* of the command value Tr* is used, since there is no need to detect the actual torque value, the torque change can be judged more quickly. In addition, the change in torque is not limited to the change in the torque of the motor 3 itself, and the change in the parameter related to the torque of the motor 3 per unit time can also be used to judge the change in torque. For example, the rotational acceleration (acceleration includes deceleration. The same applies hereinafter.) or current of the motor 3 can be used as the above-mentioned parameter. The above-mentioned parameter can be a value detected by a sensor or the like, an estimated value obtained by calculation, or a command value.

[0079] When the change amount ΔTr* of the torque Tr* of the motor 3 per unit time is less than the threshold value B, the motor ECU1 may also execute the first control and prohibit the second control. In contrast, the motor ECU1 of the present embodiment executes the second control and prohibits the first control when the change amount ΔTr* of the torque Tr* of the motor 3 per unit time is less than B ( Figure 4Therefore, when the change in the torque of the motor 3 as the control object is small, in other words, when the responsiveness requirement for the change is small and the disadvantages of the second control are small, the disadvantages of the first control can be compensated by executing the second control. Figure 4 In step S4, even if the change Δω of the rotation speed ω of the motor 3 per unit time is greater than the threshold C, if the change ΔTr* of the torque of the motor 3 per unit time is less than the threshold B, the process proceeds to step S6.

[0080] In addition, for example, the motor ECU 1 may execute the first control and prohibit the second control when the amount of change Δω per unit time of the rotation speed ω of the motor 3 is equal to or greater than a threshold value C ( Figure 4 Therefore, when the rotation speed ω of the motor 3 to be controlled changes, the second control with low responsiveness to the change is prohibited and the first control with high responsiveness is executed, thereby ensuring the responsiveness of the motor control. By judging whether the change Δω of the rotation speed ω per unit time is greater than C, the change of the rotation speed ω of the motor 3 to be controlled can be judged.

[0081] It should be noted that the motor ECU1 is not limited to detecting the change in the rotational speed ω1 or estimating the change in the rotational speed ω2, and the change in the rotational speed ω may be determined by using the change Δω* in the command value ω* of the rotational speed. Since there is no need to detect or estimate the actual rotational speed ω when using the change Δω* in the command value, the change in the rotational speed ω can be determined more quickly. In addition, the change in the rotational speed ω itself is not limited to the change in the rotational speed ω of the motor 3, and the change in the rotational speed ω per unit time may be determined by using the change in the parameter related to the rotational speed ω. For example, the rotational acceleration or voltage of the motor 3 may be used as the above-mentioned parameter. The above-mentioned parameter may be a value detected by a sensor, etc., an estimated value obtained by calculation, or a command value.

[0082] The motor ECU1 may also execute the first control and prohibit the second control when the amount of change Δω of the rotation speed ω of the motor 3 per unit time is less than the threshold value C. In contrast, the motor ECU1 of the present embodiment executes the second control and prohibits the first control when the amount of change Δω of the rotation speed ω of the motor 3 per unit time is less than C ( Figure 4 Therefore, when the change in the rotation speed ω of the motor 3 as the control object is small, in other words, when the responsiveness requirement for the change is small and the disadvantages of the second control are small, the disadvantages of the first control can be compensated by executing the second control. Figure 4In step S4, even if the change ΔTr* of the torque of the motor 3 per unit time is greater than the threshold B, if the change Δω of the rotation speed ω of the motor 3 per unit time is less than the threshold C, the process proceeds to step S6.

[0083] Motor 3 is used to drive the vehicle. The change in torque of motor 3 per unit time ΔTr* can be equivalent to the change in driving force of the vehicle per unit time required in the control of the vehicle. Therefore, when ΔTr* is above threshold value B, executing the first control and prohibiting the second control helps to improve the responsiveness of driving force control of the vehicle by ensuring the responsiveness of motor control. In addition, for example, in a hybrid electric vehicle, when the torque of motor 3 is coordinated with the output torque of the engine for control, the torque change of motor 3 can be controlled with good precision, thereby improving the fuel economy or exhaust performance of the engine. From this point of view, in Figure 4 In step S4, the amount of change per unit time of a parameter related to the vehicle driving force required in the control of the vehicle (other than the motor torque) can be used in the judgment, instead of the amount of change per unit time ΔTr* of the torque of the motor 3. The above parameters include, for example, the torque of the vehicle's drive shaft, the vehicle acceleration, the acceleration operation amount, or the braking operation amount. These can be detected values, estimated values ​​obtained by calculation, or command values. In addition, instead of the amount of change per unit time of a parameter related to the vehicle driving force (including the motor torque), the first control can be executed and the second control can be prohibited when the size of the above parameter is above a threshold. This is because when the vehicle driving force is large, the effect (fuel economy, etc.) obtained by accurately controlling the torque change of the motor 3 is obvious.

[0084] In addition, the change Δω of the rotation speed ω of the motor 3 per unit time can be equivalent to the change in the vehicle speed Vsp per unit time (vehicle acceleration) required in the vehicle control. Therefore, when Δω is greater than the threshold value C, executing the first control and prohibiting the second control helps to improve the responsiveness of the vehicle speed control by ensuring the responsiveness of the motor control. From this point of view, Figure 4 In step S4, the change in the unit time of a parameter (other than the motor rotation speed ω) related to the vehicle speed Vsp required in the vehicle control may be used in the judgment, instead of the change in the unit time Δω of the rotation speed ω of the motor 3. The above parameters include, for example, the rotation speed ω (vehicle speed Vsp) of the drive shaft of the vehicle or the wheel speed. These may be detected values, estimated values ​​obtained by calculation, or command values.

[0085] When executing the cruise control for maintaining the vehicle speed Vsp within a predetermined range, it can be determined that the change in the vehicle speed Vsp required in the control per unit time is small, and the change in the rotation speed ω of the motor 3 per unit time Δω is small. Therefore, it can be set that when the cruise control is executed, the motor ECU1 executes the second control and prohibits the first control. For example, Figure 4 In step S4, instead of determining Δω, it may be determined whether the cruise control is being executed, and if it is determined that the cruise control is being executed, the process proceeds to step S6.

[0086] It should be noted that the method of estimating the rotational position θ2 of the rotor without using the signal from the resolver 30 may be a method using the current of the motor 3, or a method of superimposing a pulse signal for position estimation on the command voltage and estimating the rotational position θ2 by detecting the current response. In response to this, the motor ECU1 (microcomputer 10) of the present embodiment estimates the rotational position θ2 of the rotor based on the induced electromotive force of the motor 3 generated by the rotation of the rotor. Therefore, when there is a time constant (filter) in the circuit for detecting the induced electromotive force (rotational position estimation unit 106 or rotational speed estimation unit 107), the responsiveness to changes in the command values ​​Tr*, ω* becomes low. Therefore, by switching to the first control, the reduction in the responsiveness of the motor control can be effectively compensated. In addition, when the rotational speed ω of the rotor is low, there is a high possibility that the accuracy of estimating the rotational position θ2 using the induced electromotive force will deteriorate. In response to this, the motor ECU1 executes the first control and prohibits the second control ( Figure 4 Thus, the accuracy of motor control can be improved.

[0087] The motor ECU1 may execute the second control and prohibit the first control in a region where the rotation speed ω is higher than the first predetermined value A1 ( Figure 4 Steps S1→S6). When the first control is being executed, the second control is switched to, and when the second control is being executed, the second control is continued. In this case, even in a situation where the resolution of detecting the rotational position θ1 using the signal from the resolver 30 is reduced, the motor control can be continued with a certain degree of accuracy by executing the second control using the estimated rotational position θ2. In particular, in an area where the rotational speed ω is higher than A1, it is effective when the accuracy X12 of detecting the rotational position θ1 becomes lower than the accuracy X2 of the estimated rotational position θ2. It should be noted that even in an area where the rotational speed ω is higher than the first predetermined value A1, that is, even when the resolution of detecting the rotational position θ1 is low, the second control is not always executed, but the motor ECU1 can be set in a manner such that the first control and the second control are switched and executed according to the situation, as in an area where ω is less than A1.

[0088] When the motor ECU 1 switches between the first control and the second control, the rotation position θ used for controlling the motor 3 can be gradually changed from the value before the switch to the value after the switch. This prevents the rotation position θ used for motor control from changing suddenly with the switch between the first control and the second control. Therefore, the instability of the motor control can be suppressed. Figure 4 In step S1, the motor ECU 1 may set A1 when judging that the rotation speed ω is transferred from a region higher than A1 to a region lower than A1 and A1 when judging that the rotation speed ω is transferred from a region lower than A1 to a region higher than A1 to different values. Thus, it is possible to suppress frequent switching between the first control and the second control (control fluctuation). The same is true for A2 in step S2 or B and C in step S4.

[0089] <Second embodiment>

[0090] Next, refer to Figure 6 , the motor control device of the second embodiment is described. First, only the first embodiment ( Figure 4 ) are described, and the structures common to the first embodiment are marked with the same symbols and the description is omitted.

[0091] Figure 6 An example of the process flow executed by the switching unit 108 is shown. Figure 4 The first embodiment differs from the first embodiment in that the step S2 and the step S4 are replaced by the step S10. If the judgment in the step S1 is affirmative, the process proceeds to the step S10. In the step S10, it is determined whether the rotation speed ω output in the previous cycle is less than the third predetermined value A3. Figure 2 As shown, the third predetermined value A3 is a value higher than the second predetermined value A2 and lower than the first predetermined value A1 (A2<A3<A1). The third predetermined value A3 is a value corresponding to the upper limit of the vehicle speed range in which the change in the vehicle driving force required in the vehicle control per unit time exceeds the responsiveness of the second control, and can be pre-set by experiments, etc. If ω is less than A3, the process proceeds to step S5, and if ω is higher than A3, the process proceeds to step S3. It should be noted that ω* can be used instead of ω. In step S3, if the influence of the noise in the output signal of the rotary transformer 30 is less than the threshold value D, the process proceeds to step S5.

[0092] When the switching unit 108 switches the set (θ, ω) of the rotation position θ and the rotation speed ω between (θ1, ω1) and (θ2, ω2), when the rotation speed ω is within a predetermined range including the third predetermined value A3, the value before the switching can be changed to the value after the switching earlier when the rotation acceleration in the direction of A3 is large than when the rotation acceleration is small. For example, when ω is within a predetermined range including A3, if the rotation acceleration in the direction of A3 is greater than a predetermined threshold value, A3 is changed in a manner close to the current rotation speed ω, thereby enabling the start time of the switching to be advanced.

[0093] Next, the effect is explained. When the rotation speed ω of the rotor is less than the third predetermined value A3, the motor ECU1 executes the first control and prohibits the second control. Therefore, when ω is less than A3, it can be judged that the vehicle speed Vsp is low, and the change in the vehicle driving force required in the control of the vehicle is large per unit time, that is, the responsiveness required for the control of the motor 3 is higher than the responsiveness of the second control. By executing the first control at this time and detecting the rotation position with high responsiveness to the change in the required driving force, the torque of the motor 3 (the driving force of the vehicle) can be accurately controlled. It should be noted that by setting A3 to be higher than A2, when entering step S5 from step S10, the same effect as the case of entering step S5 from step S2 in the first embodiment can be obtained.

[0094] When the rotation speed ω is within a predetermined range including the third predetermined value A3, the motor ECU1 can switch the first control and the second control earlier when the rotation acceleration in the direction of A3 is large than when the rotation acceleration is small. That is, when the rotation acceleration in the direction of A3 is large, the possibility that ω crosses A3 is higher than when the rotation acceleration is small. At this time, by switching the control at an earlier moment, faster and more accurate switching can be achieved. For example, when the rotation acceleration in the direction of A3 is above a predetermined threshold, A3 can be changed in a manner close to the current ω. In this case, the above-mentioned change in the moment can be made by a simple configuration such as changing the threshold value A3 of the switching control.

[0095] It should be noted that Figure 6In step S10, the motor ECU1 may set A3 when judging that the rotation speed ω is transferred from a region higher than A3 to a region lower than A3 and A3 when judging that the rotation speed ω is transferred from a region lower than A3 to a region higher than A3 to different values. Thus, the fluctuation of the control can be suppressed. In addition, the motor ECU1 may also configure the second predetermined value A2 in the same manner as A3, and when ω is within a predetermined range including A2, when the rotation acceleration in the direction toward A2 is large, the first control and the second control are switched earlier than when the rotation acceleration is small. In addition, the motor ECU1 may advance the switching time of the control only when the rotation acceleration of ω from a region higher than A3 to a direction toward A3 is large, and may not advance the switching time of the control when the rotation acceleration of ω from a region lower than A3 to a direction toward A3 is large. Thus, since the requirement for responsiveness to the change of ω may be high when the rotation acceleration is large, the responsiveness of the motor control can be improved by preferentially executing the first control.

[0096] When executing the cruise control for keeping the vehicle speed Vsp within a predetermined range, it can be determined that the change in the vehicle driving force required in the vehicle control per unit time is small, that is, the responsiveness required for the control of the motor 3 is low. Therefore, it can be set that when the cruise control is executed, the motor ECU1 executes the second control and prohibits the first control. For example, Figure 6 In step S10, a negative determination is made and step S11 is provided midway to step S3, and in step S11, it is determined whether the cruise control is being executed. If it is determined that the cruise control is not being executed, the process proceeds to step S3, and if it is determined that the cruise control is being executed, the process proceeds to step S6.

[0097] Although the preferred embodiments of the present invention are described in detail with reference to the accompanying drawings, the present invention is not limited to such examples. Those skilled in the art of the present invention should understand that various variations or modifications can be thought of within the scope of the technical concept described in the claims, and understand that these variations and modifications also obviously fall within the technical scope of the present invention.

[0098] For example, the motor is not limited to a synchronous motor, but may be an induction motor, etc. In short, any motor having a rotor and provided with a resolver may be used. The motor is not limited to that used in vehicles, but may be used in household appliances, etc.

[0099] The voltage output from the inverter to the motor is not limited to PWM control, and can also be controlled using PAM (Pulse Amplitude Modulation) control. The voltage output from the inverter to the motor is not limited to a sine wave, and can also be a rectangular wave or a trapezoidal wave. That is, the motor is not limited to a brushless AC motor, and can also be a brushless DC motor.

[0100] The method by which the control device controls the motor using the detected or estimated rotational position is not limited to vector control. When vector control is used as in the embodiment, the torque of the motor can be effectively controlled.

[0101] The control device may estimate the current used in the sensorless control (second control) instead of directly detecting the current used in the sensorless control (second control) using a current sensor. For example, the DC bus current of the inverter may be detected using a shunt resistor or the like, and the motor current may be estimated.

Claims

1. A motor control device, characterized in that: For controlling a motor having a rotor, The motor is provided with a rotary transformer. The control device includes a detection unit for detecting a rotational position of the rotor. The detection unit comprises: a first detector for detecting a rotational position of the rotor using a signal from the resolver, wherein a resolution of the rotational position of the first detector is lower in a region where a rotational speed of the rotor is higher than a first predetermined value than in a region where the rotational speed is lower than the first predetermined value; as well as a second detection unit that estimates the rotational position of the rotor using the current of the motor instead of using the signal from the resolver, The control device can perform the following control: a first control for controlling the motor using the rotation position detected by the first detection unit, and a second control for controlling the motor using the rotation position estimated by the second detection unit, The control device is configured to switch and execute the first control and the second control in a region where the rotation speed is equal to or less than the first predetermined value. When the first control and the second control are switched, the rotation position used for the control of the motor is gradually changed from a value before the switching to a value after the switching, When the rotational position difference between the rotational position before switching and the rotational position after switching is greater than a change threshold, the rotational position difference is gradually reduced by dividing into a predetermined number of times, thereby suppressing the change amount of each cycle of the rotational position during the switching process to be less than the change threshold, When the value obtained by dividing the rotational position difference by the number of times is equal to or larger than the change threshold, the rotational position difference is gradually reduced by the change threshold, thereby suppressing the change amount per cycle of the rotational position during the switching process to the change threshold.

2. The motor control device according to claim 1, characterized in that: The control device is configured to determine the magnitude of the effect of noise in the signal from the resolver on the accuracy of detection by the first detection unit, and to execute the second control and prohibit the first control when the magnitude of the effect is equal to or greater than a threshold.

3. The motor control device according to claim 1, characterized in that: The control device is configured to execute the first control and prohibit the second control when the change in the torque of the motor per unit time or the change in the rotational speed per unit time, or the change in a parameter related to the torque per unit time or the change in a parameter related to the rotational speed per unit time is greater than a threshold value.

4. The motor control device according to claim 1, characterized in that: In a region where the rotation speed of the rotor is lower than a second predetermined value that is smaller than the first predetermined value, the estimation accuracy of the rotation position by the second detection unit is lower than a predetermined required accuracy, The control device is configured to execute the first control and prohibit the second control when the rotation speed of the rotor is lower than the second predetermined value.

5. The motor control device according to claim 1, characterized in that: In a region where the rotation speed of the rotor is lower than a second predetermined value that is smaller than the first predetermined value, the estimation accuracy of the rotation position by the second detection unit is lower than a predetermined required accuracy, The control device is set to execute the first control and prohibit the second control when the rotation speed of the rotor is equal to or less than a third predetermined value that is lower than the first predetermined value and higher than the second predetermined value.

6. The motor control device according to claim 1, characterized in that: The control device is configured to switch between the first control and the second control when the rotation speed of the rotor changes across a second predetermined value or a third predetermined value, and the control device is configured to switch between the first control and the second control earlier when the rotation acceleration of the rotor in the direction of the second predetermined value or the third predetermined value is large than when the rotation acceleration of the rotor is small when the rotation speed of the rotor is within a predetermined range including the second predetermined value or the third predetermined value, and the third predetermined value is higher than the second predetermined value and lower than the first predetermined value.

7. A motor control device, characterized in that: Used to control the motor used to drive the vehicle, The motor is provided with a rotary transformer. The control device includes a detection unit for detecting a rotational position of a rotor of the motor. The detection unit comprises: a first detection unit that detects the rotation position using a signal from the rotary transformer; as well as a second detection unit that estimates the rotational position using the current of the motor instead of using the signal from the resolver, The control device is capable of switching and executing the first control and the second control, The first control controls the motor using the rotation position detected by the first detection unit. The second control controls the motor using the rotation position estimated by the second detection unit. The control device is configured to execute the first control and prohibit the second control when the amount of change per unit time of the driving force of the vehicle or the amount of change per unit time of the vehicle speed, or the amount of change per unit time of a parameter related to the driving force of the vehicle or the amount of change per unit time of a parameter related to the vehicle speed is greater than a threshold value, When the first control and the second control are switched, the rotation position used for the control of the motor is gradually changed from a value before the switching to a value after the switching, When the rotational position difference between the rotational position before the switching and the rotational position after the switching is greater than the change threshold, the rotational position difference is gradually reduced by a predetermined number of times, thereby suppressing the change amount of each cycle of the control rotational position during the switching process to be less than the change threshold, When the value of the rotational position difference divided by the number of times is equal to or larger than the change threshold, the rotational position difference is gradually reduced by the change threshold, thereby suppressing the change amount per cycle of the control rotational position during the switching process to the change threshold.

8. The motor control device according to claim 7, characterized in that: The control device is configured to execute the second control and prohibit the first control when a cruise control for maintaining a vehicle speed within a predetermined range is executed.

9. A method for controlling a motor, characterized in that: The control method is a method in which a control device controls a motor having a rotor and a rotary transformer. The motor control method switches and executes a first control and a second control in a region where the rotation speed of the rotor is less than a predetermined value, The first control controls the motor using the rotational position of the rotor detected by a detection method, the detection method being a method of detecting the rotational position using a signal from the resolver, the resolution of the rotational position of the detection method being lower in a region where the rotational speed is higher than the predetermined value than in a region where the rotational speed is lower than the predetermined value, The second control controls the motor using the estimated rotational position, wherein the estimated rotational position is estimated using the current of the motor instead of using the signal from the resolver. When the first control and the second control are switched, the rotation position used for the control of the motor is gradually changed from a value before the switching to a value after the switching, When the rotational position difference between the rotational position before the switching and the rotational position after the switching is greater than the change threshold, the rotational position difference is gradually reduced by a predetermined number of times, thereby suppressing the change amount of each cycle of the control rotational position during the switching process to be less than the change threshold, When the value of the rotational position difference divided by the number of times is equal to or larger than the change threshold, the rotational position difference is gradually reduced by the change threshold, thereby suppressing the change amount per cycle of the control rotational position during the switching process to the change threshold.

Citation Information

Patent Citations

  • Sensor system in motor control

    JP2003164187A

  • Motor non-speed sensor control method for smoothly switching composite rotating speed identification

    CN101582677A

  • Rotary machine controller and washing machine

    JP2005102451A

  • Servo system

    JP2010063218A

  • Motor controller for vehicle and method therefor

    JP2010172136A