1. Field of the Invention
The disclosures herein generally relate to a position estimation device, a motor drive control device, a position estimation method and a computer-readable recording medium storing a program for causing a computer to execute a process.
2. Description of the Related Art
Conventionally, in sensor-less motor drive control devices, a variety of position estimation methods have been proposed for estimating rotational positions of rotators of motors without using position sensors.
For example, Japanese Published Patent Application No. 2012-244735 discloses a method of estimating a rotational position by arranging an electric current detector for detecting an electric current of a coil of a motor, inputting an electric voltage applied to a coil terminal and the electric current of the coil into a motor model, thereby calculating magnetic flux, and estimating the rotational position based on the calculated magnetic flux.
It is a general object of at least one embodiment of the present invention to provide a position estimation device, a motor drive control device, a position estimation method and a recording medium that substantially obviate one or more problems caused by the limitations and disadvantages of the related art.
In one embodiment, a position estimation device for estimating a position of a rotator of a motor includes an estimation unit configured to estimate a rotational position of the rotator of the motor using a magnetic flux estimation value of the motor, which is calculated by inputting an electric voltage instruction value to be inputted to the motor and a coil electric current value detected from the motor into a motor model in which the motor is identified; and a derivation unit configured to derive a magnetic flux deviation amount due to a distortion of a magnetic flux waveform of the motor according to the rotational position estimated by the estimation unit. The estimation unit corrects the magnetic flux estimation value based on the magnetic flux deviation amount derived by the derivation unit, modifies the estimated rotational position based on the corrected magnetic flux estimation value, and outputs the modified rotational position.
In another embodiment, a motor drive control device includes a position estimation device, which includes an estimation unit configured to estimate a rotational position of the rotator of the motor using a magnetic flux estimation value of the motor, which is calculated by inputting an electric voltage instruction value to be inputted to the motor and a coil electric current value detected from the motor into a motor model in which the motor is identified; and a derivation unit configured to derive a magnetic flux deviation amount due to a distortion of a magnetic flux waveform of the motor according to the rotational position estimated by the estimation unit. The estimation unit corrects the magnetic flux estimation value based on the magnetic flux deviation amount derived by the derivation unit, modifies the estimated rotational position based on the corrected magnetic flux estimation value, and outputs the modified rotational position. The estimation unit estimates a rotational velocity of the rotator of the motor based on the modified rotational position, and outputs the estimated rotational velocity. The rotational velocity of the rotator of the motor is controlled by feeding back the rotational velocity estimated by the estimation unit.
In yet another embodiment, a position estimation method for estimating a position of a rotator of a motor includes estimating a rotational position of the rotator of the motor using a magnetic flux estimation value of the motor, which is calculated by inputting an electric voltage instruction value to be inputted to the motor and a coil electric current value detected from the motor into a motor model in which the motor is identified; deriving a magnetic flux deviation amount due to a distortion of a magnetic flux waveform of the motor according to the estimated rotational position; and correcting the magnetic flux estimation value based on the derived magnetic flux deviation amount, modifying the estimated rotational position based on the corrected magnetic flux estimation value, and outputting the modified rotational position.
In still another embodiment, a non-transitory computer-readable storage medium stores a program for causing a computer of a position estimation device to execute a process of estimating a position of a rotator of a motor. The process includes estimating a rotational position of the rotator of the motor using a magnetic flux estimation value of the motor, which is calculated by inputting an electric voltage instruction value to be inputted to the motor and a coil electric current value detected from the motor into a motor model in which the motor is identified; deriving a magnetic flux deviation amount due to a distortion of a magnetic flux waveform of the motor according to the estimated rotational position; and correcting the magnetic flux estimation value based on the derived magnetic flux deviation amount, modifying the estimated rotational position based on the corrected magnetic flux estimation value, and outputting the modified rotational position.
According to the embodiment of the present application, a rotational position of a rotator of a motor can be estimated with high accuracy.
Other objects and further features of embodiments will be apparent from the following detailed description when read in conjunction with the accompanying drawings, in which:
In the following, embodiments of the present invention will be described with reference to the accompanying drawings. Meanwhile, upon describing the specification and drawings according to respective embodiments, the same reference numeral is assigned to the component having substantially the same function and configuration, and duplicate explanation will be omitted.
At first, a motor drive control device 100 and a motor 140 driven and controlled by the motor drive control device 100 according to the first embodiment will be explained with reference to
As shown in
The motor 140 driven and controlled by the motor drive control unit 100 is, for example, a brushless motor, which includes a rotator 141, a coil terminal 142 and a coil 143. The coil 143 includes three phases of a U-phase, a V-phase and a W-phase, which have phase differences of 120 degrees from each other and are Y-connected. However, the motor 140 driven and controlled by the motor drive control device 100 is not limited to three phases. Moreover, the motor 140 is not limited to a brushless motor, but may be a stepping motor.
The rotator 141 is arranged at a position which is opposed to the coil 143, and includes a permanent magnet N-poles and S-poles of which are arranged alternately (not shown). The motor 140 rotates by supplying an electric current which is appropriately commutated according to an angle of the rotator 141 from the coil terminal 142 to the coil 143. Meanwhile, in the present embodiment, the permanent magnet of the rotator 141 is assumed to have 2×p poles (a number of pole pairs is p).
The velocity control unit 110 outputs target electric current values Id* and Iq* based on a target velocity value of rotational velocity ωtgt, which is input from outside or is preliminarily set, and an estimation value for the rotational velocity ωm estimated by the position/velocity estimation device 130.
The electric current control unit 111 includes proportional integral control units (not shown) for a d-axis and a q-axis, respectively. The proportional integral control units generate electric voltage instruction values Vd* and Vq*, which are instruction values of electric voltages to be applied to the d-axis and the q-axis, respectively, from the target electric current values Id* and Iq* of the d-axis and the q-axis and detected coil electric current values Id and Iq. That is, the electric voltage instruction values Vd* and Vq* are control signals that control the electric current supplied to the coil 143 in order to drive the rotation of the motor 140.
The rotational coordinate/fixed coordinate conversion unit 112 inputs the electric voltage instruction values Vd* and Vq* outputted from the electric current control unit 111, performs a coordinate conversion from a dq rotational coordinate system, shown in
The rotational coordinate/fixed coordinate conversion unit 112 performs the coordinate conversion from the dq rotational system to the αβ fixed coordinate system by using a coordinate conversion arithmetic expression shown by (formula 1) as follows:
The biaxial/triaxial conversion unit 113 inputs the electric voltage instruction values Vα and Vβ outputted from the rotational coordinate/fixed coordinate conversion unit 112, performs the coordinate conversion from the αβ fixed coordinate system to the UVW coordinate system, as shown in
The biaxial/triaxial conversion unit 113 performs the coordinate conversion from the αβ coordinate system to the UVW coordinate system by using a coordinate conversion arithmetic expression shown by (formula 2) as follows:
The commutation drive unit 114 applies pulse modulated electric voltage to the coil terminals 142 of the motor 140 based on the phase electric voltage instruction values Vu, Vv and Vw.
The electric current detection unit 115 detects, from the coil electric current flowing in the coil 143, coil electric current values Iu, Iv and Iw of coil electric current flowing in the U-phase and the V-phase and the W-phase coils, and outputs them.
The triaxial/biaxial conversion unit 116 inputs the coil electric current values Iu, Iv and Iw outputted from the electric current detection unit 115, performs the coordinated conversion from the UVW coordinate system, as shown in
The fixed coordinate/rotational coordinate conversion unit 117 inputs the coil electric current values Iα and Iβ outputted from the triaxial/biaxial conversion unit 116, performs coordinate conversion from the αβ fixed coordinate system, as shown in
The coil electric current values Iα and Iβ outputted from the fixed coordinate/rotational coordinate conversion unit 117 are inputted to the electric current control unit 111.
The magnetic flux estimation unit 120 inputs the electric voltage instruction values Vα and Vβ outputted from the rotational coordinate/fixed coordinate conversion unit 112, the coil electric current value Iα and Iβ outputted from the triaxial/biaxial conversion unit 116 and estimated value of the rotational velocity ωm of the rotator 141 outputted from the position/velocity estimation device 130. The magnetic flux estimation unit 120 outputs magnetic flux estimation values λα and λβ in the αβ fixed coordinate system based on the inputted values.
The position/velocity estimation device 130 inputs the magnetic flux estimation values λα and λβ outputted from the magnetic flux estimation unit 120, corrects distortion of a waveform of the magnetic flux, and calculates an estimation value of a rotational position θe of the rotator 141 and an estimation value of a rotational velocity ωm. Moreover, the position/velocity estimation device 130 outputs the calculated estimation value of the rotational position θe to the rotational coordinate/fixed coordinate conversion unit 112 and the fixed coordinate/rotational coordinate conversion unit 117. Furthermore, the position/velocity estimation device 130 outputs the calculated estimation value of the rotational velocity ωm to the velocity control unit 110 and the magnetic flux estimation unit 120.
As shown in
The magnetic flux distortion generation unit 134 inputs the estimation value of the rotational position θe calculated based on the magnetic flux estimation values λα and λβ in the position/velocity estimation unit 133, and outputs magnetic flux deviation amounts Δλα(θe) and Δλβ(θe) in response to the inputted estimation value of the rotational position θe.
The position/velocity estimation unit 133 calculates the estimation value of the rotational position θe of the rotator 141 and the estimation value of the rotational velocity ωm based on the magnetic flux estimation value λα
In the following, among the respective components of the above-described motor drive control device 100, the commutation drive unit 114, the electric current detection unit 115, the magnetic flux estimation unit 120 and the position/velocity estimation device 130 will be explained in more detail.
First, details of the commutation drive unit 114 will be explained with reference to
As shown in
The drive circuit 320 comprises an upper arm 321 and a lower arm 322 which are connected to each other in three phases. In the drive circuit 320, ON/OFF of switching elements, with which the upper arm 321 and the lower arm 322 are provided, are controlled by the gate signals (UH, VH, WH, UL, VL and WL). The drive circuit 320 drives the rotation of the rotor 141 by applying the electric voltage, for which the pulse width modulation is performed, to the coil terminals 142 and supplying an electric current to the coil 143.
In
The PWM unit 310 assumes a central value between the power supply voltage Vcc and ground GND in the carrier wave Vc to be virtual zero, compares the electric voltage instruction value Vu to the carrier wave Vc in magnitude, and generates a PWM signal Uon, shown in the second step. Meanwhile, the electric voltage instruction value Vu changes its value at the beginning of the PWM cycle.
Next, the PWM unit 310 generates a gate signal UH of a switching element 401 of the upper arm 321, which is a signal delayed from the PWM signal Uon by td, as shown in the third and fourth steps. Moreover, the PWM unit 310 generates a gate signal UL of a switching element of the lower arm 322, which is a signal obtained by inverting the PWM signal Uon and by delaying a rising edge (a trailing edge in Uon) by twice the period td. Meanwhile, the period td is a short circuit prevention section (dead time) provided in order to prevent short circuit between the switching elements of the upper arm 321 and of the lower arm 322.
Moreover, the PWM unit 310 outputs a trigger trg, which is a pulse signal, to the electric current detection unit 115 at timing delayed from a center of the PWM cycle by the period td. This delay is adjusted to the generation of the gate signals (UH and UL), which are delayed from the carrier wave Vc by the period td.
Next, details of the electric current detection unit 115 will be explained with reference to
The electric current detection unit 115 includes a shunt resister 601U, a difference amplifier 602U and an AD conversion unit 603U. The shunt resister 601U is a resister inserted on a coil electric current path between the coil terminal 142 and the commutation drive unit 114.
The difference amplifier 602U has an inverting input terminal and non-inverting input terminal connected to respective ends of the shunt resister 601U. A voltage drop generated by the shunt resister 601U proportional to a magnitude of the electric current is detected, amplified at a predetermined magnification and outputted. In the present embodiment, the output from the AD conversion unit 603U is referred to as a coil electric current value Iu.
The predetermined magnification is set so that an output from the differential amplifier 602U is within a full scale range of an input of the AD conversion unit 603U, based on amplitude of the coil electric current assumed from an operation condition of the motor 140 and on a resistance value of the shunt resister 601U.
The AD conversion unit 603U converts a value sampled at each cycle from the outputs of the difference amplifier 602U into a digital value in which the smallest unit is a predetermined quantization resolution, and outputs it as a coil electric current value. Meanwhile, the quantization resolution [V/LSB] is a value obtained by dividing an electric voltage width [V] of an input full scale, which is a hardware specification of the AD conversion unit 603U, by a data resolution [LSB].
Next, details of the magnetic flux estimation unit 120 will be explained with reference to
The motor model 701 is a model which identifies the motor 140, and outputs electric current estimation values IαO and IβO in the αβ fixed coordinate system and magnetic flux estimation values λα and λβ based on the electric voltage instruction value Vα and Vβ, the estimation value ωm for the rotational velocity, and deviations e1, e2, e3 and e4.
The motor model 701 calculates the electric current estimation values IαO and IβO in the αβ fixed coordinate system and the magnetic flux estimation values λα and λβ by using the following formula (formula 5). Meanwhile, R represents a winding resistance value of the coil 143 and L represents an inductance of the coil 143.
The subtraction unit 711 outputs a result obtained by subtracting the coil electric current value Iα from the electric current estimation value IαO as the electric current deviation eα. Similarly, the subtraction unit 712 outputs a result obtained by subtracting the coil electric current value Iβ from the electric current estimation value IαO as the electric current deviation eβ.
The gain calculation unit 703 outputs gains g1, g2, g3 and g4 based on the estimation value ωm for the rotational velocity outputted from the position/velocity estimation device 130 by using the following formula (formula 6). Meanwhile, k is an arbitrary real number greater than 1.
The deviation amplifier 702 amplifies the electric current deviations eα and eβ by the gains g1, g2, g3 and g4, and outputs deviations e1, e2, e3 and e4. Specifically, the deviation amplifier 702 calculates the deviations e1, e2, e3 and e4 by using the following formula (formula 7), and outputs them to the motor model 701.
Next, details of the position/velocity estimation device 130 will be explained with reference to
As shown in
The position estimation unit 801 calculates the estimation value of the rotational position θe of the rotator 141 based on the magnetic flux estimation values λα
Meanwhile, the magnetic flux estimation values λα
The differentiator 802 differentiates the estimation value θe of the rotational position of the rotator 141, which is outputted from the position estimation unit 801. The amplifier 803 calculates the estimation value of the rotational velocity ωm by multiplying the differentiated estimation value θe by 1/p. Meanwhile, p represents a number of pole pairs of the motor 140.
Next, the magnetic flux distortion generation unit 134 will be explained.
Furthermore, in the magnetic flux distortion generation unit 134, upon the estimation value of the rotational position θe being inputted by the position/velocity estimation unit 133, the database 900 stored in the built-in storage element is referred to. According to the above-described operation, in the magnetic flux distortion generation unit 134 magnetic flux deviation amounts Δλα(θe) and Δλβ(θe) associated with the inputted estimation value of the rotational position θe can be outputted.
Subsequently, a flow of position/velocity estimation processing executed by closely-linked operations of the respective components of the position/velocity estimation device 130 will be explained with reference to
At first, the position/velocity estimation unit 133 assigns a value “1” to a counter n (step S1001). The counter n counts a number of outputs of the magnetic flux estimation values λα and λβ from the magnetic flux estimation unit 120, and a number of calculations of the estimation value of the rotational position θe and the estimation value of the rotational velocity ωm in the position/velocity estimation unit 133.
The position/velocity estimation unit 133 assigns a value “0” to an initial value of the estimation value of the rotational position θe
The subtraction units 131 and 132 acquire the magnetic flux estimation values λα
In the magnetic flux distortion generation unit 134, magnetic flux deviation amount Δλα(θe
In the subtraction units 131 and 132, the magnetic flux deviation amounts Δλα(θe
The position/velocity estimation unit 133 calculates the estimation value of the rotational position θe
The position/velocity estimation unit 133 calculates the estimation value of the rotational velocity ωm
As is clear from the above explanations, in the motor drive control device according to the present embodiment, a magnetic flux deviation amount due to distortion of a magnetic flux waveform is subtracted from a magnetic flux estimation value upon the position/velocity estimation device calculating an estimation value of the rotational position of a rotator based on a magnetic flux estimation value outputted from a magnetic flux estimation unit.
Furthermore, in the motor drive control device according to the present embodiment, a magnetic flux deviation amount associated with a calculation result of an estimation value of rotational position is derived by preliminarily measuring magnetic flux deviation amounts due to distortion of a magnetic flux waveform at respective rotational positions of the rotator and by storing them in a storage element of the position/velocity estimation device as a database.
Actual motors include manufacturing errors or the like. Even if a rotator including permanent magnets is rotated at a constant velocity, a change of interlinkage magnetic flux of a rotator winding (magnetic flux waveform) does not take a form of an ideal sine waveform, but a distorted waveform.
For this reason, in the case of the method of calculating magnetic flux by using the motor model and estimating a rotational position based on the calculated magnetic flux, as disclosed in Japanese Published Patent Application No. 2012-244735, an error occurs in an estimated value.
According to the above-described configurations of the present embodiment, even in a case where the magnetic flux waveform of the motor during rotation includes distortion, a rotational position of the rotator can be estimated with high accuracy. Moreover, a rotational velocity which is calculated based on the rotational position of the rotator can be estimated with high accuracy.
In the above-described first embodiment, magnetic flux deviation amounts at respective rotational positions of the rotator are measured preliminarily, and are stored in the storage element as a database. The present invention is not limited to the above configuration. For example, the magnetic flux deviation amount may be approximated as a harmonic component of an ideal magnetic flux waveform, and a high-order expression representing the harmonic component of magnetic flux waveform may be stored in the storage element.
By using a high-order expression representing the harmonic components shown in
In the above-described first and second embodiments, a magnetic flux deviation amount outputted from the magnetic flux distortion generation unit 134 is used for calculation of estimation values of rotational position and rotational velocity of the rotator 141. However, the present invention is not limited to them. For example, an induced voltage deviation amount may be calculated based on distortion of induced voltage and may be added to an electric voltage instruction value.
The induced voltage distortion generation unit 1201 acquires magnetic flux deviation amounts Δλα(θe) and Δλβ(θe) and performs differential process for the acquired magnetic flux deviation amounts Δλα(θe) and Δλβ(θe), and thereby calculates respective induced voltage deviation amounts ΔVα and ΔVβ.
Returning to the explanation for
In this way, in the motor drive control device 1200 according to the present embodiment, in addition to the configuration of the above-described first or second embodiment, an induced voltage deviation amount based on distortion of induced electric voltage is calculated based on a calculated magnetic flux deviation amount, and is added to an electric voltage instruction value.
According to the above-described configuration, even in a case where a magnetic flux waveform of a motor during rotation includes distortion, a rotational position and a rotational velocity of a rotator can be estimated with high accuracy. Additionally, torque variation, which occurs under influence of distortion of induced electric voltage, can be suppressed.
In the above-described first to third embodiments, the magnetic flux estimation unit 120 is arranged in the motor drive control device, and magnetic flux estimation values λα and λβ outputted from the magnetic flux estimation unit 120 are corrected based on a magnetic flux deviation amount. However, the present invention is not limited to this.
For example, an induced voltage estimation unit may be arranged instead of the magnetic flux estimation unit 120, and induced voltage estimation values IVα and IVβ outputted from the induced voltage estimation unit may be corrected based on the include voltage deviation amounts ΔIVα(θe) and ΔIVβ(θe).
In general, in the case where magnetic flux waveform includes distortion, induced voltage also has a waveform which is distorted from an ideal sine waveform. For this reason, for example, by measuring an induced voltage deviation amount (difference between ideal induced voltage waveform and actual induced voltage waveform) at each rotational position of the rotator 141, and storing the deviation amount in a storage element as database, induced voltage deviation amount can be derived.
Moreover, in the above-described first to third embodiments, an estimation value of rotational velocity is calculated based on an estimation value of rotational position so as to feed back to the velocity control unit. However, in the case of a motor drive control device which does not perform velocity feed back, it is not necessary to calculate case, the position/velocity estimation unit 133 only calculates an estimation value of rotational position, and the position/velocity estimation device 130 functions as a position estimation device.
Further, the present invention is not limited to these embodiments, but various variations and modifications may be made without departing from the scope of the present invention.
The present application is based on and claims the benefit of priority of Japanese Priority Application No. 2014-175129 filed on Aug. 29, 2014, the entire contents of which are hereby incorporated by reference.
Number | Date | Country | Kind |
---|---|---|---|
2014-175129 | Aug 2014 | JP | national |