Patent Description:
Electrical machines are widely used on the industry either for factory automation or transportation. Many control techniques for machines as Permanent Magnet Synchronous Machines (PMSM), Synchronous Reluctance Machines (SyncRM), Wounded Rotor Synchronous Machines (WRSM) often use a rotary encoder for obtaining the speed and the position of the machine as feedback.

The demand for low-cost and robust motor drives has increased the development of sensorless control. Without those sensors the machine drives become less expensive and more robust to dusty and harsh environments.

Many techniques for sensorless control are proposed. These techniques are based on the estimation of the position and the speed of the machine but one aspect that is often neglected on the sensorless controller is the strategy for choosing the current references of the FOC (Field-Oriented Control) controller from a given desired torque reference. In CVC controllers (Current Vector Control), the reference quantities are the current levels in dq axis, in the rotor reference frame, which position has to be estimated. In DFVC (Direct Flux Vector Control), the reference quantities are the norm of flux and one current component. The latter technique is attracting, as it also applies to the stator flux reference frame, which needs no position estimate.

Best current trajectory is the MTPA (Maximum Torque per Ampere), which chooses the combination of references in order to maximise the torque for a given current level (and given copper losses). In the bibliography, different techniques to track the MTPA are proposed using one or more Lookup Tables (LUTs) or injection based. With lookup tables, the torque is measured as function of Idq current in order to derive the ideal MTPA trajectory. This trajectory can be stored and used dynamically with varying torque levels. However specific measurement is needed prior to operating MTPA mode. This is the most common way to track MTPA trajectory.

These methods have serious limitations. It is generally difficult for a General-Purpose Inverter (GPI) to establish a lookup table of MTPA for an unknown motor. The alternative to the direct measurement of the MTPA LUTs is the manipulation of the flux linkage or inductance map LUTs, which again requires dedicated tests or a self-commissioning session. For CVC controllers, MTPA expression requires the knowledge of incremental and chord inductances in both d and q axis. Generally, MTPA control tends to require the knowledge of inductance LUTs. Uncertainty in inductances results in position error and risk of instability and deviation from MTPA, which causes misuse of energy besides the possible loss of control.

Techniques for tracking the MTPA and MTPV for DFVC controller are proposed in the bibliography. However, they rely on measured inductances LUT, for the MTPA tracking.

Injection methods to track the MTPA online were already proposed in the bibliography, but they are commonly used for CVC controllers and not applicable for DFVC controllers.

The patent application <CIT> discloses a method for controlling a permanent magnet (PM) synchronous motor in an ESP application.

The paper of <NPL> discloses direct flux vector control of synchronous motor drives.

The present invention aims to provide a sensorless control method and device using DFVC control technique and reaches MTPA optimal operation conditions without any prior information on the motor to be controlled.

To that end, the present invention concerns a method for controlling a motor using a maximum torque per ampere field module and a direct flux vector control module, characterized in that the method comprises the steps of:.

The present invention concerns also a device for controlling a motor using a maximum torque per ampere field module and a direct flux vector control module, characterized in that the device comprises:.

Thus, the motor is controlled on the MTPA trajectory without the need of any look-up-tables. LUT-less MTPA is applied to Direct Flux Vector control. The overall stability of sensorless control is improved, as the rotor position needs not be estimated, and because MTPA criterion is met in any saturation conditions.

According to a particular feature, the means for determining the high frequency injection voltage vαβinj comprises:.

Thus, The HF (high frequency) injection voltage is set so as to drive the HF variation of current modulus to zero. The HF response of the machine to the HF injection voltage is then orthogonal to the measured fundamental current vector.

According to a particular feature, the maximum torque per ampere module comprises:.

Thus, the HF content of estimated flux that is perpendicular to the current can get estimated. The proportional integral produces the reference flux which can drive this HF content to zero. In absence of HF variations of current amplitude, the resulting reference flux necessarily fulfils the MTPA criterion.

According to a particular feature, the direct flux vector control module comprises:.

Thus, controlling the machine directly from the estimated flux and the measured currents of the motor. The control requires no prior knowledge on the position of the machine rotor, nor saturation conditions of the motor that vary with torque conditions.

