Abstract:
An induction machine includes a rotor having rotor flux and a rotor resistance. The induction machine outputs first and second reference current values. A control system includes a first controller that outputs first and second reference voltage values to the induction machine and that generates an estimated rotor flux magnitude value based on a rotor resistance parameter. A computation circuit receives the first and second reference current values from the induction machine and the first and second voltage reference values from the first controller and calculates an actual rotor flux magnitude. A rotor resistance adjustor that updates the rotor resistance parameter based on the actual and estimated rotor flux magnitudes.

Description:
FIELD OF THE INVENTION 
     The present invention relates to induction machines, and more particularly to the control of induction machines. 
     BACKGROUND OF THE INVENTION 
     Indirect field-oriented control (IFOC) is commonly used control method for a three-phase induction machine (IM). If motor parameters of the IM are known, the IFOC reduces the complex IM dynamics to the dynamics of a separately excited dc machine. Using this approach allows the flux and torque of the induction machine to be controlled independently. 
     The induction machine model used in IFOC controller is given by the following equations: 
               ω   s     =         ω   e     -     ω   r       =         R   r       L   r       ⁢           ⁢     M     Ψ   dr       ⁢           ⁢     i   qs                 (   1   )                     R   r     ⁢           ⁢     Ψ   dr       +       L   r     ⁢           ⁢       ⅆ           ⁢     Ψ   dr         ⅆ   t           =       R   r     ⁢           ⁢   M   ⁢           ⁢     i   ds               (   2   )                 T   e     =       3   /   2     ⁢           ⁢   P   ⁢           ⁢     M     L   r       ⁢           ⁢     (       Ψ   dr     ⁢           ⁢     i   qs       )               (   3   )             
 
