Patent Publication Number: US-7595600-B2

Title: Method and system for torque control in permanent magnet machines

Description:
TECHNICAL FIELD 
     The present invention generally relates to controlling alternating current (AC) motors, and more particularly relates to systems and methods for torque control in permanent magnet machines. 
     BACKGROUND OF THE INVENTION 
     Conventional motor control for electric drive systems utilizes two-dimensional look-up tables to generate maximum torque limits (e.g., for both motoring and regenerating operations). Generally, maximum torque limits are required to accomplish various performance requirements of a drive system. For example, maximum torque limits are typically required for maintaining the vehicle battery within a predetermined range of operating voltage and power. One method of maintaining the battery within the predetermined operating range is to limit torque in the traction system. For example, during motoring, a motoring torque may be limited to keep the battery voltage above the minimum operating voltage. In another example, during regeneration, a regenerating torque may be limited to keep the battery voltage below a maximum value. In other cases, the torque limits may reflect the maximum torque capability of the motor to operate within specified voltage and current limits of the drive system under existing operating conditions. 
     Reference to torque limit look-up tables may be used when generating torque commands. Typically, the maximum torque limits generated from the look-up tables are calculated at a steady state stator temperature. However, during vehicle operation, the temperature of the drive system may vary. As a result, the maximum motoring and regenerating torque that the drive system can produce may differ (e.g., as a function of temperature) from the maximum torque limits generated from the look-up tables. 
     Accordingly, it is desirable to provide methods and systems for adjusting torque commands of permanent magnet machines that compensate for magnet temperature variation. Additionally, it is desirable to provide methods and systems for determining torque limits of permanent magnet machines that compensate for magnet temperature variations. Furthermore, other desirable features and characteristics of the present invention will become apparent from the subsequent detailed description and the appended claims, taken in conjunction with the accompanying drawings and the foregoing technical field and background. 
     SUMMARY OF THE INVENTION 
     Methods and system are provided for controlling a synchronous machine including, but not necessarily limited to, a permanent magnet (PM) machine. The PM machine is responsive to a commanded d-axis flux and a torque command. In one embodiment, a method for controlling a PM machine includes determining a maximum torque of the PM machine based on an error between the commanded d-axis flux and an estimated d-axis flux of the PM machine, and adjusting the torque command based on the maximum torque to compensate. The error associated with a variation between a current temperature of the PM machine and a nominal temperature of the PM machine. 
     In another embodiment, a system for controlling a PM machine includes a first processing module configured to estimate a maximum torque of the PM machine for a current operating temperature based on an error between the commanded d-axis flux and an estimated d-axis flux of the PM machine, and a second processing module coupled to the first processing module. The error represents a temperature variation from a nominal operating temperature of the PM machine. The second processing module is configured to adjust the torque command based on the maximum torque to compensate for the temperature variation. 
     In another embodiment, a drive system includes a PM machine having a first torque limit at a nominal temperature and having a magnet temperature, an inverter coupled to the PM machine, and a controller coupled to the inverter. The inverter is configured to drive the PM machine with an alternating current (AC) voltage, and the PM machine produces a current based on the AC voltage. The controller is configured to determine a second torque limit of the PM machine based on the magnet temperature and further configured to adjust the current based on the second torque limit to compensate for a variation between the magnet temperature and the nominal temperature. 
    
    
     
       DESCRIPTION OF THE DRAWINGS 
       The present invention will hereinafter be described in conjunction with the following drawing figures, wherein like numerals denote like elements, and 
         FIG. 1  is a block diagram of a drive system including a PM machine in accordance with one embodiment of the present invention; 
         FIG. 2  is a plot illustrating the relationship among the reluctance motoring coefficient, the motor speed of a PM machine, and the supply voltage of a drive system in accordance with one embodiment; 
         FIG. 3  is a plot illustrating the relationship among the reluctance regenerating coefficient, the motor speed of a PM machine, and the supply voltage of a drive system in accordance with one embodiment; 
         FIG. 4  is a block diagram illustrating a torque limit estimation in accordance with one embodiment of the present invention; 
         FIG. 5  is a block diagram illustrating a torque command adjustment in accordance with one embodiment of the present invention; and 
         FIG. 6  is a flow diagram of a method for controlling a permanent magnet machine in accordance with an exemplary embodiment of the present invention. 
     
    
    
     DESCRIPTION OF AN EXEMPLARY EMBODIMENT 
     The following detailed description is merely illustrative in nature and is not intended to limit the invention or the application and uses of the invention. Furthermore, there is no intention to be bound by any expressed or implied theory presented in the preceding technical field, background, brief summary or the following detailed description. 
     Systems and methods are provided for controlling a permanent magnet (PM) machine that modifies the maximum torque limits of the PM machine to compensate for the effect of a temperature variation (e.g., an offset from a nominal temperature) on the torque output of the PM machine. In one embodiment, the maximum torque limits are modified based on a portion of the torque that is attributable to the permanent magnet. For example, the maximum torque limits are modified based on a d-axis flux error of the PM machine resulting from the temperature variation. The d-axis flux error represents a variation between a current temperature of the PM machine and a nominal temperature of the PM machine. This error may also represent a variance in magnetic strength due to a degradation of the magnetic characteristics over the life of the permanent magnet. 
     Referring to  FIG. 1 , a drive system  10  including a PM machine (electric machine)  16  is shown in accordance with one embodiment of the present invention. The drive system  10  comprises a controller  12 , an inverter  14  (e.g., a voltage source inverter) coupled to the controller  12 , the PM machine  16  coupled to the inverter  14 , and a detector  30 . The detector  30  has a first input for receiving measured phase currents (e.g., I a , I b , and I c ), a second input coupled to the PM machine  16 , and an output coupled to the controller  12  that supplies measured quantities of a variety of system outputs to the controller  12 . The detector  30  acquires the measured quantities including, but not necessarily limited to, a supply potential (e.g., a battery potential or DC bus voltage (V dc )), the measured phase currents (e.g., I a , I b , and I c , although measurement of two phase currents may be enough for a Y connected machine with a floating neutral), a motor speed (ω r ), a rotor phase angle (θ r ), or the like. From the measured quantities, the controller  12  produces duty cycle commands and supplies the duty cycle commands to the inverter  14 . The inverter  14  produces three-phase voltages (e.g., V a , V b , V c ) from the supply potential (V dc ) using the duty cycle commands and drives the PM machine  16  with the three-phase voltages. 
     In one embodiment, the inverter  14  converts the supply potential (V dc ) into an AC voltage, based on the duty-cycle commands, which is used to drive the PM machine  16 . The inverter  14  can also vary the amount of AC voltage applied to the PM machine  16  (e.g., the inverter  14  can vary the voltage using pulse width modulation (PWM)), thus allowing the controller  12  to control the PM machine current. For example, the amount of voltage that the inverter  14  applies to the PM machine  16  may be indicated by a modulation index, and the PWM may be established between pre-determined modulation index limits. 
     The controller  12  comprises a processor  18 , a processor memory  20 , a machine properties memory  22 , an input buffer  28 , an output buffer  24 , and a temporary memory  26  coupled to one another. The measured quantities are received by the input buffer  28  and may be stored in the machine properties memory, processor memory, or temporary memory  26  during operation of the controller  12 . The controller  12  executes one or more programs (e.g., to optimize current commands for a predetermined control parameter, to account for over-modulation region operation of the permanent magnet machine, or the like) to determine any precursor elements (e.g., modified current commands, voltage commands, torque commands, or the like) used in determining the duty cycle commands. 
     In an exemplary embodiment, the controller  12  is partitioned into one or more processing modules that are associated with one or more of the controller operations. For example, the maximum torque production capability of the PM machine  16  is useful for establishing performance criteria of various components of the drive system  10  and for operating the drive system  10  to meet such performance criteria. The operating temperature of the drive system  10  may vary, and this temperature variation can affect the strength of the permanent magnet (i.e., associated with the PM machine  16 ). Thus, the controller  12  determines maximum torque limits (e.g., for motoring as well as regenerating operations) or modifies pre-determined maximum torque limits (e.g., determined for a nominal temperature and stored in one or more look-up tables in the processor memory  20 , machine properties memory  22 , or the like) such that the resulting maximum torque limits reflect the torque production capability of the PM machine  16  over a variety of operating temperatures. For example, the resulting maximum torque limits are modified such that the permanent magnet portion of the torque production capability accounts for temperature variations. 
     The controller  12  may include additional modules, such as a current command source, a current regulator, a field-weakening voltage control module, or the like. The current command source produces d-axis and q-axis current commands (e.g., using a current command look-up table that may be stored in the processor memory  20 ) that may be optimized for a predetermined control parameter (e.g., system efficiency). The current command table is preferably optimized for one or more pre-determined control parameters (e.g., system efficiency). The current command table may be derived from any number of models for optimizing desired control parameter(s). The current command table may also be pre-determined based on voltage and current limits of the PM machine  16  so that the current command source applies an appropriate amount of d-axis and q-axis currents to the PM machine to produce a desired torque (e.g., with high efficiency) and maintain current regulation stability (e.g., by controlling the machine terminal voltage). For a particular torque command (T*), rotor speed (ω r ), and supply potential (V dc ), such as collected by the detector  30  and supplied to the controller  12 , an optimized d-axis current command (I* d ) and q-axis current command (I* q ) may be determined from the current command table. 
     The field-weakening voltage control module produces a feedback current for modifying the current command(s), and the current regulator converts the current commands and supplies duty cycles to the inverter  14 , which in turn applies the appropriate voltage (e.g., three-phase voltages) to the PM machine  16  to produce the commanded current for the PM machine. One or more of the various processing modules of the controller  12 , as well as one or more of the operations of the controller  12 , may be embodied as separate components of the drive system  10  or incorporated with another component of the drive system  10  (e.g., the current regulator incorporated with the inverter  14 ). Although the controller  12  is configured to determine maximum torque limits that account for temperature variation, the controller  12  may also regulate the torque output of the PM machine to satisfy a variety of other performance criteria. 
     The PM machine  16  can operate in a powering or motoring mode and in a regenerating mode, although the PM machine  16  may operate in other modes. Motor torque (i.e., the torque produced by the PM machine  16 ) generally comprises two components: a reluctance torque and a magnetic torque. The motor torque (T e ) may be represented by 
                       T   e     =         3   ⁢   P     4     ⁢     (         λ   d     ⁢     i   q       -       λ   q     ⁢     i   d         )         ,           (     eq   .           ⁢   1     )               
