MOTOR CONTROL METHOD AND MOTOR CONTROLLER

Information

  • Patent Application
  • 20080069547
  • Publication Number
    20080069547
  • Date Filed
    September 20, 2007
    17 years ago
  • Date Published
    March 20, 2008
    16 years ago
Abstract
The present invention provides a motor control method and a motor controller. In the motor control method and the motor controller according to the present invention, even when production tolerance of a motor or a control unit (ECU) or the change of an environment arises, abnormal sound of the motor due to the saturation of a motor applied voltage (Duty 100%) is not generated and a maximum output of the motor can be obtained and they may be applied to an electric power steering device. In a motor control method for controlling a motor by a motor driving voltage command value of a PWM, the motor control method includes the steps of calculating a degree of saturation of a motor driving voltage, and correcting a motor current command limit value based on the degree of saturation of the driving voltage.
Description

BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram of a current command limit value signal calculation part showing a structural example of the present invention;



FIG. 2 is a diagram for explaining the present invention;



FIG. 3 is a diagram for explaining the present invention;



FIG. 4 is a flowchart showing an operational example of the present invention;



FIG. 5 is a diagram showing a schematic structure of an ordinary electric power steering device;



FIG. 6 is a block diagram showing a structural example of a control unit;



FIG. 7 is a block diagram showing a usual current command limit value signal calculation part; and



FIG. 8 is a block diagram showing one example of a usual motor control system.





DESCRIPTION OF EXEMPLARY EMBODIMENTS

A motor control method and a motor controller according to the present invention calculate a degree of saturation of a motor driving voltage (or a degree of tolerance of a driving voltage) controlled by a PWM to correct a motor current command limit value based on the degree of saturation of the driving voltage. Thus, the occurrence of an abnormal sound of a motor due to the saturation of a motor applied voltage is prevented and a phenomenon that the output of the motor is lowered by excessively limiting the command value is also prevented with respect to the change of parameters generated due to a production tolerance of the motor or a control unit (ECU) or the change of an environment.


The present invention adds a current command limit value correcting function with respect to the current command limit value signal calculation part 40 shown in FIG. 7. Even when a production tolerance or an environmental change arises, the saturation of duty is not caused and the occurrence of a torque tipple or the abnormal sound of the motor can be suppressed by the current command limit value correcting function.


The setup of the present invention is shown in FIG. 1. A current command limit value correcting part is added to the current command limit value signal calculation part 40 shown in FIG. 7. Parts the same as those of FIG. 7 are designated by the same reference numerals and explanations of them are omitted.


The current command limit value correcting part of the present invention includes a maximum value obtaining calculation part 50 for obtaining a maximum value (an envelope) of duties Duty_a, Duty_b and Duty_c as driving voltages from a PWM control part, a holder part 51 for inputting a maximum value Duty-m obtained in the maximum value obtaining calculation part 50 and a mechanical angle cycle pulse signal MP from a rotation sensor to calculate and hold (input value−Duty 100%), an integrating holder part 52 for integrating a hold value Dduty-Max from the holder part 51 by an output update signal RN, and a multiplying part 53 for multiplying a correction signal CR from the integrating holder part 52 by a supply voltage Vrg.


To the holder part 51, the maximum value Duty_m is inputted from the maximum value obtaining calculation part 50 to calculate the hold value Dduty-Max (=an input value−duty of 100%), that is, Dduty-Max (=Duty_m−Duty 100%) at a timing that the mechanical angle cycle pulse signal MP is inputted. The hold value Dduty-Max calculated in the holder part 51 is inputted to the integrating holder part 52 together with the output update signal RN. The integrating holder part 52 carries out a calculation only when the output update signal RN becomes a pulse type signal. In other cases than the above-described case, the integrating holder part 52 does not carry out the calculation and only holds the calculated result of the last time. When the integrating holder part 52 carries out the calculation, the integrating holder part 52 adds the calculated result of the last time of the integrating holder part Dduty-hold(i) is added to the inputted hold value Dduty-Max to output an added result CR=(Dduty-hold(i)+Dduty-Max). The added result CR is inputted to the multiplying part 53 and multiplied by the supply voltage Vrg. A multiplied result is added to the supply voltage Vrg and subtracted from a base voltage VRbas in an adding part 41.