According to a particular feature, the flux estimation module further comprises:.

Thus, the estimated load angle δ̂s can feed the DFVC controller and the speed estimator without the need of any position sensor.

The characteristics of the invention will emerge more clearly from a reading of the following description of example embodiments, the said description being produced with reference to the accompanying drawings, among which:.

<FIG> represents a first example of a direct flux vector control of a motor using maximum torque per ampere according to the invention.

In the system shown in <FIG>, the reference torque T* is fed to a divider <NUM> together with a reference flux <MAT> provided by a MTPA tracking module <NUM> and <NUM>/<NUM> times the number of poles pairs of the motor <NUM> in order to obtain a reference current <MAT> in a τ axis that is provided to a DFVC module <NUM>.

The DFVC module <NUM>, from the reference current <MAT> in the τ axis, an estimated flux λ̂ norm, a measured current ifτ in a fτ framework and the reference flux <MAT> from the MTPA tracking module <NUM>, determines a reference voltage v*fτ in thefτ framework.

The reference voltage v*fτ in the fτ framework is provided to a framework transformation module <NUM> that transforms the reference voltage v*fτ in the fτ framework into a reference voltage v*αβ in the αβ framework using an estimated load angle δ̂s.

The reference voltage v*αβ in the αβ framework is provided to a summation module <NUM> that sums the reference voltage v*αβ with high frequency injection voltage vαβinj in the αβ framework in order to obtain a modified reference voltage v**αβ in the αβ framework.

The modified reference voltage v**αβ in the αβ framework is provided to a voltage source inverter VSI <NUM> that is connected to the motor <NUM>. The motor current vector iabc measured in the three-phase abc is provided to a framework transformation module <NUM>.

The framework transformation module <NUM> transforms the motor current iabc measured in the three-phase abc to a measured motor current vector iαβ in the αβ framework.

The measured current motor vector iαβ in the αβ framework is provided to a flux estimation module <NUM>, a j-axis injection module <NUM> and to a framework transformation module <NUM>.

The framework transformation module <NUM> transforms the measured current motor vector iαβ in the αβ framework into a measured current motor vector ifτ the fτ framework using an estimated load angle δ̂s.

The measured current vector ifτ in the fτ axis is provided to the DFVC module <NUM>.

The j-axis injection module <NUM> determines the injection voltage vαβinj in the αβ framework from the measured current motor vector iαβ in the αβ framework and a high frequency sinewave signal iδsin(ωht).

The high frequency injection voltage (vαβinj) is determined in order to provide a high frequency current response of the motor to the injected voltages that is perpendicular to the measured motor current vector.

The high frequency injection voltage (vαβinj) is in a frequency range between <NUM>-to the switching frequency of the voltage source inverter VSI <NUM>.

The flux estimation module <NUM> determines, from the measured current motor vector iαβ in the αβ framework and the voltage references v*αβ, the estimated flux λ̂αβ in the αβ framework and the estimated load angle δ̂s.

The speed estimation module <NUM> determines the speed of the motor <NUM> from the estimated load angle.

For example, the speed ω̂ is estimated using a phase lock loop and a low pass filtering of the output of the phase lock loop.

The estimated flux λ̂αβ in the αβ framework is provided to a MTPA tracking module <NUM> and to the DFVC module <NUM>.

The MTPA tracking module <NUM> determines, from the estimated flux λ̂αβ in the αβ framework and the high frequency sinewave signal sin(ωht), the reference flux <MAT>.

According to the invention, the system comprises:.

The torque is given by T = idqTJλdq where J is the matrix <MAT>, idq is the measured current in dq framework, T is the transpose and λdq is the flux.

The MTPA law is met when <MAT>, where γ = ∠idq denotes the current shoot angle in the dq framework <MAT>.

Where l represents incremental inductances matrix and L represents the chord inductance matrix.

At MTPA, (λdqa)TJidq = <NUM>, the auxiliary flux λdqa = JLidq - lJidq is aligned with the measured current vector.

Expressed in the if framework, where the i axis is aligned with idq, the derivative of the flux λij = e-JγLeJγiij expresses as a function of auxiliary flux is: <MAT>.