where P is the number of poles of the PM machine  16 , i q  is the q-axis current of the PM machine  16 , i d  is the d-axis current of the PM machine  16 , λ d  is the d-axis flux of the PM machine  16 , and λ q  is the q-axis flux of the PM machine  16 . The d-axis flux and q-axis flux may be respectively represented by
 λ d   =L   d   i   d +φ mag    (eq. 2) λ q   =L   q   i   q    (eq. 3), 
where φ mag  is the magnetic flux of the PM machine  16 . Substituting eqs. 2 and 3 into eq. 1,
 
     
       
         
           
             
               
                 
                   
                     T 
                     e 
                   
                   = 
                   
                     
                       
                         3 
                         ⁢ 
                         p 
                       
                       4 
                     
                     ⁢ 
                     
                       
                         ( 
                         
                           
                             
                               φ 
                               mag 
                             
                             ⁢ 
                             
                               i 
                               q 
                             
                           
                           + 
                           
                             
                               ( 
                               
                                 
                                   L 
                                   d 
                                 
                                 - 
                                 
                                   L 
                                   q 
                                 
                               
                               ) 
                             
                             ⁢ 
                             
                               i 
                               d 
                             
                             ⁢ 
                             
                               i 
                               q 
                             
                           
                         
                         ) 
                       
                       . 
                     
                   
                 
               
               
                 
                   ( 
                   
                     eq 
                     . 
                     
                         
                     
                     ⁢ 
                     4 
                   
                   ) 
                 
               
             
           
         
       
     
     A first term of the torque equation (eq. 4) is related to the magnetic torque of the PM machine  16 , and a second term is related to the reluctance torque of the PM machine  16 . In general, as the operating temperature of the PM machine  16  increases, the strength of the permanent magnet decreases resulting in a reduction of the generated magnetic torque. This effect can be modeled with an error (λ d     —     Error ) between a commanded d-axis flux (λ* d ) and an estimated d-axis flux ({circumflex over (λ)} d ) such that
 
