Motor control unit and electric power steering apparatus equipped with the same

11101756 · 2021-08-24

Assignee

Inventors

Cpc classification

International classification

Abstract

A motor control unit that vector-controls a 3-phase brushless motor based on a d-axis voltage command value and a q-axis voltage command value via an inverter with feedback-controlling, comprises: a central processing unit which comprises: a dq-axes dead time compensating section to calculate dq-axes dead time compensation values of the inverter and perform a dead time compensation; and a dq-axes disturbance estimating observer to input a d-axis current command value, a q-axis current command value, a motor rotational number, a motor angular velocity, a d-axis feedback current, a q-axis feedback current, the d-axis voltage command value and the q-axis voltage command value and calculate a d-axis disturbance compensation value and a q-axis disturbance compensation value, which cannot be compensated by the dead time compensation, by respectively adding the d-axis disturbance compensation value and the q-axis disturbance compensation value to the d-axis voltage command value and the q-axis voltage command value.

Claims

1. A motor control unit that vector-controls a 3-phase brushless motor based on a d-axis current command value and a q-axis current command value, converts 3-phase current detection values of said 3-phase brushless motor into a d-axis feedback current and a q-axis feedback current, calculates a d-axis deviation current between said d-axis current command value and said d-axis feedback current, and a q-axis deviation current between said q-axis current command value and said q-axis feedback current, calculates a d-axis voltage command value and a q-axis voltage command value by current-controlling said d-axis deviation current and said q-axis deviation current, performing a d-axis non-interference control based on said q-axis feedback current and a motor angular velocity of said 3-phase brushless motor, and performing a q-axis non-interference control based on said d-axis feedback current and said motor angular velocity, and controls said 3-phase brushless motor by 3-phase duty command values based on said d-axis voltage command value and said q-axis voltage command value via an inverter, comprising: a central processing unit (CPU) configured to implement instructions to perform the following operations: a dq-axes dead time compensating operation to calculate dq-axes dead time compensation values of said inverter and perform a dead time compensation; dq-axes disturbance estimating operation to input said d-axis current command value, said q-axis current command value, a motor rotational number, said motor angular velocity, said d-axis feedback current, said q-axis feedback current, said d-axis voltage command value and said q-axis voltage command value, and calculate and output a d-axis disturbance compensation value and a q-axis disturbance compensation value; and a disturbance estimation operation to estimate a disturbance, which cannot be compensated by said dead time compensation of said inverter, by respectively adding said d-axis disturbance compensation value and said q-axis disturbance compensation value to said d-axis voltage command value and said q-axis voltage command value.

2. The motor control unit according to claim 1, wherein said dq-axes disturbance estimating operation comprises: a d-axis disturbance estimating operation to treat a d-axis control object; and a q-axis disturbance estimating operation to treat a q-axis control object.

3. The motor control unit according to claim 2, wherein said d-axis disturbance estimating operation comprises: a first d-axis low pass filtering (LPF) operation to input an added value in which said d-axis disturbance compensation value and said d-axis voltage command value added; a d-axis motor inverse operation to input said d-axis feedback current; a d-axis non-interference operation to input said q-axis feedback current and said motor angular velocity; a second d-axis LPF operation to input an output of said d-axis non-interference operation; a subtracting operation to subtract a d-axis deviation between an output of said d-axis motor inverse operation and an output of said second d-axis LPF operation from an output of said first d-axis LPF operation; and a d-axis limiting operation to limit an output of said subtracting operation in response to said motor rotational number, and wherein said q-axis disturbance estimating operation comprises: a first q-axis LPF operation to input an added value in which said q-axis disturbance compensation value and said q-axis voltage command value are added; a q-axis motor inverse operation to input said q-axis feedback current; a q-axis non-interference operation to input said d-axis feedback current and said motor angular velocity; a second q-axis LPF operation to input an output of said q-axis non-interference operation; an adding and subtracting operation to add with an output of said q-axis motor inverse operation and an output of said second q-axis LPF operation and subtract said added result from an output of said first q-axis LPF operation; and a q-axis limiting operation to limit an output of said adding and subtracting operation in response to said motor rotational number.

4. The motor control unit according to claim 3, wherein said d-axis non-interference operation comprises: a d-axis multiplying operation to multiply said q-axis feedback current by said motor angular velocity, and a d-axis gain operation to multiply an output of said d-axis multiplying operation by a gain, and said q-axis non-interference operation comprises: a q-axis multiplying operation to multiply said d-axis feedback current by said motor angular velocity, a first q-axis gain operation to multiply an output of said q-axis multiplying operation by a first gain, a second q-axis gain operation to multiply said motor angular velocity by a second gain, and a second q-axis adding operation to add with an output of said first q-axis gain operation and an output of said second q-axis gain operation.

5. The motor control unit according to claim 3, wherein said d-axis limiting operation comprises: a d-axis sensitive gain operation sensitive to said motor rotational number; and a d-axis compensation amount limiting operation to limit a maximum value of a d-axis compensation amount.

6. The motor control unit according to claim 3, wherein said q-axis limiting operation comprises: a q-axis sensitive gain operation sensitive to said motor rotational number; and a q-axis compensation amount limiting operation to limit a maximum value of a q-axis compensation amount.

7. The motor control unit according to claim 3, wherein cutoff frequencies of said first d-axis LPF operation and said second d-axis LPF operation are variable based on said motor rotational number, an inductance component of said d-axis motor inverse operation is variable based on said d-axis current command value, cutoff frequencies of said first q-axis LPF operation and said second q-axis LPF operation are variable based on said motor rotational number, and an inductance component of said q-axis motor inverse operation is variable based on said q-axis current command value.

8. The motor control unit according to claim 7, wherein, when said motor rotation number is high, respective cutoff frequencies of said first d-axis LPF operation, said second d-axis LPF operation, said first q-axis LPF operation and said second q-axis LPF operation are set to be higher and a responsibility is enhanced, and when said motor rotation number is low, respective cutoff frequencies of said first d-axis LPF operation, said second d-axis LPF operation, said first q-axis LPF operation and said second q-axis LPF operation are set to be lower and a noise-resistance is enhanced.

9. The motor control unit according to claim 7, wherein, when said d-axis current command value becomes larger, an inductance component of said d-axis motor inverse operation is variable so as to become smaller, and when said q-axis current command value becomes larger, an inductance component of said q-axis motor inverse operation is variable so as to become smaller.

10. The motor control unit according to claim 1, wherein said dq-axes dead time compensating operation calculates said dq-axes dead time compensation values by using a configuration depending on a steering state.

11. The motor control unit according to claim 10, wherein said dq-axes dead time compensating operation calculates a 3-phase dead time reference compensation value based on a motor rotational angle, processes said 3-phase dead time reference compensation value by using a gain and a sign, and calculates said dq-axes dead time compensation values by performing a 3-phase alternating current (AC)/dq-axes conversion to said processed 3-phase dead time reference compensation value.

12. The motor control unit according to claim 10, wherein said dq-axes dead time compensating operation estimates 3-phase detection voltages based on 3-phase motor terminal voltages, estimates loss voltages due to a dead time of said inverter from a difference between 3-phase correction command voltages calculated from said 3-phase duty command values and said 3-phase detection voltages, and calculates said dq-axes dead time compensation values by compensating said loss voltages.

13. The motor control unit according to claim 10, wherein said dq-axes dead time compensating operation estimates compensation signs of 3-phase current model command values in which said d-axis current command value and said q-axis current command value are converted into a 3-phase current command values, calculates a dead time compensation amount based on an inverter applying voltage, and calculates said dq-axes dead time compensation values by multiplying said dead time compensation amount with said compensation signs and converting said multiplied results into 2-phase values.

14. The motor control unit according to claim 1, further comprising: a space vector modulating operation to convert said d-axis voltage command value and said q-axis voltage command value into 2-phase duty command values, convert said 2-phase duty command values into 3-phase values, and output voltage command values obtained by superimposing a third harmonic on said 3-phase values.

15. The motor control unit according to claim 1, wherein parameters of said dq-axes disturbance estimating operation are variable based on said d-axis current command value, said q-axis current command value and said motor rotational number.

16. An electric power steering apparatus that is equipped with the motor control unit according to claim 1, and applies an assist torque to a steering system of a vehicle by driving said 3-phase brushless motor.

17. A motor control unit that vector-controls a 3-phase brushless motor based on a d-axis current command value and a q-axis current command value, converts 3-phase current detection values of said 3-phase brushless motor into a d-axis feedback current and a q-axis feedback current, calculates a d-axis deviation current between said d-axis current command value and said d-axis feedback current, and a q-axis deviation current between said q-axis current command value and said q-axis feedback current, calculates a d-axis voltage command value and a q-axis voltage command value by current-controlling said d-axis deviation current and said q-axis deviation current, performing a d-axis non-interference control based on said q-axis feedback current and a motor angular velocity of said 3-phase brushless motor, and performing a q-axis non-interference control based on said d-axis feedback current and said motor angular velocity, and controls said 3-phase brushless motor by 3-phase duty command values based on said d-axis voltage command value and said q-axis voltage command value via an inverter, comprising: a central processing unit (CPU) configured to implement instructions to perform the following operations: a d-axis dead time compensating operation and a q-axis dead time compensating operation to calculate dead time compensation values of said inverter and perform a dead time compensation; a d-axis disturbance estimating operation to input said d-axis current command value, said d-axis voltage command value, said d-axis feedback current, said q-axis feedback current, a motor angular velocity and a motor rotational number, and calculate and output a d-axis disturbance compensation value; and a q-axis disturbance estimating operation to input said q-axis current command value, said q-axis voltage command value, said q-axis feedback current, said d-axis feedback current, said motor angular velocity and said motor rotational number, and calculate and output a q-axis disturbance compensation value, wherein said d-axis disturbance estimating operation comprises: a d-axis non-interference operation to input said q-axis feedback current and said motor angular velocity; a d-axis low pass filter (LPF) operation to input a second d-axis addition value which adds an output of said d-axis non-interference operation to a first d-axis addition value which adds said d-axis voltage current command value to said d-axis disturbance compensation value; a d-axis motor inverse operation to input said d-axis feedback current, a d-axis subtracting operation to calculate a d-axis deviation voltage by subtracting an output of said d-axis motor inverse operation from an output of said d-axis LPF operation; a d-axis sensitive gain operation to multiply said d-axis deviation voltage with a gain, depending on said motor rotational number; and a d-axis compensation value limiting operation to limit an output of said d-axis sensitive gain operation and output said d-axis disturbance compensation value, wherein said q-axis disturbance estimating operation comprises: a q-axis non-interference operation to input said d-axis feedback current and said motor angular velocity; a q-axis LPF operation to input a q-axis subtraction value which subtracts an output of said q-axis non-interference operation from a first q-axis addition value which adds said q-axis voltage command value to said q-axis disturbance compensation value; a q-axis motor inverse operation to input said q-axis feedback current; a q-axis subtracting operation to calculate a q-axis deviation voltage by subtracting an output of said q-axis motor inverse operation from an output of said q-axis LPF operation; a q-axis sensitive gain operation to multiply said q-axis deviation voltage with a gain, depending on said motor rotational number; and a q-axis compensation value limiting operation to limit an output of said q-axis sensitive gain operation and output said q-axis disturbance compensation value, and wherein said motor control unit estimates a disturbance, which cannot be compensated by said dead time compensation of said inverter, by adding said d-axis disturbance compensation value to said d-axis voltage command value and adding said q-axis disturbance compensation value to said q-axis voltage command value.

