Motor control unit and electric power steering apparatus equipped with the same
11101756 · 2021-08-24
Assignee
Inventors
Cpc classification
H02P27/12
ELECTRICITY
B62D6/00
PERFORMING OPERATIONS; TRANSPORTING
B62D5/04
PERFORMING OPERATIONS; TRANSPORTING
H02P21/05
ELECTRICITY
H02P21/13
ELECTRICITY
B62D5/0463
PERFORMING OPERATIONS; TRANSPORTING
International classification
H02P21/05
ELECTRICITY
H02P21/13
ELECTRICITY
B62D5/04
PERFORMING OPERATIONS; TRANSPORTING
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)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)
(30)
(31)
(32)
(33)
(34)
(35)
(36)
(37)
(38)
(39)
(40)
(41)
(42)
(43)
(44)
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)
(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)
(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)
(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)
(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
(65)
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
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
(68) As shown in
(69) The detail configuration is shown in
(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
(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
(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)
(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)
(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)
(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
(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
(87) The q-axis steering assist command value i.sub.qref corresponding to the steering assist command value I.sub.ref2 shown in
(88) The detailed configuration of the dead time compensating section 200B is shown in
(89)
(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
(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
(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
(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
(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
(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
(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
(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
(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
(104) The inverter applying voltage/dead time compensation-amount conversion table 262 has a characteristic, for example, as shown in
(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
(106)
(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
(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
(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
(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
(115)
(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
(119)
(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
(121)
(122)
(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)
(126) The characteristics of
(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
(128) The characteristic of
(129)
(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)
(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
(133) In the fourth embodiment shown in
(134)
(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