When set parameters of a system and environmental conditions are the same as designed values, a current command limit value calculation map and a corrected rotation speed calculation map calculate a current command limit value Ireflim in accordance with a motor rotation speed ω1 and the supply voltage Vrg. The current command limit value Ireflim is such a value as to have just the Duty 100%. Namely, whenever the motor rotation speed ω1 and the supply voltage Vrg are understood, the current command limit value Ireflim having the Duty 100% can be generated by the current command limit value calculation map and the corrected rotation speed calculation map obtained in an off-line.


On the other hand, when the parameters of the system are different from the designed values, the current command value having the duty 100% cannot be generated in accordance with the above-described calculation. Thus, a part whose duty does not reach 100% (a degree of saturation or a degree of tolerance) is calculated to convert to a part corresponding to the change of the supply voltage and further calculate the current command limit value based on the corrected rotation speed calculation map. Since the saturated part of the duty corresponds to the change of the supply voltage, only the corrected rotation speed calculation map may be used. The calculated current command value Iref is such a value to have the duty of 100%. The reason will be described below.


When a terminal voltage of a d/q axis motor under a vector control is calculated in accordance with design conditions, Eq. (1) is given as described below.









{





V
d

=



i
d



(


R
m

+

R
ac

+

R
ac_me


)


+


L
m

·




i
d





θ
e



·

ω
e


+


L
m



ω
e



i
q


+


n
1000

·

e
d










V
q

=



i
q



(


R
m

+

R
ac

+

R
ac_me


)


+


L
m

·




i
q





θ
e



·

ω
e


+


L
m



ω
e



i
d


+


n
1000

·

e
q












(
1
)







where


Vd and Vq are terminal voltages of the d/q axis motor,
Id and Iq are d/q axis motor currents,
Rm, Rac and Racme are the internal resistances of the motor and the control unit,
Lm is motor inductance,

ed and eq are d/q axis back electromotive voltages at motor rotation speed 1000 [rpm],


n is motor rotation speed,


ωe is motor angular velocity, and


θe is motor electric angle.


There is unevenness in resistance. When the resistance changes depending on temperature, as voltage equation, Eq. (2) is given as described below.









{





V

d





1


=



i
d



(


R
m

+

R
ac

+

R
ac_me

+

δ





R


)


+


L
m

·




i
d





θ
e



·

ω
e


+


L
m



ω
e



i
q


+


n
1000

·

e
d










V

q





1


=



i
q



(


R
m

+

R
ac

+

R
ac_me

+

δ





R


)


+


L
m

·




i
q





θ
e



·

ω
e


+


L
m



ω
e



i
d


+


n
1000

·

e
q











(
2
)







where δR is the change of the resistance of the motor and the control unit.


Assuming that the duty is set to 100% in Eq. (1), the degree of saturation (the degree of tolerance) of the duty to the Eq. (2) is recognize in accordance with below-described calculation due to the change of the resistance.









{





V
d

=


i
d


δ





R








V
q

=


i
q


δ





R









(
3
)







where δVd and δVq are the change values of the terminal voltage of the motor d/q axis.


The degree of saturation (the degree of tolerance) made to be clear by the above-described Eq. (3) is more specifically investigated. When a voltage variation δVun between a motor terminal and a neutral point is given by ⅔ phase converting equation, Eq. (4) is given as described below.









{





δ






V
un


=



δ






V
d


cos






θ
e


+

δ






V
q


sin






θ
e



=

δ






R


(



i
d


cos






θ
e


+


i
d


sin






θ
e



)











δ






V
vn


=



δ






V
d



cos


(


θ
e

+
120

)



+

δ






V
q



sin


(


θ
e

+
120

)




=

δ






R


(



i
d



cos


(


θ
e

+
120

)



+


i
d



sin


(


θ
e

+
120

)




)











δ






V
wn


=



δ






V
d



cos


(


θ
e

+
240

)



+

δ






V
q



sin


(


θ
e

+
240

)




=

δ






R


(



i
d



cos


(


θ
e

+
240

)



+


i
d



sin


(


θ
e

+
240

)




)












(
5
)







where δVun, δVvn and δVwn are respectively change values of voltage between terminals and neutral points of UVW phases.


Further, the variation of a voltage between a neutral point and a ground is represented by Eq. (5) as described below.













δ






V
ng


=



0.5


[


max


(


δ






V
un


,

δ






V
vn


,

δ






V
wn



)


+

min


(


δ






V
un


,

δ






V
vn


,

δ






V
wn



)



]








=



δ






nf


(


i
d

,

i
q

,

e
d

,

e
q

,

θ
e


)










(
5
)







The variation of voltage δVug between the motor terminal and the ground indicates the sum of the variation of the voltage δVun between the motor terminal and the neutral point and the variation of the voltage δVng between the neutral point and the ground and is represented by Eq. (6) as described below.













δ






V
ug


=




δ






V
un


+

δ






V
ng









=




δ





R






(



i
d


cos






θ
e


+


i
q


sin






θ
e



)


+

δ





Rf






(


i
d

,

i
q

,

e
d

,

e
q

,

θ
e


)









=




δ





R






(



i
d


cos






θ
e


+


i
q


sin






θ
e



)


+

f


(


i
d

,

i
q

,

e
d

,

e
q

,

θ
e


)










(
6
)







When the duty is 100%, the motor terminal voltage is the same as the supply voltage Vrg. Thus, the variation of the motor terminal voltage is the same as the variation of the supply voltage Vrg. Then, the voltage variation δVr of the supply voltage Vrg is calculated by below-described Eq. (7).





δVr=δVug=δR(id cos θe+iq sin θe)+f(id,iq,ed,eqe))  (7)


Further, since the motor terminal voltage is proportional to the duty, the voltage variation δVr shows the degree of saturation of the duty. As can be understood from the Eq. (7), the degree of saturation of the duty generated due to the variation of resistance can be represented by the voltage variation δVr of voltage Vr.


Further, a corrected rotation speed calculation part to be used has a function for setting the duty to 100% with respect to the variation of the Vr voltage as shown in below-described Eq. (8).









{





δ






V
d


=




L
m

·




i
d





θ
e



·
δ







ω
e


+


L
m



δω
e



i
q


+



δ





n

1000

·

e
d










δ






V
q


=



L
m

·




i
q





θ
e



·

δω
e


+


L
m



δω
e



i
d


+



δ





n

1000

·

e
q











(
8
)







When voltage variation δVun between the motor terminal and the neutral point is given by the ⅔ phase converting equation, below-described Eq. (9) is given by the above-described Eq. (4).









{





δ






V
un


=



δ






V
d


cos






θ
e


+

δ






V
q


sin






θ
e



=

δ





n


{



[




2

π






L
m


P

60



(





i
d





θ
e



+

i
q


)


+


1
1000



e
d



]


cos






θ
e


+


[




2

π






L
m


P

60



(





i
q





θ
e



+

i
d


)


+


1
1000



e
q



]


sin






θ
e



}










δ






V
vn


=



δ






V
d



cos


(


θ
e

+
120

)



+

δ






V
q



sin


(


θ
e

+
120

)




=

δ





n


{



[




2

π






L
m


P

60



(





i
d





θ
e



+

i
q


)


+


1
1000



e
d



]



cos


(


θ
e

+
120

)



+


[




2

π






L
m


P

60



(





i
q





θ
e



+

i
d


)


+


1
1000



e
q



]



sin


(


θ
e

+
120

)




}










δ






V
wn


=



δ






V
d



cos


(


θ
e

+
240

)



+

δ






V
q



sin


(


θ
e

+
240

)




=

δ





n


{



[




2

π






L
m


P

60



(





i
d





θ
e



+

i
q


)


+


1
1000



e
d



]



cos


(


θ
e

+
240

)



+


[




2

π






L
m


P

60



(





i
q





θ
e



+

i
d


)


+


1
1000



e
q



]



sin


(


θ
e

+
240

)




}











(
9
)







Further, the variation of voltage between the neutral point and the ground is represented by below-described Eq. (10)













δ






V
ng


=



0.5


[


max


(


δ






V
un


,

δ






V
vn


,

δ






V
wn



)


+

min


(


δ






V
un


,

δ






V
vn


,

δ






V
wn



)



]








=




δ
n



F


(


i
d

,

i
q

,

e
d

,

e
q

,

θ
e


)










(
10
)







The variation δVr of the Vr voltage is represented by below-described Eq. (11).













σ






V
r


=



δ






V
ug








=




δ






V
un


+

δ






V
ng









=



δ





n


{






[




2

π






L
m


P

60



(





i
d





θ
e



+

i
q


)


+


1
1000



e
d



]


cos






θ
e


+








[




2

π






L
m


P

60



(





i
q





θ
e



+

i
d


)


+


1
1000



e
q



]


sin






θ
e


+






F


(


i
d

,

i
q

,

e
d

,

e
q

,

θ
e


)





}









(
11
)







It is understood from the above-described Eq. (11) that the values of the corrected rotation speed map are not related to the resistance values. That is, the equation indicates that the change of internal resistance values due to the change of an environment is not related to the parameters of the corrected rotation speed map. Therefore, even when the resistance changes, the characteristics of the corrected rotation speed calculation map do not change (conclusion 1). Further, The variation δn of the motor rotation speed to be caused by the variation of the supply voltage Vrg is a function of the supply voltage Vrg. Thus, the variation δVr of the voltage can be absorbed by adjusting the variation δn of the motor rotation speed (conclusion 2). As described above, when only the resistance of the motor or the internal resistance of the control unit changes, the characteristics of the corrected rotation speed calculation map do not change according to the conclusion 1. Thus, the characteristics of the corrected rotation speed calculation map are treated in the same manner as that before the resistance changes. Further, the saturation (the tolerance) of the duty generated due to the change of the motor resistance and the internal resistance of the control unit is finally reflected in the variation δVr of the voltage as shown in the Eq. (7). Further, according to the conclusion 2, the saturation (the tolerance) of the duty can be removed by adjusting the variation δn of the motor rotation speed based on Eq. (11).



FIGS. 2 and 3 show the characteristics of the motor rotation speed with respect to the motor current command value. The characteristic (a) in FIG. 2 shows the current command value Ireflim obtained in accordance with the design conditions. The characteristic (b) shows an ideal current command value Ireflim obtained when the duty is 100% after the resistance changes. The characteristic (d) in FIG. 3 shows a corrected rotation speed calculation characteristic when the supply voltage Vr varies by 2 [V]. Further, the characteristic (c) in FIG. 2 shows a characteristic obtained by synthesizing the characteristic (a) in FIG. 2 with the characteristic (d) in FIG. 3 with respect to the degree of saturation of the duty. The synthesized characteristic (c) completely corresponds to the characteristic (b) in FIG. 2. That is, even when the change of the voltage arises, if the degree of the saturation of the duty is understood in accordance with the characteristic (a) and the characteristic (d), the current command limit value can be corrected.


When the resistance changes, in calculation of a part that the duty is not 100% (the degree of saturation or the degree of tolerance), a maximum error between the duty applied to each phase and the duty 100% is taken so that the degree of saturation or the degree of tolerance can be understood. To take a stable value, the maximum error within one rotation of the motor may be employed.


The setup of FIG. 1 shows an example of driving a three-phase motor. The driving duties Duty_a, Duty_b and Duty_of the three-phase motor are inputted to the maximum value obtaining calculation part 50 to obtain the maximum value Duty-m as the envelope of the three-phase duties. The maximum value Duty_m is inputted to the holder part 51. The difference Dduty-Max relative to the Duty 100% is outputted for each rotation of the motor based on the mechanical angle cycle pulse signal MP and updated by the output update signal RN in the integrating holder 51 in accordance with Table 1.












TABLE 1





Limited state of





current command


State


limit value
State of Duty
Notes of state
number







Operation
Ddutymax > 0 (Duty saturated)
Current command value is insufficiently limited
(a)



Ddutymax ≦ 0 (Duty non-saturated)
Current command value is excessively limited (with margin)
(b)


Non-operation
Ddutymax > 0 (Duty saturated)
Current command value is insufficiently limited
(c)



Ddutymax ≦ 0 (Duty non-saturated)
Ordinary state
(d)









The limited state of the current command limit value in Table 1 shows whether the calculated value of the current command limit value is smaller (operation) or not (non-operation) smaller than the current command value outputted from a current command value calculation part. As apparent from the Table 1, in the states (a), (b) and (c) except the state (d), the current command limit values need to be corrected. When the states (a), (b) and (c) continue, the current command limit values are periodically corrected. The above-described current command limit value correcting operation is summarized as described below.


When the state shifts to the states (a) to (c) except the state (d), or a cyclic signal is inputted, a current command limit value correcting and update signal operation is carried out. In the case of a state transition (excluding the state (d)), an update signal operation is always carried out. At the same time, the cyclic signal is reset. On the other hand, when the state shifts to the state (d), in the case of the state (d), and before a signal of a second rotation of the motor comes after the state shifts to the states (a)-(c), the update signal operation is inhibited. The update signal operation is inhibited before the signal of the second rotation of the motor comes after the state shifts to the states (a), (b) and (c) in order to obtain a precise duty error.


Then, an operation of the present invention will be described by referring to a flowchart of FIG. 4. Firstly, the calculated current command limit value (Ireflim) is compared with the current command value (Iref) calculated in accordance with a torque (step S10). When the current command limit value is smaller than the current command value, the current command limit value operates (step S10) to shift to a step S11. In the step S11, the driving duty value (Duty_m) detected from the maximum value obtaining calculation part 50 is inputted to the holder part 51 to calculate the difference (Dduty-Max) (the variation) with respect to the voltage command limit value. When the difference Dduty-Max is more than 0, the procedure shifts to step S12 to decide that the current command value is insufficiently limited (the state (a)) and output the update signal to the integrating holder part 52 (step S16). Then, in the step S11, when the difference Dduty-Max is 0 or less, the procedure shifts to step S13 to decide that the current command value is excessively limited (the state (b)) and output the output update signal RN to the integrating holder part 52 (step S16). Further, in the step S10, when the current command limit value is the current command value or more, the current command limit value does not operate to shift step S14. In the step S14, the difference (Dduty-Max) between the driving duty value (Duty_m) detected from the maximum value obtaining calculation part 50 and the voltage command limit value is calculated. When the difference Dduty-Max is more than 0, the procedure shifts to step S15 to decide that the current command value is insufficiently limited (the state (c)) and output the output update signal RN to the integrating holder part 52 (step S16). Then, in the step S14, when the difference Dduty-Max is 0 or less, the procedure shifts to step S17 to decide that the state is an ordinary state (the state (d)) and stop the output update signal RN (step S18).


Since the motor control method and the motor controller of the present invention control the torque (current), the present invention can be applied to a motor control of the electric power steering device of the vehicle.


While there has been described in connection with the exemplary embodiments of the present invention, it will be obvious to those skilled in the art that various changes and modification may be made therein without departing from the present invention. It is aimed, therefore, to cover in the appended claim all such changes and modifications as fall within the true spirit and scope of the present invention.

Claims
  • 1. A motor control method for controlling a motor by a motor driving voltage command value of a PWM, the motor control method comprising: calculating a degree of saturation of a motor driving voltage; andcorrecting a motor current command limit value based on the degree of saturation of the driving voltage.
  • 2. The motor control method according to claim 1, wherein the degree of saturation of the driving voltage is calculated based on a deviation between the motor driving voltage command value and the motor voltage command limit value.
  • 3. The motor control method according to claim 1, wherein the degree of saturation of the driving voltage is calculated based on a deviation between the motor driving voltage command value and a supply voltage.
  • 4. The motor control method according to claim 2, wherein the degree of saturation of the driving voltage is calculated based on the integrated value of the deviation between rotating angles of the motor.
  • 5. The motor control method according to claim 2, wherein the degree of saturation of the driving voltage is calculated based on the average value of the deviation between the rotating angles of the motor.
  • 6. The motor control method according to claim 2, wherein the degree of saturation of the driving voltage is calculated based on the integrated value of the deviation every prescribed time.
  • 7. The motor control method according to claim 2, wherein the degree of saturation of the driving voltage is calculated based on the average value of the deviation every prescribed time.
  • 8. A motor controller for controlling a motor by a motor driving voltage command value of a PWM, the motor controller comprising: a calculation unit that calculates a degree of saturation of a motor driving voltage; anda correcting unit that corrects a motor current command limit value based on the degree of saturation of the driving voltage.
  • 9. The motor controller according to claim 8, wherein the calculation unit calculates the degree of saturation of the driving voltage based on a deviation between the motor driving voltage command value and the motor voltage command limit value.
  • 10. The motor controller according to claim 8, wherein the calculation unit calculates the degree of saturation of the driving voltage based on a deviation between the motor driving voltage command value and a supply voltage.
  • 11. The motor controller according to claim 9, wherein the calculation unit calculates the degree of saturation of the driving voltage based on the integrated value of the deviation between rotating angles of the motor.
  • 12. The motor controller according to claim 9, wherein the calculation unit calculates the degree of saturation of the driving voltage based on the average value of the deviation between the rotating angles of the motor.
  • 13. The motor controller according to claim 9, wherein the calculation unit calculates the degree of saturation of the driving voltage based on the integrated value of the deviation every prescribed time.
  • 14. The motor controller according to claim 9, wherein the degree of saturation of the driving voltage is calculated based on the average value of the deviation every prescribed time.
Priority Claims (1)
Number Date Country Kind
2006-253789 Sep 2006 JP national