18. The motor control unit according to claim 17, wherein said gain of said d-axis sensitive gain operation is sensitive to said motor rotational number.

19. The motor control unit according to claim 17, wherein said gain of said q-axis sensitive gain operation is sensitive to said motor rotational number.

20. An electric power steering apparatus that is equipped with the motor control unit according to claim 17, and applies an assist torque to a steering system of a vehicle by driving said 3-phase brushless motor.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) In the accompanying drawings:

(2) FIG. 1 is a configuration diagram showing a general outline of an electric power steering apparatus;

(3) FIG. 2 is a block diagram showing a configuration example of a control unit (ECU) of the electric power steering apparatus;

(4) FIG. 3 is a block diagram showing a configuration example of a vector control system;

(5) FIG. 4 is a wiring diagram showing a configuration example of a general inverter;

(6) FIG. 5 is a configuration diagram showing a general outline of a downstream type electric power steering apparatus;

(7) FIG. 6 is a block diagram showing a configuration example of the present invention;

(8) FIG. 7 is a block diagram showing a configuration example (the first embodiment) of a dq-axes disturbance estimating observer of the present invention;

(9) FIG. 8 is a characteristic diagram showing a characteristic example of a sensitive gain section;

(10) FIG. 9 is a characteristic diagram showing one example of a compensation amount limit value;

(11) FIG. 10 is a block diagram showing a configuration example (the first example) of a dq-axes dead time compensating section;

(12) FIG. 11 is a detailed block diagram showing a configuration example (the first example) of the dq-axes dead time compensating section;

(13) FIG. 12 is a block diagram showing a configuration example of a midpoint voltage estimating section;

(14) FIG. 13 is a block diagram showing a detailed example of a correction timing judging section and a correction value holding section;

(15) FIG. 14 is a block diagram showing a configuration example of a compensation amount limiting section;

(16) FIG. 15 is a characteristic diagram showing one example of the compensation amount limit value;

(17) FIG. 16 is a block diagram showing a configuration example (the second example) of the dq-axes dead time compensating section;

(18) FIG. 17 is a detailed block diagram showing a configuration example (the second example) of the dq-axes dead time compensating section;

(19) FIG. 18 is a block diagram showing a configuration example of a current command value sensitive-gain section;

(20) FIG. 19 is a characteristic diagram of a gain section in the current command value sensitive-gain section;

(21) FIG. 20 is a characteristic diagram showing a characteristic example of the current command value sensitive-gain section;

(22) FIGS. 21A and 21B are waveform charts showing an operation example of a compensation sign estimating section (a phase current compensation sign estimating section);

(23) FIG. 22 is a block diagram showing a configuration example of an inverter applying voltage-sensitive gain section;

(24) FIG. 23 is a characteristic diagram showing a characteristic example of the inverter applying voltage-sensitive gain section;

(25) FIG. 24 is a characteristic diagram showing a characteristic example of a phase adjusting section;

(26) FIG. 25 is a diagram showing an operation example of a respective angle-dead time compensation value functional section;

(27) FIG. 26 is a block diagram showing a configuration example (the third example) of the dq-axes dead time compensating section;

(28) FIG. 27 is a block diagram showing a configuration example of an inverter applying voltage-sensitive compensation-amount calculating section;

(29) FIG. 28 is a characteristic diagram showing a characteristic example of the inverter applying voltage-sensitive compensation-amount calculating section;

(30) FIG. 29 is a waveform chart showing one example of an output waveform of a 3-phase current command value model;

(31) FIG. 30 is a block diagram showing a configuration example of a space vector modulating section;

(32) FIG. 31 is a diagram showing an operation example of the space vector modulating section;

(33) FIG. 32 is a diagram showing an operation example of the space vector modulating section;

(34) FIG. 33 is a timing chart showing an operation example of the space vector modulating section;

(35) FIGS. 34A and 34B are waveform charts showing an effect of the present invention;

(36) FIG. 35 is a block diagram showing a configuration example (the second embodiment) of the dq-axes disturbance estimating observer;

(37) FIGS. 36A and 36B are block diagrams showing an example of units in which an inductance nominal value of the disturbance estimating observer is variable based on the dq-axes current command values;

(38) FIGS. 37A and 37B are characteristic diagrams showing a characteristic example of a current sensitive-inductance calculating section;

(39) FIG. 38 is a block diagram showing an example of a unit in which cutoff frequencies of a filter of the disturbance estimating observer and the motor inverse model are variable based on a motor rotational number;

(40) FIG. 39 is a characteristic diagram showing a characteristic example of a rotational number sensitive-frequency calculating section;

(41) FIGS. 40A and 40B are waveform charts showing an effect of the present invention;

(42) FIG. 41 is a detailed block diagram showing a configuration example (the third embodiment) of the dq-axes disturbance estimating observer;

(43) FIG. 42 is a detailed block diagram showing a configuration example (the fourth embodiment) of the dq-axes disturbance estimating observer; and

(44) FIG. 43 is a detailed block diagram showing a configuration example (the fifth embodiment) of the present invention.

MODE FOR CARRYING OUT THE INVENTION

(45) A current distortion is roughly improved by a dead time compensation function and a dq-axes non-interference control, but there is a concern that the current distortion due to a dead time is changed by an individual difference of an ECU, aged deterioration and the like. There exists a case that only dq-axes non-interference control cannot compensate motor back-EMF compensation except for the first-order component and a variation of the back-EMF due to the individual difference of the motor. Ina case that a transient steering is inputted, there is a problem that only the dq-axes non-interference control and the PI-control cannot follow-up the above transient steering because of a delay of an output system and a detection system, a delay of a correction function using a motor rotational number and the like. In order to improve these problems, an object of the present invention is to improve the current distortion in which the dead time compensation, the dq-axes non-interference control and the PI-control do not follow-up the current distortion, and the responsibility of the control. In the present invention, the configuration of the dq-axes disturbance estimating observer in which the dq-axes non-interference control is considered is proposed.

(46) In the present invention, a cutoff frequency of an LPF for the band limitation of the dq-axes disturbance estimating observer is variable depending on the motor rotational number, and the responsibility and the noise-resistance are improved. An inductance component (the inductance nominal value) of a motor inverse model is also variable in response to the dq-axes current command values, the model accuracy is enhanced and the accuracy of the dead time compensation is further improved.

(47) Although the motor control unit according to the present invention is applied to an electric assist bicycle, a train, an electric vehicle and the like, an example of the electric power steering apparatus equipped with the motor control unit will be described as follows.

(48) Hereinafter, embodiments of the present invention will be described with reference to drawings.

(49) FIG. 6 shows a whole configuration of the present invention corresponding to FIG. 3, and there is provided the dq-axes disturbance estimating observer 600 to input a motor angular velocity ω, a motor rotational number rpm, dq-axes feedback currents i.sub.q and i.sub.d and voltage command values V.sub.d2 and V.sub.q2 from adding sections 122d and 122q described below and output dq-axes disturbance compensation values V.sub.cmp_d and V.sub.cmp_q. The adding sections 122d and 122q are disposed on dq-axes voltage paths and further the adding sections 123d and 123q are disposed at a subsequent stage of the adding sections 122d and 122q, respectively. The dq-axes disturbance compensation values V.sub.cmp_d and V.sub.cmp_q are inputted into the adding sections 122d and 122q, respectively. A dq-axes dead time compensating section 200 to input a motor terminal voltage and the like and calculate dead time compensation values V.sub.d* and V.sub.d* on the dq-axes is disposed, and the dead time compensation values V.sub.d* and V.sub.q* calculated at the dq-axes dead time compensating section 200 are inputted into the adding sections 123d and 123q, respectively.

(50) The motor rotational number rpm is calculated by differentiating the angle at an angle detecting section 110. As well, the motor angular velocity ω is also calculated at the angle detecting section 110. Here, the motor angular velocity ω is obtained by “ω=P×n×2π/60”, where “P” is the number of pole pairs and “n” is the motor rotational number, the unit of the motor angular velocity is [rad/s], and the motor angular velocity ω is used in the current control calculation. The motor rotational number rpm is a mechanical angle rotational number, the unit of the motor rotational number rpm is [rpm] and the motor rotational number rpm is used in changing of the control conditions and the like. As understood by a human sense, the motor rotational number rpm is used in the control conditions.