Under assumption of constant current amplitude (diij = <NUM>), differential equation derates as dλij = -λijadγ.

As the MTPA condition is then met λja = <NUM>, it is therefore met when dλj = <NUM>.

The invention thus consists in injecting a small HF current excitation in the j axis in order to meet diij = <NUM> and to obtain a zero HF flux response in that axis dλj = <NUM>. Achieving this, λja = <NUM>, the flux perturbation vector is therefore aligned with current vector, and MTPA condition is met.

In a variant, once the MTPA law is obtained, the high frequency injection is turned off. The flux is then adapted to torque conditions according to the just obtained MTPA law.

In yet another variant, the injection can be turned on sporadically to evaluate any change of the machine over time and reset the MTPA law.

<FIG> represents an example of a block diagram of a direct flux vector control module according to the present invention.

The direct flux vector control module <NUM> comprises a subtracting module <NUM> that subtracts from the reference current <MAT> in the τ axis, the measured current iτ in the τ axis.

The output of the subtracting module <NUM> is provided to a PI regulator <NUM> the output of which is provided to a multiplication module <NUM> that multiplies the output of the PI regulator <NUM> by a decoupling constant value <NUM>/b.

The direct flux vector control module <NUM> comprises a subtracting module <NUM> that subtracts from the reference flux <MAT>, the estimated flux norm <MAT>. The output of the subtracting module <NUM> is provided to a PI regulator <NUM> the output of which is provided to a multiplication module <NUM> that multiplies the output of the PI regulator <NUM> by a decoupling constant value -a/b that are calibrated form the motor nameplate ratings. As example, values for a and b are a=<NUM> and b=<NUM>.

The outputs of the multiplication modules <NUM> and <NUM> are summed by a summation module <NUM>.

The output of the summation module <NUM> is provided to a summation module <NUM> that sums the result of the summation performed by the summation module <NUM> to Rsiτ + λ̂ω̂ in order to provide the reference voltage v*τ in the τ axis, where Rs is the stator resistance, and ω̂ is the estimated motor speed.

The Stator resistance Rs is for example obtained from a self-commissioning procedure. The motor speed is estimated tracking the load angle δ̂s of the estimated flux vector.

The output of the PI regulator <NUM> is provided to a summation module <NUM> that sums the result of the output of the PI regulator <NUM> to Rsif in order to provide the reference voltage v*f in the f axis.

<FIG> represents an example of a block diagram of a flux estimation module according to the present invention.

The flux estimation module <NUM> comprises a subtracting module <NUM> that subtracts from the reference voltage v*α in the α axis the current iα in the α axis multiplied by the resistance Rs.

The result of the subtracting module <NUM> is provided to a subtracting module <NUM>.

The subtracting module <NUM> subtracts from the result of the subtracting module <NUM> a result provided by a multiplication module <NUM>.

The output of the subtracting module <NUM> is provided to an integrator <NUM> in order to provide the estimated flux λ̂α in the α axis.

The estimated flux λ̂α in the α axis is provided to a divider <NUM> and to the multiplication module <NUM> that multiplies the estimated flux λ̂α in the α axis by a coefficient kobs that is an observation gain.

The flux estimation module <NUM> comprises a subtracting module <NUM> that subtracts from the reference voltage v*β in the β axis the current iβ in the β axis multiplied by the resistance Rs of the motor <NUM>.

The output of the subtracting module <NUM> is provided to an integrator <NUM> in order to provide the estimated flux λ̂β in the β axis.

The estimated flux λ̂β in the β axis is provided to the divider <NUM> and to the multiplication module <NUM> that multiplies the estimated flux λ̂β in the β axis by the coefficient kobs.

The division module <NUM> divides the estimated flux λ̂β in the β axis by the estimated flux λ̂α in the α axis.

The result of the division module <NUM> is transformed by arctangent by the module <NUM> in order to provide the estimated load angle δ̂s.

<FIG> represents an example of a block diagram of a maximum torque per ampere module according to the present invention.