In equations (1)-(3), i ds  and i qs  are flux and torque producing stator current components, respectively. Ψ dr  is a rotor flux magnitude.
 
     The assumption of the IFOC is that Ψ dr =0 and that the stator current components are controlled by the current control loop. R r  is a rotor resistance, M is a mutual inductance, and L r =M+L lr  is a rotor inductance. L lr  is a rotor leakage inductance and L lr &lt;&lt;M. Also, ω e  is a stator electrical frequency, ω e  is a rotor electrical frequency, ω s  is a slip frequency, and T e  is a produced torque. 
     The performance of the IFOC is sensitive to discrepancies between estimated machine parameters used by the IFOC and actual machine parameters. During operation, the actual machine parameters drift from nominal or estimated values due to changes in operating conditions. If the estimated parameters stored in the IFOC controller do not reflect the actual machine parameters, a parameter mismatch occurs. As a result, the machine flux level is not properly maintained. Torque response linearity is also lost. In other words, produced torque is different from the commanded value. The discrepancy also typically exists in steady-state conditions. Finally, the torque response to step torque command is not instantaneous. 
     The mutual inductance M and the rotor resistance R r  have a significant impact on the performance of the IFOC. The mutual inductance M varies significantly with the machine saturation level. The variation of the mutual inductance with the flux level can be compensated using look-up tables that may be obtained during off-line characterization. The rotor resistance R r  is predominantly influenced by rotor temperature. Since the rotor temperature varies with machine operating conditions, the rotor resistance must be estimated using on-line approaches for tracking the rotor resistance variations during machine operation. 
     Referring now to  FIG. 1 , the commanded values for flux and torque producing stator current components i ds * and i qs * respectively, are inputs to an IFOC  20 . The IFOC  20  outputs reference voltages, v a , v b  and v c , which are fed to a power inverter  24  of an induction motor  26 . A calculating circuit  34  calculates a function y from measured quantities, including voltages v a , v b  and v c  and phase currents i a , i b , and i c . The same function is calculated in IFOC by using the internal variables and is denoted as {tilde over (y)}. 
     A difference, e={tilde over (y)}−y, that is generated by a difference circuit  48  is input to an adaptation controller  50 . The output of the adaptation controller  50  determines the rotor resistance value R r  that is used in IFOC  20 . If the function y is sensitive to the rotor resistance, any difference between the motor R r  value and the IFOC Rr value produces a non-zero error (e={tilde over (y)}≠−0). The non-zero error will force the R r  value used in IFOC to change. 
     Conventional IFOC use several different functions including: reactive power (Q); electromagnetic torque (Te); active power (P); a ratio of reactive power and electromagnetic torque (Q/Te); and, a scalar product of transposed rotor flux vector and stator current vector (Ψ r   T i s ). These functions, however, are not sufficiently sensitive to changes in the rotor resistance R r  or are impractical for real-time implementation. As a result, parameter drift and reduced performance occurs. 
     SUMMARY OF THE INVENTION 
     A control system includes a first controller that outputs reference voltage values to an induction machine. The first controller also generates an estimated rotor flux magnitude value based on a rotor resistance parameter. A computation circuit receives the measured current values from the induction machine and the voltage reference values from the first controller and calculates an actual rotor flux magnitude. A rotor resistance adjustor updates the rotor resistance parameter in the controller based on the actual and estimated rotor flux magnitudes. 
     In other features, a difference circuit calculates a difference between the estimated and actual rotor flux magnitudes and outputs the difference to the rotor resistance estimator. The first controller is an indirect field-oriented controller (IFOC) that receives commanded values for flux and torque producing stator current values. 
     In still other features, the rotor resistance adjustor is disabled at rotor slip values below a predetermined threshold and enabled for rotor slip values above the predetermined threshold. 
     Further areas of applicability of the present invention will become apparent from the detailed description provided hereinafter. It should be understood that the detailed description and specific examples, while indicating the preferred embodiment of the invention, are intended for purposes of illustration only and are not intended to limit the scope of the invention. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The present invention will become more fully understood from the detailed description and the accompanying drawings, wherein: 
         FIG. 1  is a functional module diagram of an indirect field oriented control (FOC) with model reference adaptive control (MRAC) tuning according to the prior art; 
         FIG. 2  is a functional module diagram of an indirect field oriented control (FOC) with model reference adaptive control (MRAC) tuning that employs a square of the rotor flux magnitude to estimate rotor resistance according to the present invention; 
         FIG. 3  is a plot illustrating relative sensitivity as a function of slip frequency; 
         FIG. 4  is an expanded plot of  FIG. 3  for low values of slip frequency; 
         FIG. 5  are plots illustrating an error signal and a ratio of the estimated and true rotor resistance (bottom plot) for d-current (or flux) at 75% of its rated value and full (nominal) torque; and 
         FIG. 6  is a functional block diagram of an exemplary device for measuring a square of the rotor flux. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     The following description of the preferred embodiment(s) is merely exemplary in nature and is in no way intended to limit the invention, its application, or uses. For purposes of clarity, the same reference numbers will be used in the drawings to identify the similar elements. As used herein, the term module means a discrete circuit, a processor and software and/or firmware, an application specific integrated circuit, combinatorial logic and/or other similar devices. 
     Referring now to  FIG. 2 , commanded values for flux and torque producing stator current components i ds * and e qs *, respectively, are input to an IFOC  60 . The IFOC  60  outputs reference voltages v a , v b , and v c , which are fed to a power inverter  64  of an induction motor  66 . A calculating circuit  74  calculates an actual rotor flux magnitude (|Ψ r | 2 ) from measured quantities, including voltages v a , v b , and v c  and phase currents i a , i b , and i c . An estimated rotor flux magnitude |{tilde over (Ψ)} r | 2  is calculated in the IFOC  60  using internal variables. 
     A difference (e) between the estimated and actual rotor flux magnitude is output by a difference circuit  76  to a rotor resistance parameter adaptor  80 . The output of the rotor resistance parameter adaptor  80  determines the rotor resistance value R r  that is used in the IFOC  60 . Since the function (|Ψ r | 2 ) is sensitive to the rotor resistance R r , any difference between the actual R r  value and the estimated R r  value produces a non-zero error. The non-zero error forces the R r  value used in the IFOC  60  to change. 
     The square of the amplitude of the rotor flux (|Ψ r | 2 ) is used by the adaptation controller  80  according to the present invention to significantly improve performance. For a selected function, y=y (R r ), the relative sensitivity is defined as: 
                 S   _       R   r     y     =         R   r     y     ⁢       ∂   y       ∂     R   r                   (   4   )             
 