(51) The d-axis current command value i.sub.d* and the q-axis current command value i.sub.q* in which max values of steering-assist command values calculated at a steering-assist command value calculating section (not shown) are limited, are inputted into subtracting sections 131d and 131q, respectively. Deviation currents Δi.sub.d* and Δi.sub.q* calculated at the subtracting sections 131d and 131q are PI-controlled at PI-control sections 120d and 120q, and dq-axes voltages V.sub.d and V.sub.q which are PI-controlled (current-controlled) are inputted into a subtracting section 121d and an adding section 121q, respectively. The voltages V.sub.nid and V.sub.niq are inputted from the dq-axes non-interference section 140 into the subtracting section 121d and the adding section 121q, and the voltage command value V.sub.d1 calculated at the subtracting section 121d and the voltage command value V.sub.q1 are inputted into the adding sections 122d and 122q, respectively. The voltage command value V.sub.d2 which is added with the voltage command value V.sub.d1 and the dq-axes disturbance compensation value V.sub.cmp_d at the adding section 122d and the voltage command value V.sub.q2 which is added with the voltage command value V.sub.d2 and the dq-axes disturbance compensation value V.sub.cmp_q at the adding section 122q are inputted into the adding section 123d and the adding section 123q, respectively. The voltage command values V.sub.d2 and V.sub.q2 are also inputted into the dq-axes disturbance estimating observer 600. The voltage command value V.sub.d3 which is added with the voltage command value V.sub.d2 and the dead time compensation value V.sub.d* at the adding section 123d and the voltage command value V.sub.q3 which is added with the voltage command value V.sub.q2 and the dead time compensation value V.sub.q* at the adding section 123q are inputted into the duty calculating section 700, and the duty values Duty_d** and Duty_q** which are calculated in synchronized with a modulation signal CF at the duty calculating section 700 are inputted into a space vector modulating section 300 described below in detail. The 3-phase duty values Duty.sub.u*, Duty.sub.v* and Duty.sub.w* which are vector-modulated at the space vector modulating section 300 are inputted into the PWM-control section 160 and the motor 100 is driven and is controlled via the PWM-control section 160 and the inverter 161.

(52) FIG. 7 shows a detailed dead time compensation system including the dq-axes disturbance estimating observer 600 (the first embodiment). The dq-axes disturbance estimating observer 600 comprises a d-axis disturbance estimating observer 600d and a q-axis disturbance estimating observer 600q, and a dq-axes dead time compensating section 200 comprises a d-axis dead time compensating section 200d and a q-axis dead time compensating section 200q. A dq-axes non-interference control section 140 comprises a d-axis non-interference control section 140d and a q-axis non-interference control section 140q, the motor angular velocity ω and the q-axis feedback current i.sub.q are inputted into the d-axis non-interference control section 140d, and the motor angular velocity ω and the d-axis feedback current i.sub.d are inputted into the q-axis non-interference control section 140q. The d-axis non-interference control section 140d comprises a multiplying section 141d and a constant number section 142d (Lq), and the q-axis non-interference control section 140q comprises a multiplying section 141q, constant number sections 142q (Ld) and 143q (ϕ) and an adding section 144q.

(53) The d-axis disturbance estimating observer 600d comprises a low pass filter (LPF) 601d for the first-order band limitation to input the voltage command value V.sub.d2 from the adding section 122d, a d-axis motor inverse model 602d to input the d-axis feedback current i.sub.d, a d-axis non-interference model 610d to input the motor angular velocity ω and the q-axis feedback current i.sub.qn, an LPF 603d to input a voltage V.sub.db from the d-axis non-interference model 610d, a subtracting section 607d to calculate a deviation voltage (=V.sub.da-V.sub.dc) from the voltage V.sub.da inputted from the d-axis motor inverse model 602d and the voltage V.sub.dc inputted from the LPF 603d, a subtracting section 606d to subtract the deviation voltage (=V.sub.da-V.sub.dc) from the voltage V.sub.d4 inputted from the LPF 601d, a sensitive gain section 605d to multiply a voltage V.sub.dis_de inputted from the subtracting section 606d by a gain Gd sensitive to the motor rotational number rpm, and a compensation amount limiting section 604d to limit the upper and lower limit values of a voltage V.sub.dse from the sensitive gain section 605d and output the d-axis disturbance compensation value V.sub.cmp_d. The d-axis non-interference model 610d comprises a multiplying section 612d to input the motor angular velocity ω and the q-axis feedback current i.sub.q, and a constant number section 611d to multiply the multiplied result at the multiplying section 612d with the constant number (Lqn) and output the voltage V.sub.db.

(54) The configuration of the q-axis disturbance estimating observer 600q is almost the same as that of the d-axis disturbance estimating observer 600d, and the corresponding sections are modified from the reference numeral “d” to the reference numeral “q”. The differences between the d-axis disturbance estimating observer 600d and the q-axis disturbance estimating observer 600q are only the input sign of the adding section 607q and the configuration of the q-axis non-interference model 610q. That is, the q-axis non-interference model 610q in the q-axis disturbance estimating observer 600q comprises a multiplying section 612q to input the motor angular velocity ω and the d-axis feedback current i.sub.d, a constant number section 611q to multiply the multiplied result at the multiplying section 612q with the constant number (Ldn), a constant number section 613q to multiply the motor angular velocity ω with the constant number (ϕn), and an adding section 614q to add with the output of the constant number section 611q and the output of the constant number section 613q.

(55) The d-axis disturbance compensation value V.sub.cmp_d calculated at the d-axis disturbance estimating observer 600d is inputted into the adding section 122d and the q-axis disturbance compensation value V.sub.cmp_q calculated at the q-axis disturbance estimating observer 600q is inputted into the adding section 122q. The voltage command value V.sub.d2 from the adding section 122d is inputted into the adding section 123d and the voltage command value V.sub.q2 from the adding section 122q is inputted into the adding section 123q. The dead time compensation value V.sub.d* from the d-axis dead time compensating section 200d is also inputted into the adding section 123d and the dead time compensation V.sub.q* from the q-axis dead time compensating section 200q is also inputted into the adding section 123q. The known dead time section may be used as the d-axis dead time compensating section 200d and the q-axis dead time compensating section 200q. It is preferable that the configuration of the dead time compensating section 200A (the first example), 200B (the second example), or 200C (the third example) described below is used as those of the d-axis dead time compensating section 200d and the q-axis dead time compensating section 200q.

(56) The voltage command value V.sub.d3 calculated at the adding section 123d is inputted into the subtracting section 124d and the subtracting section 124d subtracts the disturbance V.sub.dis_d from the voltage command value V.sub.d3. The voltage command value V.sub.q3 calculated at the adding section 123q is inputted into the subtracting section 124q and the subtracting section 124q subtracts the disturbance V.sub.dis_q from the voltage command value V.sub.q3. The subtracted results at the subtracting sections 124d and 124q are inputted into the d-axis control object (the motor) (1/(L.sub.q.Math.s+Rd)) and the q-axis control object (the motor) (1/(L.sub.q.Math.s+Rd)), respectively. The disturbances V.sub.dis_d and V.sub.dis_q according to the present invention are related to the internal generated disturbance. Mainly, the back-EMF generated in the motor, the voltage distortion which is derived from the dead time and is generated in the ECU and the voltage which is prevented from the control voltage (the voltage except for controlling (1/(L.Math.s+R))) are expressed as the disturbance. That is, the disturbances V.sub.dis_d and V.sub.dis_q are the disturbance which is not compensated by the dq-axis non-interference control and the dead time compensation and includes the circuit constant, the variation of the motor characteristic, the aged deterioration and the temperature variation.

(57) In a case that the d-axis armature voltage, the q-axis armature voltage, the d-axis armature winding resistance, the q-axis armature winding resistance, the velocity electromotive force induced in the q-axis, the self-inductance of the d-axis control object (the motor), the self-inductance of the q-axis control object (the motor) and the Laplace operator are set to V.sub.d, V.sub.q, R.sub.d, R.sub.q, ϕω (where “ϕ” is the interlink magnetic flux and “ω” is the motor angular velocity), L.sub.d, L.sub.q and “s”, respectively, the d-axis control object (the motor) is expressed as “1/(L.sub.d.Math.s+Rd)”, the q-axis control object (the motor) is expressed as “1/(L.sub.q.Math.s+Rd)” and the d-axis armature voltage V.sub.d and the q-axis armature voltage V.sub.q are represented by the following Expression 1.

(58) [ V d V q ] = [ R d + L d s - ω L q ω L d R q + L q s ] [ i d i q ] + [ 0 ωϕ ] [ Expression 1 ]

(59) Solving the Expression 1, the following Expression 2 is established.
V.sub.d=(R.sub.d+L.sub.ds)i.sub.d−ωL.sub.qi.sub.q
V.sub.q=(R.sub.q+L.sub.qs)i.sub.q+ωL.sub.di.sub.d+ωϕ  [Expression 2]

(60) The first term of right-hand side of the d-axis armature voltage V.sub.d in the Expression 2 is an inverse function of the motor and the second term is a non-interference component. The first term of right-hand side of the q-axis armature voltage V.sub.q in the Expression 2 is the inverse function of the motor, the second term is the non-interference component and the third term is a back-EMF component.

(61) In the disturbance estimating observer, the disturbance V.sub.dis_d is estimated by calculating the difference between the voltage command value V.sub.dis_d on the d-axis and the actual terminal voltage of the motor on the d-axis, and the disturbance V.sub.dis_q is estimated by calculating the difference between the voltage command value V.sub.dis_q on the q-axis and the actual terminal voltage of the motor on the q-axis. Nominal values of the armature winding resistance of the motor on the dq-axes are set to “R.sub.dn” and “R.sub.qn” and nominal values of the self-inductance on the dq-axes are set to “L.sub.dn” and “L.sub.qn”. The disturbances V.sub.dis_d and V.sub.dis_q are estimated by using the above Expression 2 and then the following Expression 3 is obtained. In the Expression 3, “V.sub.dis_de0” and “V.sub.dis_qe0” denote the d-axis estimation disturbance voltage and the q-axis estimation disturbance voltage, respectively.
V.sub.dis_de0=v.sub.d2−((R.sub.dn+L.sub.dns)i.sub.d−ωL.sub.qni.sub.q)
V.sub.dis_qe0=v.sub.q2−((R.sub.qn+L.sub.qns)i.sub.q+ωL.sub.dni.sub.dωϕ.sub.n)  [Expression 3]