λ d     —     Error =λ* d −{circumflex over (λ)} d   ≈L   d0   i*   d +φ mag0   −L   d   i   d −φ mag    (eq. 5),
 
where L d0  is a pre-determined nominal inductance as a function of the d-axis current, i* d  d is the d-axis current command, L d  is the inductance associated with d-axis current, and φ mag0  is a pre-determined normalizing magnetic flux as a function of the q-axis current. The effect of temperature on L d0 i* d −L d i d  is negligible with respect to φ mag0 −φ mag . From this, a magnetic scaling factor (K MagneticScaleFactor ) can be calculated as
 
                     K   MagneticScaledFactor     =     1   -       λ   d_Error       φ     m   ⁢           ⁢   0                   (     eq   .           ⁢   6     )               
where φ m0  is the same as φ mag0 .
 
     In one embodiment, a reactive power based method is used to estimate the d-axis flux ({circumflex over (λ)} d ), although other methods may be also used. Magnetic and reluctance coefficients of the motor torque (T e ) may be calculated using offline data processing for both motoring as well as regenerating modes and as a function of the motor speed (ω r ) of the PM machine  16  and the supply potential (V dc ) of the drive system  10 . 
       FIG. 2  is a plot illustrating the relationship among reluctance motoring coefficients (K reluctance     —     motoring ), the motor speed of a PM machine, and the supply potential of a drive system in accordance with one embodiment.  FIG. 3  is a plot illustrating the relationship among the reluctance regenerating coefficients (K reluctance     —     regen ), the motor speed of a PM machine, and the supply potential of a drive system in accordance with one embodiment. Referring to  FIGS. 1 and 2 , the reluctance motoring coefficients and reluctance regenerating coefficients may pre-determined for the PM machine  16  as a function of the motor speed (ω r ) and the supply potential (V dc ) of the drive system  10 . Both  FIGS. 1 and 2  are determined at the maximum torque operating point of the Pm machine  16 . Additionally, the reluctance motoring coefficients and reluctance regenerating coefficients may be stored in one or more look-up tables in the processor memory  20 , the machine properties memory  22 , or the like. 
     Using the reluctance motoring coefficients (K reluctance     —     motoring ), the reluctance regenerating coefficients (K reluctance     —     regen ), the magnetic scaling factor (K MagneticScaleFactor ), and the torque limits that were pre-determined for the nominal temperature (e.g., the pre-determined motoring torque limits (T Limit     —     Tabl     —     mot ) and the pre-determined regenerating torque limits (T Limit     —     Tabl     —     regen )), estimated maximum motoring torque limits (T max     —     motoring ) and maximum regenerating torque limits (T max     —     regen ) may be determined. The pre-determined motoring torque limits (T Limit     —     Tabl     —     mot ) and the pre-determined regenerating torque limits (T Limit     —     Tabl     —     regen ) may be stored in one or more look-up tables. In one embodiment, the estimated maximum motoring torque limits (T max     —     motoring ) and maximum regenerating torque limits (T max     —     regen ) are calculated as follows,
 
 T   max     —     motoring =( K   reluctance     —     motoring +(1 −K   reluctance     —     motoring )* K   MagneticScaleFactor )* T   Limit     —     Tabl     —     mot    (eq. 7),
 