The relative sensitivity function shows how a relative change of R r  affects the adaptation function y. Preferably the absolute value of the sensitivity function |{overscore (S)} R     r     y | is as high as possible over the operating range. Also, {overscore (S)} R     r     y  should not change sign over the desired operating range in order to make the implementation simple and practical. Besides having high sensitivity to R r  changes, the y function should be easily quantifiable from the measured quantities.
 
       FIGS. 3 and 4  are plots of sensitivity vs. slip frequency for all function candidates. The calculations were performed on a motor that was specifically designed for electric vehicle applications. If different motor designs are used, the relative ranking of functions may change somewhat. However, the conclusions that are drawn herein are valid for a large number of induction motor designs and applications. 
     Sensitivity functions for electromagnetic torque, active power and ratio of reactive power to electromagnetic torque have signs that depend on the operating slip frequency, which makes these functions very difficult to implement. The crossing points are in the middle of the operating slip frequency range. Rotor resistance adaptations using these functions require complicated algorithms to detect and accommodate the sign change. 
     The Q and |Ψ r | 2  functions have notably lower sensitivity for low slip values as compared with other functions. However, {overscore (S)} R     r     Q  and {overscore (S)} R     r     |Ψ     r     |     2    do not change sign with the slip frequency. In addition, Q and |Ψ r |   2    can be easily calculated from both the IFOC variables and the stator-side measured currents and voltages. Out of all of the functions, the |Ψ r | 2  function has the largest magnitude of the sensitivity function |{overscore (S)} R     r     |Ψ     r     |     2   | at higher slip frequencies. This region typically corresponds to high torque values and high rotor losses. Due to rotor heating, the rotor resistance R r  can deviate significantly from its nominal value. For this reason, the large value of |{overscore (S)} R     r     |Ψ     r     |     2   | Mat high slip frequencies is of particular importance. 
     However, |{overscore (S)} R     r     |Ψ     r     |     2   | is lower under light load conditions, as shown in FIG.  4 . Considering typical measurement accuracy and noise levels, it is possible to detect |Ψ r | 2  changes of 5% of the maximal value and higher. This guideline may be used to determine the slip frequency threshold below which the adaptation mechanism can be disabled. It follows then, from FIG.  3  and equation (5), that for the particular example used here, at the slip frequency of about 1.4 rad/s (0.2 Hz) and higher, a 10%-variation of the rotor resistance is detectable, since |{overscore (S)} R     r     |Ψ     r     |     2   |=0.5. For slip frequencies below this threshold, the adaptation mechanism is preferably disabled. This is acceptable because the influence of tuning error is very small under light load conditions. The function Ψ r   T i s , has similar properties as the proposed function |Ψ r | 2 . However, the implementation of Ψ r   T i s  is more complicated and inaccurate under certain conditions. 
     The magnitude of the rotor flux is inherently calculated in IFOC (equation (2)). In other words, the IFOC outputs |{tilde over (Ψ)} r | 2 . In the adaptation approach in  FIG. 2 , it is necessary to find a way of calculating |Ψ r | 2  from measured stator currents and voltages, under the underlying assumption of rotor field-orientation. The instantaneous reactive power q is given by
 
 q=v   s   T   Ji,   (5) 
 