(62) The above observer model of the motor includes not only the winding resistance and the self-inductance of the motor but also the non-interference component and the back-EMF component. Since the compensation loop of the disturbance estimating observer is a positive feedback from the command voltage to the command voltage, the time delay is occurred by inserting the LPF and then the stabilization of the compensation loop is devised. Another object of this LPF is to enhance the noise-resistance by performing the band limitation to the disturbance estimating observer. Considering the LPF (for example, the first-order characteristic “1/(T.Math.s+1)”) in the above Expression 3, the following Expression 4 is established. In the Expression 4, “V.sub.dis_de” and “V.sub.dis_qe” denote the d-axis estimation disturbance voltage and the q-axis estimation disturbance voltage, respectively.

(63) V dis _ de = ( 1 Ts + 1 ) v d 2 - ( 1 Ts + 1 ) ( ( R dn + L dn s ) i d - ω L qn i q ) V dis _ qe = ( 1 Ts + 1 ) v q 2 - ( 1 Ts + 1 ) ( ( R qn + L qn s ) i q + ω L dn i d + ωϕ n ) [ Expression 4 ]

(64) In tuning on the actual apparatus, there exists a possibility that the compensation values of the disturbance estimating observer increase or decrease depending on the specific steering condition. In a case that the followability is needed, the sensitive gains become larger and in a case of steering holding in which the grip feeling is important, the sensitive gains become smaller. In the present invention, the characteristic of the sensitive gains is shown in FIG. 8 and the sensitive gains G.sub.d and G.sub.q of the sensitive gain sections 605d and 605q are variable depending on the motor rotational number rpm. The sensitive gains G.sub.d and G.sub.q can be set to a linear function whose input is the motor rotational number rpm (the characteristic “A” in FIG. 8) or be stored in the table (the characteristic “B” in FIG. 8). Thus, the dq-axes disturbance compensation values V.sub.cmp_d and V.sub.cmp_q are outputted in accordance with the following Expression 5. The estimated disturbance can temporarily become a larger value due to the influence of the noise or the like. In a case that the estimated disturbance values are set to the disturbance compensation values, it is possible that the over compensation is performed and the control system becomes unstable. Therefore, compensation amount limiting sections 604d and 604q are disposed at the subsequent stage of the sensitive gain section 605d and 605q, respectively. The estimated disturbance which is beyond the limit value is judged as the irregular disturbance and the value which is limited is used as the compensation value.

(65) FIG. 9 shows a characteristic example of the compensation amount limiting section 604d and in this example, the upper limit value is set to “+6 [V]” and the lower limit value is set to “−6 [V]”. The upper limit value can be set in a range of “+6 [V]” to “+10 [V]” and the lower limit value can be set in a range of “−6 [V]” to “−10 [V]”. The characteristic of the compensation amount limiting section 604q is the same as or is similar to that of the compensation amount limiting section 604d.
V.sub.cmp_d=G.sub.d.Math.V.sub.dis_de
V.sub.cmp_q=G.sub.q.Math.V.sub.dis_qe  [Expression 5]

(66) As shown in FIG. 7, the dead time compensation values V.sub.d* and V.sub.q* from the dead time compensating section 200 are added to the dq-axes control system, and the disturbance estimating observer 600d and 600q can estimate the disturbance except for the dead time or the disturbance which cannot be compensated by the dead time compensation (the disturbance such as the individual difference between the design value of the dead time compensation model and the ECU, the circuit constant, the variation of the motor characteristic, the aged deterioration and the temperature variation). The disturbance except for the dead time is represented by the following Expression 6 and the disturbance estimated by the present function becomes the estimation values to the disturbance in the Expression 6. In the Expression 6, “V*.sub.dis_d” and “V*.sub.dis_q” are the d-axis disturbance voltage in applying the dead time compensation and the q-axis disturbance voltage in applying the dead time compensation, respectively.
V*.sub.dis_d=V.sub.dis_d−v*.sub.d
V*.sub.dis_q=V.sub.dis_q−v*.sub.q  [Expression 6]

(67) Next, the dead time compensating section 200 will be described. In the dead time compensating section 200, several examples are existed. In the first example (the dead time compensating section 200A) of FIG. 10, since the compensation sign and the compensation amount are automatically calculated, it has a characteristic that the chattering does not occur even in the low load and low speed steering region near the on-center of the handle, and the dead time compensation can be performed.

(68) As shown in FIG. 10, the dead time compensating section 200A comprises subtracting sections 201 (201U, 201V and 201W) and 202, a midpoint voltage estimating section 210, a 3-phase command voltage calculating section 204, a voltage detection delay model 205, a gain section 206, a compensation amount limiting section 250 and a 3-phase AC/dq-axes converting section 203.

(69) The detail configuration is shown in FIG. 11, the motor rotational angle θ is inputted into the midpoint voltage estimating section 210 and the 3-phase AC/dq-axes converting section 203, and the motor rotational velocity ω is inputted into the midpoint voltage estimating section 210. The motor terminal voltages V.sub.u, V.sub.v and V.sub.w are inputted into the midpoint voltage estimating section 210 and the subtracting section 201 (201U, 201V and 201W) via LPFs 163U, 163V and 163W. Further, the duty values Duty.sub.u, Duty.sub.v and Duty.sub.w from the duty command value calculating section (not shown) in the PWM-control section 160 are inputted into the 3-phase command voltage calculating section 204, and the inverter applying voltage VR is inputted into the midpoint voltage estimating section 210, the 3-phase command voltage calculating section 204 and the compensation amount limiting section 250. When the 3-phase signal lines are depicted in the drawings, the depicted lines are complicated. In FIGS. 10 and 11, the three-phase is expressed by depicting only the one-phase by the solid line and the oblique line and showing the number “3”. The same applies to following other examples.

(70) The midpoint voltage estimating section 210 calculates a reference voltage of midpoint voltages by using the inverter applying voltage VR. The detail configuration is shown in FIG. 12, since the midpoint voltages vary depending on the influence of a hardware configuration, a detection error and so on, the correction is performed based on the differences between the inverter applying voltage VR and the motor terminal voltages V.sub.u, V.sub.v and V.sub.w. The correction timing is adjusted under conditions of a specific motor rotational angle θ and a specific motor angular velocity ω.

(71) That is, the inverter applying voltage VR is reduced by half (VR/2) in a reducing section 211, and a half-reduced value (VR/2) is addition-inputted into subtracting sections 217 and 218. The motor terminal voltages V.sub.u, V.sub.v and V.sub.w are inputted into the adding section 216 and are added, the added result “V.sub.u+V.sub.v+V.sub.w” is ⅓-multiplied in a dividing section (⅓) 212, and a ⅓-multiplied voltage “(V.sub.u+V.sub.v+V.sub.w)/3” is subtraction-inputted into the subtracting section 217. The subtracting section 217 subtracts the voltage “(V.sub.u+V.sub.v+V.sub.w)/3” from the half-reduced value VR/2, and the subtracted result VR.sub.na is inputted into a correction value holding section 214. A correction timing judging section 213 judges a correction timing based on the motor rotational angle θ and the motor angular velocity ω and inputs a correction signal CT to the correction value holding section 214. The correction amount limiting section 215 calculates a voltage correction value ΔV.sub.m based on a voltage VR.sub.nb held in the correction value holding section 214.

(72) The details of the correction timing judging section 213 and the correction value holding section 214 are shown in FIG. 13, the correction timing judging section 213 comprises an angle judging section 213-1, an effective rotational velocity judging section 213-2 and an AND-circuit 213-3, and the correction value holding section 214 comprises a switching section 214-1 and a holding unit (Z.sup.−1) 214-2.

(73) That is, the motor rotational angle θ is inputted into the angle judging section 213-1 and the judgment is performed by using the below Expression 7. When the Expression 7 is established, the angle judging section 213-1 outputs a judging signal JD1.
179 [deg]<θ<180 [deg]  [Expression 7]

(74) In a case that the timing of the above Expression 7 is considered as the correction condition on the calculation of the midpoint correction value, it is possible to accurately sample a voltage value of a zero-crossing point. Since the third harmonic is superimposed on the motor terminal voltages except for the above point, it is impossible to detect more accurate value. For example, considering that the respective terminal voltages detected by the condition of the Expression 7 are “V.sub.u=6.83 [V], V.sub.v=7.55 [V], V.sub.w=5.94 [V]” and the motor applying voltage is “13.52 [V]”, “(V.sub.u+V.sub.v+V.sub.w)/3”=6.77 [V] and “VR/2=6.76 [V]” are established, and therefore “VR/2≅(V.sub.u+V.sub.v+V.sub.w)/3”, the almost midpoint voltage is obtained. Further, when the motor angular velocity ω is high, since the influence of the motor back-EMF increases and the sampling precision decreases, it is impossible to perform the accurate correction calculation. Thus, the effective rotational number judging section 213-2 judges whether the motor angular velocity ω is equal to or less than an effective angular velocity ω.sub.0 being capable of correction-calculating or not, by using the below Expression 8. When the motor angular velocity ω is equal to or less than the effective angular velocity ω.sub.0, the effective rotational number judging section 213-2 outputs the judging signal JD2.
ω≤ω.sub.0  [Expression 8]

(75) The judging signals JD1 and JD2 are inputted into the AND-circuit 213-3, and the correction signal CT is outputted in accordance with the AND-condition that the judging signals JD1 and JD2 are inputted. The correction signal CT is inputted into the switching section 214-1 in the correction value holding section 214 as a switching signal and switches contact points “a” and “b”. The subtracted result VR.sub.na is inputted into the contact point “a”, and the output voltage VR.sub.nb is inputted into the contact point “b” via the holding unit (Z.sup.−1) 214-2. The correction value holding section 214 holds a value in order to output a stable correction value till a next timing. Further, in a case that the correction amount is clearly larger than a normal value due to the noise, the back-EMF, the correction timing miss-judgment and so on, the correction amount limiting section 215 judges that the present correction amount is not right and limits to the maximum correction amount. The voltage correction value ΔV.sub.m which is limited to the maximum correction amount is inputted into the subtracting section 218, and the midpoint voltage estimation value V.sub.m calculated in accordance with the following Expression 9 in the subtracting section 218 is outputted. The midpoint voltage estimation value V.sub.m is subtraction-inputted into the subtracting section 201 (201U, 201V and 201W).