and
 
 T   max     —     regn =( K   reluctance     —     regen +(1 −K   reluctance     —     regen )* K   MagneticScaleFactor )* T   Limit     —     Tabl     —     regen    (eq. 8).
 
     The estimated maximum motoring and regenerating torque limits may then be used to modify the torque command. The estimated maximum motoring and regenerating torque limits may have a limitation at or near zero motor speed because the d-axis flux estimation has a limitation at or near zero motor speed. The estimated maximum torque limits (T max     —     motoring  and T max     —     regen ) may be transitioned to the pre-determined torque limits (T Limit     —     Tabl     —     mot  and T Limit     —     Tabl     —     regen ) via a transition algorithm. 
     Based on the torque command, the motor speed of the PM machine  16 , and a comparison of the estimated maximum torque limits with the pre-determined torque limits, final maximum torque limits for motoring and regenerating may be determined. In one embodiment, scaled index torques are calculated for d-axis current values and q-axis current values using the final maximum torque limits, the pre-determined torque limits, and the torque command. Thus, the torque command may be modified based on the final maximum torque limits. In a hybrid electric vehicle application, the final maximum torque limits may be provided to a hybrid control processor (HCP). 
       FIG. 4  is a block diagram illustrating a torque limit estimator  48  in accordance with one embodiment of the present invention. Referring to  FIGS. 1 and 4 , the torque limit estimator  48  can be embodied as a portion of an algorithm or a processing module  40  within the controller  12  that determines the estimated maximum torque limits (T max     —     motoring  and T max     —     regen ). One or more of the components of the processing module  40  may be embodied in software or firmware, hardware, such as an application specific integrated circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and memory that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components or combinations thereof. 
     The processing module  40  comprises a first sub-module  42  that calculates the normalizing magnetic flux as a function of the q-axis current command (i q *), a second sub-module  44  that calculates the estimated d-axis flux (λ d     —     est ), a third sub-module  46  that calculates the magnetic scaling factor (K MagneticScaleFactor ), and the torque limit estimator  48 . In one embodiment, the second sub-module  44  determines the estimated d-axis flux (λ d     —est   ) using a reactive power based method which utilizes d-axis and q-axis current commands (i d *,i q *), stationary voltages and currents (V α ,V β  and i α ,i β , respectively), a q-axis flux command (λ q *), and the motor speed (ω r ) as inputs. 
     The output of the first and second sub-modules  42  and  44  are supplied to the third module  46  along with d-axis flux command (λ d *) to calculate the magnetic scaling factor. The torque limit estimator  48  retrieves (e.g., from one or more look-up tables) a motoring torque coefficient (K reluctance     —     motoring ) and a regenerating torque coefficient (K reluctance     —     regen ) based on the supply potential (V DC ) and the motor speed (ω r ). In one embodiment, the processing module  40  includes additional sub-modules  50  and  52  that generate magnetic (or reluctance) coefficients as a function of the supply potential (V DC ) and the motor speed (ω r ) for motoring and regenerating operations, respectively. The outputs of the sub-modules  50  and  52  are supplied to the torque limit estimator  48  along with the pre-determined torque limits (T Limit     —     Tabl     —     mot  and T Limit     —     Tabl     —     regen ) from the one or more look-up tables to determine the estimated maximum torque limits for both motoring and regenerating operations (T max     —     motoring  and T max     —     regenerating , respectively). 
       FIG. 5  is a block diagram illustrating a torque command adjustor  68  in accordance with one embodiment of the present invention. Referring to  FIGS. 1 ,  4 , and  5 , the torque command adjustor  68  can be embodied as a portion of an algorithm or a processing module  60  in the controller  12  that determines a modified torque command (Final_TrqCmd) using the estimated maximum torque limits. One or more of the components of the processing module  60  may be embodied in software or firmware, hardware, such as an application specific integrated circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and memory that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components or combinations thereof. 
     The processing module  60  comprises the transition sub-module  62  and the torque command adjustor  68 . The estimated maximum torque limits and the pre-determined torque limits are supplied to the transition sub-module  62 . For example, the estimated maximum torque limits (T max     —     motoring  and T max     —     regenerating ) are supplied to the transition sub-module  62  from the torque limit estimator  48 , and the pre-determined torque limits (T max     —     mot  and T max     —     reg ) are retrieved from one or more look-up tables. The transition sub-module  62  utilizes the torque command (TorqueCmd) and the motor speed (Speed) to determine the final maximum torque limits for motoring and/or regenerating. In a hybrid electric vehicle embodiment, this final maximum torque limit is supplied to the HCP and torque command adjustor  68  calculates the scaled index torque for d-axis and q-axis current look-up tables using the torque command from the HCP and the pre-determined torque limits (T max mot  and T max     —     reg ) from the one or more look-up tables. The torque command adjustor  68  thus adjusts the torque command to compensate for variations in the torque produced by the PM machine  16  that are associated with magnet temperature variation. 
       FIG. 6  is a flow diagram of a method  100  for controlling a PM machine in accordance with an exemplary embodiment of the present invention. A d-axis flux of the PM machine is estimated, as indicated at step  105 . Referring to FIGS.  1  and  4 - 6 , the d-axis flux of the PM machine  16  is estimated, for example. In one embodiment, the estimated d-axis flux (λ d     —     est ) is produced using a reactive power based method. A magnetic scale factor (K MagneticScaleFactor ) is determined based on the estimated d-axis flux, a commanded d-axis flux (λ d *), and a normalizing magnetic flux, as indicated at step  110 . In one embodiment, the normalizing magnetic flux (φ mag0 ) is determined, based on the q-axis current command (i q *), prior to determining the magnetic scale factor. A torque coefficient is determined based on a DC voltage of the PM machine and a motor speed of the PM machine, as indicated at step  115 . In one embodiment, at least one of a motoring torque coefficient (e.g., K reluctance     —     motoring ) and a regenerating torque coefficient (e.g., K reluctance     —     regen ) is determined based on the DC voltage (V DC ) of the PM machine  16  and the motor speed (ω r ) of the PM machine. 
     A maximum torque is estimated based on the torque coefficient, the magnetic scale factor, and a pre-determined torque limit, as indicated at step  120 . In one embodiment, the maximum torque of the PM machine  16  is determined based on an error between the commanded d-axis flux (λ d *) and an estimated d-axis flux (λ d     —     est ) of the PM machine  16 . For example, a maximum torque of the PM machine  16  is determined based on an error between the commanded d-axis flux and the estimated d-axis flux. The error represents a variation between a current temperature of the PM machine  16  and a nominal temperature of the PM machine  16  (e.g., the temperature at which the pre-determined torque limits (e.g., T Limit     —     Tabl     —     mot  and T Limit     —     Tabl     —     regen ) were calculated. In one embodiment, a maximum motoring torque (T max     —     motoring ) is estimated based on the motoring torque coefficient (K reluctance     —     motoring ), the magnetic scale factor (K MagneticScaleFactor ), and a stored motoring torque limit (T Limit     —     Tabl     —     mot ). For example, the maximum motoring torque is estimated by calculating
 
 T   max     —     motoring =( K   reluctance     —     motoring +(1 −K   reluctance     —     motoring)*   K   MagneticScaleFactor )* T   Limit     —     Tabl     —     mot ).
 