where v s     T    and i s     T    are stator voltage and current vectors, respectively, and J is given by: 
             J   =     [         0         -   1             1       0         ]             (   6   )             
 
     Equation (5) is valid in the stationary reference frame, as well as in the rotating field-oriented synchronous reference frame, i.e. 
                   q   =       ⁢       v   s   T     ⁢     Ji   g                   =       ⁢         v   ds     ⁢     i   qs       -       v   qs     ⁢     i   ds                     =       ⁢         v     α   ⁢           ⁢   s       ⁢     i     β   ⁢           ⁢   s         -       v     β   ⁢           ⁢   s       ⁢     i     α   ⁢           ⁢   s                         (   7   )             
 
The stator voltage equation in the rotating reference frame, in vector form, and in terms of the stator currents and flux linkages is given by:
 
 v   s   =R   s   i   s   +ω   c   J Ψ s {dot over (Ψ)} s   (8) 
 
where 
               ψ   s     =         L   s     ⁢   σ   ⁢           ⁢     i   s       +       M     L   r       ⁢     ψ   r     ⁢           ⁢   and               (   9   )                   ψ   .     s     =         L   s     ⁢   σ   ⁢           ⁢       i   .     s       +       M     L   r       ⁢       ψ   .     r       +       (       ∂     ∂   t       ⁢     (     M     L   r       )       )     ⁢     ψ   r                 (   10   )             
 
and
 
In equation (10), ∂/∂t(M/L r )=0. Moreover, assuming that the rotor flux is in steady state, or {dot over (Ψ)} r =, equation (10) simplifies to:
 
{dot over (Ψ)} s   =L   s   σi   s   (11) 
 
     Substituting (8), (9) and (11) into (5), the instantaneous relative power is: 
             q   =         ω   e     ⁢     L   s     ⁢   σ   ⁢           ⁢     i   s   T     ⁢     i   s       +       L   s     ⁢   σ   ⁢           ⁢       i   .     s   T     ⁢     Ji   s       +       ω   e     ⁢     M     L   r       ⁢     ψ   r   T     ⁢     i   s                 (   12   )             
 
Equation (12) does not require knowledge of the stator resistance value R s . This is important since the stator resistance value R s  changes significantly with the operating conditions. Assuming rotor field orientation, the equation (12) can further be simplified into: 
             q   =         L   s     ⁢   σ   ⁢           ⁢       i   .       α   ⁢           ⁢   β   ⁢           ⁢   s     T     ⁢     i     α   ⁢           ⁢   β   ⁢           ⁢   s         +         ω   e       L   r       ⁢            ψ   r          2                 (   13   )             
 
where i αβs  is the stator current vector in the stationary reference frame.
 
     Finally, it follows from equations (7) and (13) that: 
                    ψ   r     ⁢          2     ⁢     =       (       (         v     β   ⁢           ⁢   s       ⁢     i     α   ⁢           ⁢   s         -       v     α   ⁢           ⁢   s       ⁢     i     β   ⁢           ⁢   s           )     -       L   s     ⁢     σ   ⁡     (         i     α   ⁢           ⁢   s       ⁢       ⅆ     i     β   ⁢           ⁢   s           ⅆ   t         -       i     β   ⁢           ⁢   s       ⁢       ⅆ     i     α   ⁢           ⁢   s           ⅆ   t           )           )     ⁢       L   r       ω   e                       (   14   )             
 