(76) V m = VR 2 - Δ V m [ Expression 9 ]

(77) Furthermore, the 3-phase duty command values Duty.sub.u, Duty.sub.v and Duty.sub.w and the inverter applying voltage VR are inputted into the 3-phase command voltage calculating section 204, and the 3-phase command voltage calculating section 204 calculates the 3-phase command voltages V.sub.in by using the following Expression 10 in accordance with the 3-phase duty command values Duty.sub.u, Duty.sub.v and Duty.sub.w and the inverter applying voltage VR. The 3-phase command voltages V.sub.in are inputted into the voltage detection delay model 205. As well, “Duty.sub.ref” denotes Duty.sub.u, Duty.sub.v and Duty.sub.w, “Duty.sub.50%,” denotes that the duty is “50%”, and “Duty.sub.100%” denotes that the duty is “100%” in the Expression 10.

(78) V in = VR × ( Duty ref - Duty 50 % ) Duty 100 % [ Expression 10 ]

(79) The midpoint estimation value V.sub.m is subtraction-inputted into the subtracting section 201 (201U, 201V and 201W), and further the terminal voltages V.sub.u, V.sub.v and V.sub.w passed the LPFs 163U, 163V and 163W are addition-inputted into the subtracting section 201 (201U, 201V and 201W). The subtracting sections 201U, 201V and 201W subtract the midpoint estimation value V.sub.n, from the 3-phase terminal voltages V.sub.u, V.sub.v and V.sub.w in accordance with the following Expression 11. Thereby, 3-phase detection voltages V.sub.dn (V.sub.du, V.sub.dv and V.sub.dw) are obtained. The 3-phase detection voltages V.sub.dn (V.sub.du, V.sub.dv and V.sub.dw) are inputted into the subtracting section 202 serving as a 3-phase loss voltage calculating section.
V.sub.du=V.sub.u−V.sub.m
V.sub.dv=V.sub.v−V.sub.m
V.sub.dw=V.sub.w−V.sub.m  [Expression 11]

(80) The detection of the terminal voltages V.sub.u, V.sub.v and V.sub.w has a delay due to a noise filter or the like in the ECU. Consequently, in a case that the loss voltages are directly calculated by obtaining the differences between the 3-phase command value voltages V.sub.in and the 3-phase detection voltages V.sub.dn, the error occurs due to the phase difference. In order to resolve this problem, the present example approximates the detection delay of the hardware such as a filter circuit as the first order filter model and improves the phase difference. The voltage detection delay model 205 of the present example is a primary filter of the following Expression 12 and “T” denotes a filter time constant. The voltage detection delay model 205 may be a model of a secondary filter or higher order filter.

(81) 1 Ts + 1 [ Expression 12 ]

(82) The 3-phase correction command voltages V.sub.inp from the voltage detection delay model 205 are addition-inputted into the subtracting section 202, and the 3-phase detection voltages V.sub.dn are subtraction-inputted into the subtracting section 202. The 3-phase loss voltages PLA (V.sub.loss_n) are calculated by subtracting the 3-phase detection voltages V.sub.dn from the 3-phase correction command voltages V.sub.inp. That is, the subtracting section 202 performs the following Expression 13.
V.sub.loss_u=V.sub.inu−V.sub.du
V.sub.loss_v=V.sub.inv−V.sub.dv
V.sub.loss_w=V.sub.inw−V.sub.dw  [Expression 13]

(83) The 3-phase loss voltages PLA (V.sub.loss_n) are multiplied with a gain P.sub.G (for example, “0.8”) in the gain section 206, and the 3-phase loss voltages PLB which is multiplied the 3-phase loss voltages PLA (V.sub.loss_n) with the gain P.sub.G are inputted into the compensation amount limiting section 250. Although the gain P.sub.G is not basically needed to adjust, the gain P.sub.G is changed in a case that an output adjustment is needed when the adjustment for another compensators or actual vehicle tuning is required, or parts of the ECU are changed.

(84) The compensation amount limiting section 250 is sensitive to the inverter applying voltage VR, and the detail configuration is shown in FIG. 14. The inverter applying voltage VR is inputted into a compensation upper-lower limit-value calculating section 251 in the compensation amount limiting section 250, and a compensation amount limit value DTCa is calculated with a characteristic as shown in FIG. 15. The compensation amount limit value DTCa is a constant limit value DICa1 when the inverter applying voltage VR is lower than a predetermined voltage VR1, linearly (or non-linearly) increases when the inverter applying voltage VR is equal to or higher than the predetermined voltage VR1 and is lower than a predetermined voltage VR2 (>VR1), and holds a constant limit value DTCa2 when the inverter applying voltage VR is equal to or higher than the predetermined voltage VR2. The compensation amount limit value DTCa is inputted into a contact point a1 of the switching section 252, a comparing section 255 and an inverting section 254. Further, the 3-phase loss voltages PLB (V.sub.loss_u, V.sub.loss_v, V.sub.loss_w) are inputted into comparing sections 255 and 256, and a contact point b1 of the switching section 252. An output “−DTCa” of the inverting section 254 is inputted into a contact point a2 of the switching section 253. The contact points a1 and b1 are switched based on a comparison result CP1 of the comparing section 255, and the contact points a2 and b2 are switched based on a comparison result CP2 of the comparing section 256.

(85) The comparing section 255 compares the compensation amount limit value DTCa with the 3-phase loss voltages PLB and switches the contact points a1 and b1 of the switching section 252 in accordance with the following Expression 14. Further, the comparing section 256 compares the compensation amount limit value “−DTCa” with the 3-phase loss voltages PLB and switches the contact points a2 and b2 of the switching section 253 in accordance with the following Expression 15.
[Expression 14] When the 3-phase loss voltages PLB≥the compensation amount upper-limit value (DTCa), the contact point a1 of the switching section 252 is “ON” (the contact point b2 of the switching section 253=DTCa). When the 3-phase loss voltages PLB<the compensation amount upper-limit value (DTCa), the contact point b1 of the switching section 252 is “ON” (the contact point b2 of the switching section 253=the 3-phase loss voltages PLB).
[Expression 15] When the 3-phase loss voltages PLB the compensation amount lower-limit value (−DTCa), the contact point a2 of the switching section 253 is “ON” (the dead time compensation value DTC=−DTCa). When the 3-phase loss voltages PLB>the compensation amount lower-limit value (−DTCa), the contact point b2 of the switching section 253 is “ON” (the dead time compensation value DTC=the output of the switching section 252).

(86) Next, the second example in the dead time compensating section 200 shown in FIG. 16 will be described corresponding to FIG. 10. The second example (the dead time compensating section 200B) shown in FIG. 16 has a high compensation accuracy in both the low speed steering region and the middle speed steering region that the angle is coincident with the phase of the phase current.

(87) The q-axis steering assist command value i.sub.qref corresponding to the steering assist command value I.sub.ref2 shown in FIG. 2, the motor rotational angle θ and the motor angular velocity ω are inputted into the dead time compensating section 200B of the present example. The dead time compensating section 200B comprises a current control delay model 208, a compensation sign estimating section 209, multiplying sections 232, 233d and 233q, an adding section 221, a phase adjusting section 207, an inverter applying voltage sensitive-gain calculating section 220, an angle-dead time (DT) compensation value functional sections 230U, 230V and 230W, multiplying sections 231U, 231V and 231W, a 3-phase AC/dq-axes converting section 203 and a current command value sensitive-gain section 240.

(88) The detailed configuration of the dead time compensating section 200B is shown in FIG. 17 and the q-axis steering assist command value i.sub.qref is inputted into the current control delay model 208. The delay due to the noise filter or the like in the ECU is occurred until the current command values i.sub.d* and i.sub.q* on the dq-axes are reflected to the actual current. Therefore, when the sign is directly judged from the current command value i.sub.q*, there exists the timing deviation. In order to resolve this problem, the present example approximates the delay of the overall current control as the first order filter model and improves the phase difference. The current control delay model 208 of the present example is a primary filter of the following Expression 16 and “T” denotes a filter time constant.

(89) 1 Ts + 1 [ Expression 16 ]

(90) The current command value I.sub.cm outputted from the current control delay model 208 is inputted into the current command value sensitive-gain section 240 and the compensation sign estimating section 209. In a low current region, a case that the dead time compensation amount is overcompensated is occurred. The current command value sensitive-gain section 240 has a function that a gain, which the compensation amount is reduced depending on the magnitude of the current command value I.sub.cm (the steering-assist command value i.sub.qref), is calculated. In order that the gain, which the compensation amount is reduced, is not largely changed due to a noise from the current command value I.sub.cm (the steering-assist command value i.sub.qref), or the like, a noise reduction process is performed by using a weighted average filter.

(91) The current command value sensitive-gain section 240 has a configuration shown in FIG. 18. An absolute value |I.sub.cm| of the current command value I.sub.cm is calculated at an absolute value section 241. The absolute value |I.sub.cm| of the current command value I.sub.cm whose maximum value is limited at an input limiting section 242 is inputted into a weighted average filter 244 via a scale converting section 243. The current command value I.sub.am that the noise is reduced at the weighted average filter 244 is addition-inputted into a subtracting section 245, and a predetermined offset OS is subtracted from the current command value I.sub.am at the subtracting section 255. The reason for subtracting the offset OS is to prevent a chattering due to a minute current command value, and the input value that is equal to or smaller than the offset OS is fixed to the minimum gain. The offset OS is a constant value. The current command value I.sub.as that the offset OS is subtracted at the subtracting section 245 is inputted into a gain section 246, and the current command value sensitive-gain G.sub.c is outputted in accordance with a gain characteristic as shown in FIG. 19. That is, the initial value of the current command value sensitive gain G.sub.c at the gain section 246 is “G.sub.ca1”, and the current command value sensitive-gain G.sub.c linearly increases when the current command value I.sub.as is equal to or smaller than a predetermined value I.sub.as1, and holds a constant value G.sub.ca2 when the current command value I.sub.as is larger than the predetermined value I.sub.as1.