The maximum torque per ampere module <NUM> comprises a framework transformation module <NUM> that transforms the estimated flux λ̂αβ in the αβ framework into an estimated flux λ̂ij in the ij framework using a measured angle γs between the measured currents and the α axis of αβ framework.

The estimated flux λ̂j in the j axis is provided to multiplier <NUM> that multiplies the estimated flux λ̂j in the j axis by the high frequency sinewave signal sin(ωht).

The output of the multiplication module <NUM> is processed by a low pass filter <NUM>.

Modules <NUM> and <NUM> form a heterodyne demodulation <NUM>.

The output of the heterodyne modulation <NUM> is provided to a PI regulator <NUM> with an integral gain of kλ and proportional gain zero in order to provide the reference flux <MAT>.

The reference flux <MAT> is thus controlled to ensure that the flux response to the high frequency injection voltage is null on the j axis, and thus only located on the i axis. The high frequency flux response to the injected voltage is aligned with the measured current vector.

<FIG> represents an example of a block diagram of an injection block module according to the present invention.

The injection module <NUM> comprises means <NUM> for determining a fundamental current vector iαβ_LF. As example, the fundamental current vector iαβ_LF is determined by low-pass filtering of the measured current vector iαβ. As another example, the fundamental current vector iαβ_LF is a past memorised current vector.

The injection module <NUM> comprises a framework transformation module <NUM> that transforms the measured current motor vector iαβ in the αβ framework into a measured current motor vector iij in a ij framework. The ij framework is rotated from the αβ framework using an angle γs that is derived from the determined fundamental current vector <MAT>.

The output of the framework transformation module <NUM> is provided to a high pass filter HPF <NUM>. The output of the high pass filter <NUM> is provided to a subtracting module <NUM> that subtracts the high frequency sinewave signal iδsin(ωht) in the j axis to the output of the high pass filter <NUM>.

The output of the subtracting module <NUM> is provided to a PI regulator <NUM> in order to obtain a voltage injection signal in the ij framework. The voltage injection signal in the ij framework is provided to a framework transformation module <NUM> that transforms the voltage injection signal in the ij framework into the voltage injection signal vαβinj in the αβ framework.

The high frequency current response to the high frequency injection voltage is thus controlled to follow the reference that is located only in the j axis. The high frequency current response of the motor to the high frequency injection voltage is perpendicular to the measured motor current vector.

<FIG> represents a second example of a direct flux vector control of a motor using maximum torque per ampere according to the invention.

The direct flux vector control of a motor device <NUM> using maximum torque per ampere has, for example, an architecture based on components connected by a bus <NUM> and a processor <NUM> controlled by a program as disclosed in <FIG>.

The bus <NUM> links the processor <NUM> to a read only memory ROM <NUM>, a random access memory RAM <NUM>, an input output I/O IF interface <NUM>.

The input output I/O IF interface <NUM> enables the device for monitoring the condition of a motor <NUM> to sense signals representative of current flowing through the motor <NUM>.

The memory <NUM> contains registers intended to receive variables and the instructions of the program related to the algorithm as disclosed in <FIG>.

The read-only memory, or possibly a Flash memory <NUM>, contains instructions of the programs related to the algorithm as disclosed in <FIG>, that are when the device <NUM> is powered on, loaded to the random-access memory <NUM>. Alternatively, the program may also be executed directly from the ROM memory <NUM>.

The calculation performed by the device <NUM> may be implemented in software by execution of a set of instructions or program by a programmable computing machine, such as a PC (Personal Computer), a DSP (Digital Signal Processor) or a microcontroller; or else implemented in hardware by a machine or a dedicated component, such as an FPGA (Field-Programmable Gate Array) or an ASIC (Application-Specific Integrated Circuit).

In other words, the device <NUM> includes circuitry, or a device including circuitry, causing the device <NUM> to perform the program related to the algorithm as disclosed in <FIG>.

<FIG> represents the motor frameworks used by the present invention.

In <FIG>, αβ two-phase stator framework is represented. The αβ framework is static in reference to the stator of the motor.

The dq two-phase rotor framework is represented. The dq framework is dynamic and follows the rotor position θ.

The ij two-phase current framework is represented. The i axis follows the current vector, forming an angle γs with the α axis, while the j axis is perpendicular to the current vector.