Equation (14) can be used to calculate |Ψ r | 2  from the measured quantities in the stationary reference frame. For a typical induction machine, the stator leakage inductance (Leo) is approximately constant and does not vary significantly with the stator current. However, if the stator leakage inductance does vary substantially, a look-up table can be used. Note that for steady state conditions, equation (14) becomes much simpler: 
                      ψ   r          2     =       (             v     β   ⁢           ⁢   s       ⁢     i     α   ⁢           ⁢   s         -       v     α   ⁢           ⁢   s       ⁢     i     β   ⁢           ⁢   s             ω   e       -       L   s     ⁢   σ   ⁢            i   s          2         )     ⁢     L   r               (   15   )             
 
     Referring now to  FIG. 6 , one exemplary implementation of equation (14) is depicted. Besides the information of stator currents, equation (14) needs the derivatives of the currents and the stator voltages, which are difficult to measure. Stator voltages can be estimated from the commanded voltage vector u s * in estimating module (EST)  100 , which performs the following computations: 
                 u   ^     as     =       u   as   *     -     E   ⁢       Δ   ⁢           ⁢   T     T     ⁢     sgn   ⁡     (     i   as     )         +         u   as   *     E     ⁢     (       V   d     -     V   ce       )       -       1   2     ⁢     (       V   d     +     V   ce       )     ⁢     sgn   ⁡     (     i   as     )                   (   16   )                   u   ^     bs     =       u   bs   *     -     E   ⁢       Δ   ⁢           ⁢   T     T     ⁢     sgn   ⁡     (     i   bs     )         +         u   bs   *     E     ⁢     (       V   d     -     V   ce       )       -       1   2     ⁢     (       V   d     +     V   ce       )     ⁢     sgn   ⁡     (     i   bs     )                                       u   ^     cs     =       u   cs   *     -     E   ⁢       Δ   ⁢           ⁢   T     T     ⁢     sgn   ⁡     (     i   cs     )         +         u   cs   *     E     ⁢     (       V   d     -     V   ce       )       -       1   2     ⁢     (       V   d     +     V   ce       )     ⁢     sgn   ⁡     (     i   cs     )                                 
 
In equation (16), the voltages u as *, u bs * and u cs * are available from the controller  60  and are typically between −E/2 and +E/2, where E is a DC-link voltage. Currents i as , i bs  and i cs  are measured line-currents. V ce  and V d  are the saturation voltage and the free-wheeling diode voltage, respectively. T is a period of the applied PWM and ΔT is the lockout time of power switches. When the DC-link voltage is much higher than the saturation voltage, a practical simplification of ( 16 ) can be made as:
 
 û   xs   ≈u   xs   *   −Dsgn ( i   xs )  (17) 
 
where subscript x stands for a, b or c, and D is a constant that can be calculated (or determined experimentally). The actual implementation strongly depends on the DC-link voltage and type of the power switches used in the inverter.
 
     The estimated stator voltages are further transformed in α-β frame using equation (18): 
                   u   ^       α   ⁢           ⁢   s       =         2   3     ⁢       u   ^       a   ⁢           ⁢   s         -       1   3     ⁢     (         u   ^     bs     +       u   ^     cs       )           ⁢     
     ⁢         u   ^       β   ⁢           ⁢   s       =         3     3     ⁢     (         u   ^     bs     -       u   ^     cs       )                 (   18   )             
 