(92) The current command value sensitive-gain G.sub.c outputted from the current command value sensitive-gain section 240 has a characteristic, for example, as shown in FIG. 20, to the inputted current command value I.sub.cm. That is, the current command value sensitive-gain G.sub.c is a constant gain G.sub.cc1 when the current command value I.sub.cm is smaller than a predetermined current I.sub.cm1, linearly (or nonlinearly) increases when the current command value I.sub.cm is equal to or larger than the predetermined current I.sub.cm1 and is smaller than a predetermined current I.sub.cm2 (>I.sub.cm), and holds a constant gain G.sub.cc2 when the current command value I.sub.cm is equal to or larger than the predetermined current I.sub.cm2.

(93) The compensation sign estimating section 209 outputs a compensation sign SN, which has a positive value (+1) or a negative value (−1) and indicates a hysteresis characteristic shown in FIGS. 21A and 21B, against the inputted current command value I.sub.cm. The compensation sign SN is estimated based on zero-crossing points of the current command value I.sub.cm as a reference. In order to suppress the chattering, the compensation sign SN has the hysteresis characteristic. The estimated compensation sign SN is inputted into the multiplying section 232. In a case that the sign of the dead time compensation value is simply determined from the current sign of the phase current command value model, the chattering is occurred in the low load. When the handle is slightly steered to the left or the right near the on-center, the torque ripple is occurred. In order to improve this problem, the hysteresis is adopted in the sign judgement. The current sign is held except for a case that the sign is changed beyond the set current value, and the chattering is suppressed.

(94) The current command value sensitive-gain G.sub.c from the current command value sensitive-gain section 240 is inputted into the multiplying section 232. The multiplying section 232 outputs the current command value sensitive-gain G.sub.cs (=G.sub.c×SN) that the compensation sign SN is multiplied with the current command value sensitive-gain G.sub.c. The current command value sensitive-gain G.sub.cs is inputted into the multiplying sections 233d and 233q.

(95) Because the optimal dead time compensation amount varies depending on the inverter applying voltage VR, in the present example, the voltage sensitive gain G.sub.v is calculated depending on the inverter applying voltage VR and the dead time compensation amount can be variable. The configuration of the inverter applying voltage sensitive-gain calculating section 220 to output the voltage sensitive gain G.sub.v by inputting the inverter applying voltage VR is shown in FIG. 22. An absolute value of the maximum value of the inverter applying voltage VR is limited in an input limiting section 221 and the limited inverter applying voltage VR.sub.nx is inputted into an inverter applying voltage/dead time compensation-gain conversion table 222. The characteristic of the inverter applying voltage/dead time compensation-gain conversion table 222 is shown, for example, in FIG. 23. That is, the inverter applying voltage/dead time compensation-gain conversion table 222 has a characteristic that the voltage sensitive gain G.sub.v is a constant gain (=0.7) when the inverter applying voltage VR is lower than the first predetermined voltage 9.0 [V], linearly (or nonlinearly) increases when the inverter applying voltage VR is equal to or higher than the first predetermined voltage 9.0 [V] and is lower than the second predetermined voltage 15.0 [V] and holds a constant gain (=1.2) when the inverter applying voltage VR is equal to or higher than the second predetermined voltage 15.0 [V]. The inverter applying voltages 9.0[V] and 15.0[V] of inflection points and the voltage sensitive gains “0.7” and “1.2” are presented as examples and are appropriately variable. The calculated voltage sensitive gain G.sub.v is inputted into the multiplying sections 231U, 231V and 231W.

(96) In a case that the dead time compensation timing is hastened or is delayed in response to the motor angular velocity ω, the dead time compensating section 200B comprises the phase adjusting section 207 which has a function to calculate the adjustment angle depending on the motor angular velocity ω. The phase adjusting section 207 has a characteristic as shown in FIG. 24 in a case of a lead angle control. The calculated phase adjustment angle Δθ is inputted into the adding section 221 and is added to the detected motor rotational angle θ. The motor rotational angle θ.sub.m (=θ+Δθ) that is an added result of the adding section 421 is inputted into the angle-dead time (DT) compensation value functional sections 230U, 230V and 230W, and the 3-phase AC/dq-axes converting section 240.

(97) After detecting a motor electric angle and calculating the duty command values, a time delay whose time is several tens of microseconds to one hundred microseconds is existed until actually correcting the PWM-signals. Since the motor is rotating during the delay time, a phase deviation between the motor electric angle in calculation and the motor electric angle in correction is generated. In order to compensate this phase deviation, the lead angle is performed depending on the motor angular velocity ω and the phase is adjusted.

(98) The angle-dead time (DT) compensation value functional sections 230U, 230V and 230W, as shown in FIG. 25 in detail, respectively output respective phase rectangular wave dead time reference compensation values U.sub.dt, V.sub.dt and W.sub.dt whose phases are shifted each other by 120 [deg] in a range of 0 to 359 [deg] in the electric angle, to the phase-adjusted motor rotational angle θ.sub.m. The angle-dead time (DT) compensation value functional sections 230U, 230V and 230W treat the dead time compensation values, which are needed in the three-phases, as functions depending on the angle, calculates the dead time compensation values in the actual time of the ECU, and outputs the 3-phase dead time reference compensation values U.sub.dt, V.sub.dt and W.sub.dt. The angle functions of the dead time reference compensation values are different depending on the characteristic of the dead time in the ECU.

(99) The dead time compensation values U.sub.dt, V.sub.dt and W.sub.dt are respectively inputted into multiplying sections 231U, 231V and 231W, and are multiplied with the voltage sensitive gain G.sub.v. The 3-phase dead time compensation values U.sub.dtc (=G.sub.v.Math.U.sub.dt), V.sub.dtc (=G.sub.v.Math.V.sub.dt) and W.sub.dtc (=G.sub.v.Math.W.sub.dt) which are multiplied with the voltage sensitive gain G.sub.v are inputted into the 3-phase AC/dq-axes converting section 203. The 3-phase AC/dq-axes converting section 203 converts the 3-phase dead time compensation values U.sub.dtc, V.sub.dtc, and W.sub.dtc into the 2-phase dq-axes dead time compensation values v.sub.da*and v.sub.qa*, synchronized with the motor rotational angle θ.sub.m. The 2-phase dq-axes dead time compensation values v.sub.da* and v.sub.qa* are respectively inputted into the multiplying sections 233d and 233q, and are multiplied with the current command value sensitive-gain G.sub.cs. The multiplied results in the multiplying sections 233d and 233q are the dead time compensation value v.sub.d* and v.sub.q*. The dead time compensation value v.sub.d* and v.sub.d* are respectively added to the voltage command values v.sub.d2 and v.sub.d2 at the adding sections 123d and 123q.

(100) Next, the third example in the dead time compensating section 200 shown in FIG. 26 will be described corresponding to FIGS. 10 and 16. The third example (the dead time compensating section 200C) shown in FIG. 26 has a characteristic that the compensation can simply be performed even in the high speed steering region.

(101) The dead time compensating section 200C comprises an adding section 273, a multiplying section 272, an inverter applying voltage-sensitive compensation-amount calculating section 260, a 3-phase current command value model 270, a phase current compensation-sign estimating section 271, the phase adjusting section 207 and the 3-phase AC/dq-axes converting section 203. The motor rotational angle θ is inputted into the adding section 273 and the motor angular velocity ω is inputted into the phase adjusting section 207. The inverter applying voltage VR is inputted into the inverter applying voltage-sensitive compensation-amount calculating section 260. A motor rotational angle θ that is calculated and is phase-adjusted at the adding section 273 is inputted into the 3-phase current command value model 270.

(102) In a case that the dead time compensation timing is hastened or is delayed in response to the motor angular velocity ω, the dead time compensation section 200C comprises the phase adjusting section 207 which has a function to calculate the adjustment angle depending on the motor angular velocity ω. The phase adjusting section 207 has a similar characteristic as shown in FIG. 24 in a case of the lead angle control. The calculated phase adjustment angle Δθ is inputted into the adding section 273 and is added to the motor rotational angle θ. The phase-adjusted motor rotational angle θ.sub.m (=θ+Δθ) that is an added result of the adding section 273 is inputted into the 3-phase current command value model 270 and the 3-phase AC/dq-axes converting section 203. The reason why the phase adjusting section 207 is disposed is the same as that in a case of the second example.

(103) Because the optimal dead time compensation amount is changed depending on the inverter applying voltage VR, the dead time compensation amount DTC is calculated depending on the inverter applying voltage VR and is variable in the present example. The inverter applying voltage-sensitive compensation-amount calculating section 260 that inputs the inverter applying voltage VR and outputs the dead time compensation amount DTC has a configuration as shown in FIG. 27. The maximum value of the absolute value of the inverter applying voltage VR is limited at an input limiting section 261. The inverter applying voltage VR.sub.mx whose maximum value is limited is inputted into an inverter applying voltage/dead time compensation-amount conversion table 262.

(104) The inverter applying voltage/dead time compensation-amount conversion table 262 has a characteristic, for example, as shown in FIG. 28. That is, the outputted dead time compensation amount DTC is a constant dead time compensation amount DTC1 when the inverter applying voltage VR.sub.mx whose maximum value is limited is lower than the first predetermined inverter applying voltage VR1, linearly (or nonlinearly) increases when the inverter applying voltage VR.sub.mx is equal to or higher than the predetermined voltage VR1 and is lower than the second predetermined voltage VR2 (>VR1) and is a constant dead time compensation amount DTC2 when the inverter applying voltage VR.sub.mx is equal to or higher than the second predetermined voltage VR2.

(105) The d-axis current command value i.sub.d*, the q-axis current command value i.sub.q* and the motor rotational angle θ.sub.m are inputted into the 3-phase current command value model 270. The 3-phase current command value model 270 calculates the sinusoidal 3-phase current model command values I.sub.cma whose phases are shifted each other by 120 [deg] as shown in FIG. 29, from the dq-axes current command values i.sub.d* and i.sub.d* and the motor rotational angle θ.sub.m by calculation or using a table (refer to the following Expressions 17 to 18). The 3-phase current model command values I.sub.cma are different depending on the motor type. The d-axis current command value i.sub.ref_d and the q-axis current command value i.sub.ref_q are converted into the 3-phase current command values (U-phase, V-phase and W-phase) using the motor electric angle θ.sub.e. The above relationship is represented by the below Expression 17.