In another embodiment, a maximum regenerating torque (T max     —     regn ) is estimated based on the regenerating torque coefficient (K reluctance     —     regen ), the magnetic scale factor, and a stored regenerating torque limit (T Limit     —     Tabl     —     regen ). For example, the maximum regenerating torque is estimated by calculating
 
 T   max     —     regn =( K   reluctance     —     regen +(1 −K   reluctance     —     regen )* K   MagneticScaleFactor )* T   Limit     —     Tabl     —     regen).  
 
In another embodiment, the maximum motoring torque and the maximum regenerating torque are both estimated.
 
     A final torque limit is determined (e.g., via the transition sub-module  62 ) based on a comparison of the maximum torque and the pre-determined torque limit, as indicated at step  125 . For example, the maximum torque is selected as the final torque limit if a difference between the maximum torque and the pre-determined torque limit exceeds a pre-determined margin. The torque command (T*) is adjusted based on the final torque limit and the torque command to produce a modified torque command (e.g., Final_TrqCmd) that compensates for magnet temperature variation from the nominal temperature, as indicated at step  130 . In one embodiment, a scaled index torque is calculated for the d-axis current and the q-axis current based on the final torque limit and the torque command. The torque command is then adjusted based on the scaled index torque to compensate for a temperature variation of the PM machine  16  from a nominal temperature. 
     While at least one exemplary embodiment has been presented in the foregoing detailed description, it should be appreciated that a vast number of variations exist. It should also be appreciated that the exemplary embodiment or exemplary embodiments are only examples, and are not intended to limit the scope, applicability, or configuration of the invention in any way. Rather, the foregoing detailed description will provide those skilled in the art with a convenient road map for implementing the exemplary embodiment or exemplary embodiments. It should be understood that various changes can be made in the function and arrangement of elements without departing from the scope of the invention as set forth in the appended claims and the legal equivalents thereof.