Usually, the currents are measured by means of two current sensors (for a Y-connected machine). In this case currents in the station ary frame are: 
                 i     α   ⁢           ⁢   s       =     i   as       ⁢     
     ⁢       i     β   ⁢           ⁢   s       =         3     3     ⁢     (       i   bs     -     i   cs       )                 (   19   )             
 
     The time derivatives of the currents are vales that can introduce a large amount of noise in the estimation, especially at lower speeds. To decrease the noise and its influence on the adaptation algorithm, it is necessary to implement a special procedure for derivative calculation. The method according to the present invention uses an adaptive derivation time that varies for different ω e . The time derivative of a variable is calculated as an increment of this variable for the defined time. Usually, the increment is calculated for one or several sampling periods. For extremely low electrical speeds (let us assume 0.1 Hz, which is normal for zero rotor speed), the current (usually sampled with a rate above 10 kHz), changes by a very small amount between two consecutive samples. In the mentioned example, the current needs 2500 ms (or more than 25000 sampling intervals) to change from zero to its maximal value. It is impractical to extract the information of the derivative from consecutive sampling intervals because it is masked by the noise that is at least two orders of magnitude larger than the increment of interest. 
     To avoid the effects of the measurement noise, the derivative can be calculated, for example, as an increment in 1000 sampling intervals. However, this is not satisfactory for higher frequencies (e.g., 200 Hz would require calculating the increment in each sampling interval, because the whole period lasts 50 sampling intervals). An approximately constant number of increment-calculating periods is kept for one period of the current. However, calculating the time derivative as an increment over a certain time introduces a delay that must be taken into account. For implementation, it is typically enough to use a rough approximation (for example, a delay equals to a half of the increment-calculating period). 
     Starting from the part that appears in equation (3.26), this practical approximation yields: 
                 (         i     α   ⁢           ⁢   s       ⁢       ⅆ     i     β   ⁢           ⁢   s           ⅆ   t         -       i     β   ⁢           ⁢   s       ⁢       ⅆ     i     α   ⁢           ⁢   s           ⅆ   t           )     ⁢     1     ω   e         =         (         i     α   ⁢           ⁢   s       ⁢       Δ   ⁢           ⁢     i     β   ⁢           ⁢   s           Δ   ⁢           ⁢   t         -       i     β   ⁢           ⁢   s       ⁢       Δ   ⁢           ⁢     i     α   ⁢           ⁢   s           Δ   ⁢           ⁢   t           )     ⁢     T   e       =         i     α   ⁢           ⁢   s       ⁢   Δ   ⁢           ⁢     i     β   ⁢           ⁢   s       ⁢       T   e       Δ   ⁢           ⁢   t         -       i     β   ⁢           ⁢   s       ⁢   Δ   ⁢           ⁢     i     α   ⁢           ⁢   s       ⁢       T   e       Δ   ⁢           ⁢   t                     (   20   )             
 
In equation (20), Δi xs  is an increment that the corresponding current makes for the time interval Δt, and T e  is a period (T e =1/ω e ). The ratio T e /Δt is kept approximately constant. The constant c=T e /Δt defines the number of subintervals (in one period of the current) in which the increment will be calculated. The actual selection is determined experimentally and is typically in between 20 and 50. Using the constant c, the increment-calculating period can be defined as: 
               Δ   ⁢           ⁢   t     =       T   e     c             (   21   )             
 
     Since T e  is a variable that is available in the controller, the increment-calculating period Δt, can be calculated. If T e  is expressed in sample intervals, then the value for Δt is also in sample intervals. To calculate the current increment Δi xs , the sample taken Δt time ago is subtracted from the latest sample. Equation (14) is finally modified to the form suitable for implementation:
 