(106) [ i ref _ u i ref _ v i ref _ w ] = [ cos ( θ e ) sin ( θ e ) cos ( θ e - 2 3 π ) sin ( θ e - 2 3 π ) cos ( θ e + 2 3 π ) sin ( θ e + 2 3 π ) ] [ i ref _ d i ref _ q ] [ Exprssion 17 ]

(107) The respective phase current command values are calculated from the above Expression 17, and the U-phase current command value model i.sub.ref_u, the V-phase current command value model i.sub.ref_v and the W-phase current command value model i.sub.ref_w ware represented by the below Expression 18.
i.sub.ref_u=i.sub.ref_d.Math.cos(θ.sub.e)+i.sub.ref_q.Math.sin(θ.sub.e)
i.sub.ref_v=i.sub.ref_d.Math.cos(θ.sub.e−⅔π)+i.sub.ref_q.Math.sin(θ.sub.e−⅔π)
i.sub.ref_w=i.sub.ref_d.Math.cos(θ.sub.e+⅔π)+i.sub.ref_q.Math.sin(θ.sub.e+⅔π)  [Expression 18]

(108) The table may be stored in an electrically erasable and programmable read-only memory (EEPROM) or may be loaded to a random access memory (RAM). In using the above Expression 18, the values of sin θ.sub.e are stored in the table. The values of cos θ.sub.e may be calculated by offsetting the input θ.sub.e to 90° and other sine function terms may be calculated by offsetting the input θ.sub.e to 120°. In a case that the capacity of the ROM is sufficiently large or the command value model is complicated (for example, a pseudo rectangular wave motor), all of the values of the Expression 18 are stored in the table.

(109) The 3-phase current model command values I.sub.cma from the 3-phase current command value model 270 are inputted into the phase current compensation-sign estimating section 271. The phase current compensation-sign estimating section 271 outputs compensation signs SN, which have a positive value (+1) or a negative value (−1) and indicates a hysteresis characteristic shown in FIGS. 21A and 21B, against the inputted 3-phase current model command values I.sub.cma. The compensation signs SN are estimated based on zero-crossing points of the 3-phase current model command values I.sub.cma as a reference. In order to suppress the chattering, the compensation signs SN have the hysteresis characteristic. The estimated compensation signs SN are inputted into the multiplying section 272. In a case that the signs of the dead time compensation values are simply determined from the current signs of the phase current command value model, the chattering is occurred in the low load. For example, when the handle is slightly steered to the left or the right near the on-center, the torque ripple is occurred. In order to improve this problem, the hysteresis is adopted in the sign judgement (±0.25 [A] in FIGS. 21A and 21B). The present signs are held except for a case that the signs are changed beyond the set current value, and the chattering is suppressed.

(110) The dead time compensation amount DTC from the inverter applying voltage-sensitive compensation-amount calculating section 260 is inputted into the multiplying section 272. The multiplying section 272 outputs the dead time compensation amounts DTCa (=DTC×SN) that the compensation signs SN are multiplied with the dead time compensation amount DTC. The dead time compensation amounts DTCa are inputted into the 3-phase AC/dq-axes converting section 203. The 3-phase AC/dq-axes converting section 203 outputs the 2-phase dead time compensation values v.sub.d* and v.sub.d* in synchronization with the motor rotational angle θ.sub.m. The dead time compensation values v.sub.d* and v.sub.d* are added to the voltage command values v.sub.d2 and v.sub.d2 at the adding sections 123d and 123q, respectively, and the dead time compensation of the inverter 161 is performed.

(111) In the third example, the dq-axes current command values are converted into the 3-phase current model command values, and the compensation signs are estimated. The dead time compensation amount of the inverter calculated from the inverter applying voltage is calculated, and the voltage command values on the dq-axes are feedforward-compensated by the dead time compensation values calculated from the estimated compensation signs. The 3-phase current model command values are used in the compensation signs of the dead time, and the dead time compensation amount is calculated from the inverter applying voltage VR. The compensation values are variable so that the magnitudes and directions of the compensation values are optimal depending on the magnitude of the current command values (i.sub.d* and i.sub.d*) and the magnitude of the inverter applying voltage VR.

(112) The first, second and third examples of the dead time compensating section 200 shown in FIGS. 10, 16 and 26, respectively, may switchingly be used depending on the steering condition, or only one example may be used.

(113) Next, the space vector modulation will be described. In order to reduce the number of arithmetic operations and the like in the present invention, the space vector conversion calculation is performed after the dimension of the space vector is converted from the dimension of the voltage to the dimension of the duty. As shown in FIG. 30, the space vector modulating section 300 may have a function that converts the 2-phase duty values (the duty command values Duty_.sub.d** and Duty_.sub.q**) on the dq-axes space into the 3-phase duty values (Duty_.sub.u, Duty_.sub.v and Duty_.sub.w) and superimposes the third harmonic on the 3-phase duty values (Duty_.sub.u, Duty_.sub.v and Duty_.sub.w). For example, the method of the space vector modulation that the present applicant proposes in Japanese Unexamined Patent Publication No. 2017-70066, WO/2017/098840 and the like may be used.