The fτ two-phase flux framework is represented. The f axis follows the estimated flux vector, forming an angle γs with the α axis, while the τ axis is perpendicular to the estimated flux vector.

The HF current response iHF to the high frequency voltage injection is represented. The HF current response iHF is perpendicular to the i axis, thus perpendicular to the measured current vector.

The HF response λHF of the estimated flux to the high frequency injection voltage is represented. The HF response λHF is aligned with the i axis, thus aligned with the measured current vector. The j axis flux is constant.

<FIG> represents an example of an algorithm for controlling a motor according to the invention.

The present algorithm is disclosed in an example wherein it is executed by the processor <NUM> of the direct flux vector control of a motor device <NUM>.

At step S800, the processor <NUM> determines a reference current <MAT> in a τ axis using the reference torque T* together with a reference flux <MAT> and <NUM>/<NUM> times the number of poles pairs of the motor <NUM> as: <MAT>.

At step S801, the processor <NUM> performs the Direct Flux Vector Control DFVC, from the reference current <MAT> in the τ axis, an estimated flux λ̂ norm, a measured current ifτ in a fτ framework and the reference flux <MAT>. The processor <NUM> determines a reference voltage v*fτ in the fτ framework.

At step S802, the processor <NUM> transforms the reference voltage v*fτ in the ft framework into a reference voltage v*αβ in the αβ framework using an estimated load angle δ̂s.

At step S803, the processor <NUM> sums the reference voltage v*αβ in the αβ framework with an injection voltage vαβinj in the αβ framework in order to obtain a modified reference voltage v**αβ in the αβ framework.

At step S804, the processor <NUM> provides the modified reference voltage v**αβ in the αβ framework to a voltage source inverter VSI that is connected to the motor <NUM>.

At step S805, the processor <NUM> measures the motor current vector iabc in the three-phase abc.

At step S806, the processor <NUM> transforms the motor current vector iabc measured in the three-phase abc in a measured current motor vector iαβ in the αβ framework.

At step S807, the processor <NUM> transforms the measured current motor vector iαβ in the αβ framework into a measured current motor vector ifτ the fτ framework.

At step S808, the processor <NUM> determines the injection voltage vαβinj in the αβ framework from the measured current motor vector iαβ in the αβ framework and a high frequency sinewave signal iδsin(ωht). The injection voltage is determined to drive the high frequency of the current to be perpendicular to the measured current vector.

At step S809, the processor <NUM> determines, from the measured current vector iαβ in the αβ framework and the voltage references v*αβ , the estimated flux λ̂αβ in the αβ framework and the estimated load angle δ̂s.

Claim 1:
A method for controlling a motor using a maximum torque per ampere field module and a direct flux vector control module, characterized in that the method comprises the steps of:
- determining by the direct flux vector control module (<NUM>) reference voltages in a fτ framework from an estimated flux (λ̂) norm, a reference flux ( <MAT>), a measured current motor vector (ifτ) in a fτ framework using an estimated load angle (δ̂s) and a reference current ( <MAT>) in a τ axis that is obtained (<NUM>) from a reference torque (T*) and the reference flux ( <MAT>),
- summing (<NUM>) the reference voltages transformed (<NUM>) in a stator αβ framework (v*αβ) with a high frequency injection voltage (vαβinj),
- driving the motor (<NUM>) with the summed voltages,
- measuring (<NUM>) a motor current vector (iαβ),
- determining (<NUM>) the high frequency injection voltage (vαβinj) from the measured motor current vector (iαβ) and a high frequency sinewave signal (iδsin(ωht)), so that the high frequency current response of the motor to the high frequency injection voltages is perpendicular to the measured motor current vector,
- determining (<NUM>) an estimated flux (λ̂αβ) from the measured motor currents (iαβ) and the voltage references (v*αβ),
- determining (<NUM>), by the maximum torque per ampere field module, from the estimated flux (λ̂αβ) and the high frequency sinewave signal (sin(ωht)), the reference flux ( <MAT>) to be provided to the direct flux vector control module so that the high frequency flux response to the injected voltage is aligned with the measured current vector.