|{circumflex over (Ψ)} r | 2   qL   r   T   c   −L   σs   L   r   c ( i   αs   Δi   βs   −i   βs   Δi   αs )  (22) 
 
     The reactive power q is calculated as q=û βs i αs −û αs i βs ·L σs  is the equivalent stator leakage inductance (L σs =L s σ), and can be treated as a constant for most applications. If the leakage inductance depends strongly on the magnetizing current, it may be tabulated. The rotor inductance L r  takes into account the nonlineanties in the main magnetic circuit. 
     The increments of current (Δi xs ) are obtained using the technique described earlier. This method introduces the delay in the derivative data that cannot be ignored. For this reason, the voltage and current variables involved in the computation ( 22 ) are delayed for the same time. Moreover, the currents, the derivatives, and voltages are filtered with low-pass filters denoted as LPF  102 A,  102 B and  102 C in FIG.  6 . The cut-off frequency of filters should be defined for the particular implementation. The main purpose of the LPF is to reduce the PWM switching frequency components from currents. Since the LPFs also introduce delay, the delays (of LPF, and variable delay from derivative calculation) is balanced at the input in an actual rotor flux calculating module  110 . 
     The ariation of R r  is slow (usually with the time constant on the order of magnitude of 10 s or more). Before subtracting the estimated value from |Ψ r | 2  obtained from IFOC, the latter must be delayed for the same time as all other variables. 
     The difference between the estimated value and the value in IFOC is the error (Δy in FIG.  6 ), which is mainly a consequence of a mistuned R r . The other origins of the error lie in different imperfections in the estimation process. The most important are imperfectly estimated voltages, noise in current derivatives and imperfectly evaluated L r . 
     Using the simplified form for the estimated voltages ( 16 ) and developing the expression for q in a Fourier series, it can shown that in steady state all components that originate from the dead time have frequencies that are multiples of the fundamental. Therefore, the mean value of these components in one period of the fundamental is zero. If the average of the error Δy is calculated during one whole period T θ (T θ =1/ω θ ), the errors caused by the dead time will be reduced. The same will reduce errors from the noise as well. 
     A filtering module (FILT)  120  in  FIG. 6  calculates the average of Δy for one period T θ . The filtering module  120  accumulates the error Δy starting when θ θ  is zero and ending the accumulation when θ θ  becomes zero again. The average evaluated during this period is used as an error signal. θ θ  is an angle between α-axis of the stationary frame and d-axis of the synchronous frame, and it is known in the controller. 
     As discussed previously, the sensitivity of the function |Ψ r | 2  decreases significantly for very small loads. Therefore, the adaptation mechanism should be disabled for i qs  lower than a predetermined value, which is dependent upon the actual limit should be defined for the actual implementation. The suspension of the adaptation mechanism for extremely low loads is not a disadvantage, because at low loads it is not particularly important whether the IFOC  60  is the well tuned or not. As soon as the load increases, the adaptation mechanism is to be enabled again. 
     An inhibiting module (INH)  124  in  FIG. 6  inhibits the adaptation if the q-component of the stator current is lower than a predetermined value. In the disabled state, the output from this module is equal to zero. Finally, the error is output to the controller  60  via an integrating module (INT REG)  128 . The output of the module is the estimated rotor resistance R r *, which is used in the IFOC  60 . 
     Referring now to  FIG. 4 , experimental results of the rotor resistance adaptation controller  50  using the proposed adaptation function y=/|Ψ r | 2  is shown. The error in upper plot is defined as: 
         Error   ⁢           [   %   ]     =                  ψ   r          2     -              ψ   ~     r          2                ψ   r          2       ·   100         
 
As explained before, |{overscore (Ψ)} r | 2  is the IFOC output, whereas |Ψ r | 2  is calculated using the equation (14). An experiment was performed on a standard 3-phase industrial motor operating in steady state. The rotor flux reference was kept constant at 75% of the nominal value. Nominal torque was applied to the machine. The test was performed with the locked rotor (ω r =0), which represents the worst-case condition for the adaptation controller  50 , due to the lowest value of |{overscore (S)} R     r     |Ψ     r     |     2   |.
 
     Two seconds after initiating the test, the R r  value used in the IFOC controller  60  was intentionally increased by 50% from its actual value, which caused a parameter mismatch. As can be seen in  FIG. 5 , the rotor resistance parameter adaptor  80  corrected the rotor resistance value R r  in the IFOC controller to the actual value in less than five seconds. Similarly, eighteen seconds after the start, the rotor resistance value R r  in the IFOC controller  60  was intentionally reduced by 50% from its actual value. The rotor resistance parameter adaptor, again, quickly restored the rotor resistance parameter value R r  to its actual value. 
     Those skilled in the art can now appreciate from the foregoing description that the broad teachings of the present invention can be implemented in a variety of forms. Therefore, while this invention has been described inr connection with particular examples thereof, the true scope of the invention should not be so limited since other modifications will become apparent to the skilled practitioner upon a study of the drawings, the specification and the following claims.