(114) The space vector modulation will be described by using the voltage expressions. That is, the space vector modulation has a function that performs a following coordinate transformation based on the voltage command values V.sub.d3 and V.sub.q3 on the dq-axes space, the motor rotational angle θ and sector number n (#1 to #6), and controls the rotation of the motor by supplying switching patterns S1 to S6 to the motor. The switching patterns S1 to S6 are corresponding to the sectors #1 to #6, and control turning-ON/turning-OFF of the FETs (the upper arm Q1, Q3 and Q5, and the lower arm Q2, Q4 and Q6) of the inverter with the bridge configuration. With respect to the coordinate transformation, in the space vector modulation, the coordinate transformation from the voltage command values V.sub.d3 and V.sub.q3 to the voltage vectors V.sub.α and V.sub.β in the α-β coordinate system based on an Expression 19 is performed. A relationship between the coordinate axes that are used in this coordinate transformation and the motor rotational angle θ is shown in FIG. 31.

(115) [ V α V β ] = [ cos θ - sin θ sin θ cos θ ] [ V d 3 V q 3 ] [ Expression 19 ]

(116) As the inverter applying voltage is set to “VR”, the relationship between the duty command values Duty_.sub.d and Duty_.sub.q and the voltage command values V.sub.d3 and V.sub.q3 is represented by the following Expression 20.
V.sub.d3=VR×Duty_d/Duty.sub.100%
V.sub.q3=VR×Duty_q/Duty.sub.100%  [Expression 20]

(117) A relationship shown in an expression 21 between a target voltage vector in the d-q coordinate system and a target voltage vector in the α-β coordinate system is existed. The absolute value of the target voltage vector is conserved.
|V|=√{square root over ((V.sub.d3).sup.2+(V.sub.q3).sup.2)}=√{square root over (V.sub.α.sup.2+V.sub.β.sup.2)}  [Expression 21]

(118) In the switching pattern of the space vector control, the output voltage is defined by using eight discrete reference voltage vectors V0 to V7 (non-zero voltage vectors V1 to V6 that the phase differs every π/3 [rad] and zero voltage vectors V0 and V7) that are shown in the space vector diagram of FIG. 32, depending on the switching patterns S1 to S6 of the switching devices (the FETs) (Q1 to Q6). The selection of these reference output voltage vectors V0 to V7 and the occurring time are controlled. By using six regions sandwiched between adjacent reference output voltage vectors, the space vector can be divided into the six sectors #1 to #6, and the target voltage vector V is belong to any one of the sectors #1 to #6, and can be assigned to the sector number. The rotational angle γ in the α-β coordinate system of the target voltage vector V can determine which sector that is separated into a regular hexagon in the α-β space, as shown in FIG. 32, is existed in the target voltage vector V that is a synthetic vector of Vα and Vβ. The rotational angle γ is determined by a sum of the rotational angle θ of the motor and a phase δ obtained from the relationship of the voltage command values v.sub.d3 and v.sub.d3 in the d-q coordinate system (γ=θ+δ).

(119) FIG. 33 shows a basic timing chart that the switching pulse width and the timing in the turning-ON/turning-OFF signals S1 to S6 to the FETs are determined in order to output the target voltage vector from the inverter by a digital control by means of the switching patterns S1, S3 and S5 of the inverter in the space vector control. The space vector modulation performs the calculation and the like in every defined sampling period Ts, and outputs the respective pulse widths and the timings in the switching patterns S1 to S6 to which the calculation result is transformed in the next sampling period Ts.

(120) The space vector modulation generates the switching patterns S1 to S6 depending on the sector number that is obtained based on the target voltage vector V. In FIG. 33, in a case of the sector number #1 (n=1), one example of the switching patterns S1 to S6 of the inverter is shown. The signals S1, S3 and S5 show the gate signals of the switching devices Q1, Q3 and Q5 that are corresponding to the upper arm. The horizontal axis denotes a time, and Ts is corresponding to the switching period and is divided into eight periods, T0/4, T1/2, T2/2, T0/4, T0/4, T2/2, T1/2 and T0/4. The periods T1 and T2 are the time depending on the sector number n and the rotational angle γ.

(121) FIGS. 34A and 34B show simulation results by a bench test apparatus to which the actual vehicle is simulated. In a middle speed steering state, in a case that the handle is steered-forward to the right direction, since the current ripples of the dq-axes current waveforms in FIG. 34B obtained after applying the dq-axes disturbance estimating observer are smaller than those in FIG. 34A obtained before applying the dq-axes disturbance estimating observer, it is confirmed that the torque ripple becomes smaller by using the dq-axes disturbance estimating observer. The torque ripple during steering the handle is also improved. In FIGS. 34A and 34B, only the simulation results of the U-phase are shown. The similar simulation results are obtained in other phases.

(122) FIG. 35 shows the dead time compensation system of the second embodiment including the dq-axes disturbance estimating observer 600 and the dq-axes disturbance estimating observer 600 comprises the d-axis disturbance estimating observer 600d A and the q-axis disturbance estimating observer 600q A. In the second embodiment, the d-axis dead time compensating section 200d, the q-axis dead time compensating section 200q, the d-axis non-interference control section 140d and the q-axis non-interference control section 140q whose configuration and function are the same as those of the first embodiment are disposed. Accordingly, the explanations of the d-axis dead time compensating section 200d, the q-axis dead time compensating section 200q, the d-axis non-interference control section 140d and the q-axis non-interference control section 140q are omitted.

(123) The differences between the second embodiment and the first embodiment are that the parameters of the dq-axes motor inverse models 602d and 602q are variable and the cutoff frequencies of the dq-axes LPFs 601d, 603d, 601q and 603q are also variable.

(124) In the second embodiment, the d-axis feedback current i.sub.d and the d-axis current command value i.sub.d* which is served as the parameter variable signal are inputted into the d-axis motor inverse model 602d, and the q-axis feedback current i.sub.d and the q-axis current command value i.sub.d* which is served as the parameter variable signal are inputted into the q-axis motor inverse model 602q. Thereby, the inductance nominal values L.sub.dn and L.sub.qn, become variable depending on the d-axis current command value i.sub.d* and the q-axis current command value i.sub.d*. When the motor current increases, the inductance of the motor is varied by the influence of the magnetic saturation and the like due to the motor which is used. Thus, the inductance nominal values L.sub.dn and L.sub.qn of the d-axis motor inverse model 602d and the q-axis motor inverse model 602q are variable sensitive to the d-axis current command value i.sub.d* and the q-axis current command value i.sub.d*, respectively, and then the accuracy of the motor model and the compensation accuracy by the disturbance estimating observer are improved.

(125) FIGS. 36A and 36B show the configuration examples of the inductance variable control sections in which the inductance nominal values L.sub.dn and L.sub.qn are set to be variable, respectively. The d-axis current command value i.sub.d* and the q-axis current command value i.sub.q* are inputted into absolute value section 602d-1 and 602q-1, and the absolute values |i.sub.d*| and |i.sub.q*| are inputted into current sensitive-inductance calculating sections 602d-2 and 602q-2, respectively. As shown in FIG. 37A, the current sensitive-inductance calculating section 602d-2 outputs the inductance nominal value L.sub.dna which has a moderate decrease characteristic, and as shown in FIG. 37B, the current sensitive-inductance calculating section 602q-2 outputs the inductance nominal value L.sub.qna which has a steep decrease characteristic. The inductance nominal values L.sub.dna and L.sub.qna from the current sensitive-inductance calculating sections 602d-2 and 602q-2 are inputted into limiters 602d-3 and 602q-3, respectively. The inductance nominal values L.sub.dn and L.sub.qn whose upper and lower limit values are limited are outputted from the limiter 602d-3 and 602q-3, respectively.

(126) The characteristics of FIGS. 37A and 37B are presented as one example. The inductance nominal values L.sub.dna and L.sub.qna are different depending on the motor which is used, and can nonlinearly decrease.

(127) In the d-axis disturbance estimating observer 600d, the motor rotational number rpm is inputted into the LPFs 601d and 603d and the d-axis motor inverse model 602d, and the respective cutoff frequencies F.sub.c of the LPFs 601d and 603d and the d-axis motor inverse model 602d are variable in response to the motor rotational number rpm. As well, in the q-axis disturbance estimating observer 600q, the motor rotational number rpm is inputted into the LPFs 601q and 603q and the q-axis motor inverse model 602q, and the respective cutoff frequencies F.sub.c of the LPFs 601q and 603q and the q-axis motor inverse model 602q are variable in response to the motor rotational number rpm. All of the configurations of the cutoff frequency variable control sections whose cutoff frequency F.sub.c is variable are the same and, for example, the configuration of the LPF 601d is shown in FIG. 38. That is, the motor rotational number rpm is inputted into the absolute value section 601d-1 and the absolute value |rpm| is inputted into the rotational number sensitive-frequency calculating section 601d-2. The rotational number sensitive-frequency calculating section 601d-2 has a characteristic shown in FIG. 39 that, for example, the cutoff frequency F.sub.ca linearly increases when the motor rotational number rpm is lower than 4000 [rpm] and is a constant value (1200 [Hz]) when the motor rotational number rpm is equal to or higher than 4000 [rpm]. The cutoff frequency F.sub.ca from the rotational number sensitive-frequency calculating section 601d-2 is inputted into the limiter 601d-3, and the cutoff frequency F.sub.c whose upper and lower limit values are limited is outputted from the limiter 601d-3. As described above, the respective cutoff frequencies are variable in response to the motor rotational number rpm. When the high speed steering in which the followability is important is performed, the respective cutoff frequencies of the LPF 601d and the like are set to higher frequencies and the responsibility is enhanced. When the steering holding in which the grip feeling is important is performed, since the input signal is easily affected by the noise which is included therein, the respective cutoff frequencies are set to lower frequencies and the noise-resistance is enhanced.

(128) The characteristic of FIG. 39 is presented as one example. The respective cutoff frequencies are different depending on the actual vehicle tuning and the system, and can nonlinearly increase. The relationship between the respective time constants T of the LPFs and the motor inverse model and the respective cutoff frequencies F.sub.c is represented by the following Expression 22.

(129) T = 1 2 π F c [ Expression 22 ]

(130) The configuration of the q-axis disturbance estimating observer 600q is almost the same as that of the d-axis disturbance estimating observer 600d. The motor rotational number rpm is inputted into the LPFs 601q and 603q for band-limiting and the q-axis motor inverse model 602q, and the q-axis current command value i.sub.q* is also inputted into the q-axis motor inverse model 602q. The inductance variable control section and the cutoff frequency variable control section which performs variable control are described above.

(131) FIGS. 40A and 40B show simulation results by a bench test apparatus to which the actual vehicle is simulated. In a middle speed steering state, in a case that the handle is steered-forward to the right direction, since the current ripples of the dq-axes current waveforms in FIG. 40B obtained after applying the dq-axes disturbance estimating observer are smaller than those in FIG. 40A obtained before applying the dq-axes disturbance estimating observer, it is confirmed that the torque ripple becomes smaller by using the dq-axes disturbance estimating observer. The torque ripple during steering the handle is also improved. In FIGS. 40A and 40B, only the simulation results of the U-phase are shown. The similar simulation results are obtained in other phases.

(132) In the above second embodiment, the inductance nominal values L.sub.dn and L.sub.qn of the d-axis motor inverse model 602d and the q-axis motor inverse model 602q are variable depending on the d-axis current command value i.sub.d* and the q-axis current command value i.sub.q*, respectively, and the respective cutoff frequencies F.sub.c of the LPFs and the motor inverse models are also variable in response to the motor rotational number rpm. As shown in FIG. 41 corresponding to FIG. 35, only the inductance nominal values L.sub.dn and L.sub.qn of the d-axis motor inverse model 602d and the q-axis motor inverse model 602q may be variable depending on the d-axis current command value i.sub.d* and the q-axis current command value i.sub.q*, respectively (the third embodiment). That is, in the third embodiment, the d-axis current command value i.sub.d* is inputted into the motor inverse model 602d, the q-axis current command value i.sub.q* is inputted into the motor inverse model 602q, and the inductance nominal values L.sub.dn and L.sub.qn are set to be variable. In the d-axis disturbance estimating observer 600dB and the q-axis disturbance estimating observer 600qB of the third embodiment, the respective cutoff frequencies F.sub.c are not variable in response to the motor rotational number rpm.

(133) In the fourth embodiment shown in FIG. 42, the motor rotational number rpm is inputted into the LPFs 601d and 603d, the motor inverse model 602d, the LPFs 601q and 603q and the motor inverse model 602q. The dq-axes current command values i.sub.d* and i.sub.q* are not inputted into the motor inverse model 602d and 602q and the configuration that the inductance nominal values L.sub.dn and L.sub.qn are not variable is adopted. That is, in the fourth embodiment, only the cutoff frequencies of the LPFs 601d and 603d, the motor inverse model 602d, the LPFs 601q and 603q and the motor inverse model 602q are variable.

(134) FIG. 43 shows the fifth embodiment of the present invention. In order to reduce the processing time of the MPU (the MCU) and the time for developing the programs, the shared use of the filters are performed. That is, the LPFs 603d and 603q are removed, the voltages v.sub.db and v.sub.db from the d-axis non-interference model 610d and the q-axis non-interference model 610q are inputted into the adding section 607d and the subtracting section 607q, and the addition result V.sub.dc and the subtraction result V.sub.qc are inputted into the LPFs 601d and 601q, respectively. Thereby, the number of the filters is halved and the processing time can also be shortened.

(135) In the fifth embodiment, the inductance nominal values L.sub.dn and L.sub.qn based on the dq-axes current command values i.sub.d* and i.sub.q* and the cutoff frequencies based on the motor rotational number rpm can be variable.

(136) The column type electric power steering apparatus has been described above. The present invention can also be applied to the rack type electric power steering apparatus.

EXPLANATION OF REFERENCE NUMERALS

(137) 1 handle (steering wheel) 2 column shaft (steering shaft, handle shaft) 10 torque sensor 20, 100 motor 30 control unit (ECU) 35 PI-control section 36, 160 PWM-control section 37, 161 inverter 110 angle detecting section 130, 203 3-phase AC/dq-axes converting section 140 dq-axes non-interference control section 200, 200A-200C dq-axes dead time compensating section 204 3-phase command voltage calculating section 205 voltage detection delay model 207 phase adjusting section 210 midpoint voltage estimating section 220 inverter applying voltage sensitive-gain calculating section 250 compensation amount limiting section 260 inverter applying voltage-sensitive compensation-amount calculating section 270 3-phase current command value model 271 phase current compensation-sign estimating section 300 space vector modulating section 301 2-phase/3-phase converting section 302 third-harmonic superimposition section 600 dq-axes disturbance estimating observer 600d, 600dA, 600dB, 600dC, 600dD d-axis disturbance estimating observer 600q, 600qA, 600qB, 600qC, 600qD q-axis disturbance estimating observer 700 duty calculating section