Abstract:
A method and apparatus for determining electrical parameters for commissioning a sensor-less permanent magnet synchronous machine uses knowledge of the rotor position to apply balanced pulses along the rotor magnet axis and perpendicular to the rotor magnet axis allowing measurement of q- and d-inductance at multiple current levels without substantial rotor movement.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    The present invention relates to electric motors and, in particular, to permanent magnet synchronous machines (PMSM) and, more particularly, to a method and apparatus for automatically identifying electrical parameters in sensor-less PMSMs. 
         [0002]    Permanent magnet synchronous machines are electric motors having a rotor holding a permanent magnet that may turn about an axis within a stator. The stator holds conductive coils that may be energized to create a rotating magnetic field. The rotating magnetic field is coordinated with the rotor position to draw the rotor along synchronously. 
         [0003]    Simple PMSMs employ power transistors to switch the electrical currents in the stator coils to create the necessary rotating magnetic field. “Sensor-less” PMSMs eliminate the rotor position sensors and deduce rotor position from its effect on the electrical signals used to drive the stator coils. 
         [0004]    Most motor drives for sensor-less PMSMs deduce rotor position using one of two strategies: (1) signal injection methods injecting a high frequency signal into the stator; and (2) model-based methods based on stator terminal voltages and currents. 
         [0005]    In signal injection methods, the rotor position/speed is estimated using a high frequency voltage or current carrier signal superimposed on the fundamental excitation of the stator to track the rotor position. The signal injection method does not need machine parameters; however, it has limitations caused by the extra losses due to the injected high frequency carriers. Therefore, the signal injection sensor-less method should only be used in low speed ranges including zero speed. 
         [0006]    In model-based methods, the rotor position/speed is estimated from the stator voltages and currents based on the fundamental component of the back electromotive force (EMF) or flux linkage. Consequently, most model-based methods fail at low and zero speeds because back-EMF is speed dependent. Further, most model-based methods need motor parameters such as q- and d-axis self-inductance and flux linkage to operate effectively. 
         [0007]    Motor parameters are not only needed for model-based methods but are also important in maintaining: (1) high performance, maximum torque per ampere (MTPA) control in the constant torque region, and (2) high performance, flux weakening control. Saturation effects in the motor parameter of self-inductance (e.g., q-axis self-inductance) are important. 
         [0008]    Ideally motor parameters could be collected automatically during initial commissioning. Current methods to collect these parameters, unfortunately, either are not suitable for sensor-less motors, require knowledge of other machine parameters and are thus not comprehensive, or provide for incomplete collection of the necessary parameters, treating self-inductances as constants. 
       SUMMARY OF THE INVENTION 
       [0009]    The present invention provides an effective parameter estimation system for sensor-less permanent magnet synchronous machines operating during initial commissioning without the need to know other machine parameters. The invention allows stator resistance, d-axis and q-axis self-inductance to all be determined at standstill. Importantly, q-axis self-inductance is determined for a range of current values to accurately model saturation effects. 
         [0010]    Specifically then, the present invention provides a motor drive system having an electronic computer to provide and monitor electrical signals communicated between the motor drive and stator of a sensor-less PMSM, the latter having a permanent magnet rotor with a magnet direction rotatable within the stator. A commissioning program in the motor drive executes on the electronic computer to deduce rotor orientation through the application of electrical signals to the stator and employs the deduced orientation to apply electrical signals at multiple current levels to the stator along the q-axis to determine q-axis self-inductance as a function of q-axis current. The drive then applies current to the stator to rotate the rotor and measure flux linkage of the sensor-less PMSM. The sensor-less PMSM may then be operated using a control algorithm receiving as inputs the q- and d-axis inductance and flux linkage where the control algorithm selects a value of q-axis self-inductance corresponding to an operating q-axis current. 
         [0011]    It is thus an object of the invention to provide a comprehensive and automatic method of determining motor parameters for a sensor-less PMSM. 
         [0012]    It is a further object of the invention to provide within this comprehensive identification of motor parameters, a determination of q-axis self-inductance over a range of q-axis currents, the latter providing accurate accounting for changes in self-inductance needed for a high performance control algorithm. 
         [0013]    The range of q-axis currents may be selected to provide measurements of q-axis self-inductance before saturation and after saturation of components of the sensor-less PMSM. 
         [0014]    It is thus an object of the invention to determine motor parameters that accurately capture saturation effects. 
         [0015]    The step of determining the rotor position may be performed with the rotor substantially stationary. 
         [0016]    It is thus an object of the invention to permit initial parameter determination requiring knowledge of rotor position to be conducted before movement of the motor. 
         [0017]    The measurement of the two-axis self-inductance may be performed with the rotor substantially stationary. 
         [0018]    It is another object of the invention to simplify measurement of q-axis inductance at multiple current levels. 
         [0019]    The program may further deduce stator resistance for the control algorithm by the application of electrical signals to the stator. 
         [0020]    It is thus an object of the invention to minimize the need for user input even of readily obtained motor parameters. 
         [0021]    The stator resistance may be deduced by measuring a current flow under a test voltage applied by a pulse width modulator of the motor drive, the pulse width modulator having a bus voltage, wherein the test voltage is the bus voltage reduced by a pulse width modulation factor and a dead time amount. 
         [0022]    It is thus an object of the invention to permit precise resistance measurements using motor drive circuitry ordinarily not intended for precise open loop voltage production. 
         [0023]    The deduced orientation of the rotor may be employed to rotate the rotor and measure flux linkage. 
         [0024]    It is thus an object of the invention to provide for controlled startup of the motor without the risk of abrupt and unpredictable motion and thus in a manner suitable for commissioning motors already connected to other machinery. 
         [0025]    In determining the motor parameter of self-inductance, the electrical signals applied to the stator along the q- and d-axis may be balanced in opposite polarities to prevent substantial rotor movement. 
         [0026]    It is thus an object of the invention to permit substantial parameter identification before motion of the motor. 
         [0027]    The rotor orientation may be deduced by applying a high frequency signal to the stator to create a rotating magnetic field, and monitoring stator current to determine rotor magnet axis, and applying electrical signals along the d-axis to reveal rotor magnet direction. 
         [0028]    It is thus an object of the invention to permit accurate rotor position determination before motion of the motor in a sensor-less PMSM. 
         [0029]    These particular objects and advantages may apply to only some embodiments falling within the claims and thus do not define the scope of the invention. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0030]      FIG. 1  is a simplified cross-sectional view through a single pole pair permanent magnet synchronous machine of the type suitable for use with the present invention; 
           [0031]      FIG. 2  is an enlarged view of the rotor of  FIG. 1  showing various axes and a rotating magnetic field described in the specification; 
           [0032]      FIG. 3  is a block diagram of an electronic drive for the motor of  FIG. 1  such as may incorporate the present invention; 
           [0033]      FIG. 4  is a flow chart showing the steps implemented by a program in the electronic drive of  FIG. 3  adjacent to simplified representations of the fields applied to the rotor; 
           [0034]      FIG. 5  is a plot of the pulse width modulated output of the electronic drive of  FIG. 3  showing extraction of an effective DC voltage and a steady-state current measurement to deduce rotor resistance; 
           [0035]      FIG. 6  is two graphs, the leftmost graph showing pulses applied along the d-axis to deduce rotor position and d-axis self-inductance and the rightmost graph showing derived d-axis self-inductance; 
           [0036]      FIG. 7  is a figure similar to that of  FIG. 6 , the leftmost graph showing pulses applied to the q-axis to deduce q-axis self-inductance, and the rightmost graph showing q-axis self-inductance as a function of current; and 
           [0037]      FIG. 8  is a block diagram of the control algorithm used by the present invention exploiting the derived parameters. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
       [0038]    Referring now to  FIG. 1 , a sensor-less PMSM motor  10  provides a rotor  12  attached to a rotatable shaft (not shown) for rotation about an axis through the center of the rotor  12  perpendicular to the plane of the figure. The rotor  12  includes a permanent magnet  14  and ferromagnetic flux directors  16 . For clarity, a rotor having a single pole pair (e.g. only a single north and south pole) is shown; however, it will be understood that the present invention is equally applicable to multi-pole rotors. 
         [0039]    The rotor  12  may be surrounded by a stator  18  having one or more coils  20   a ,  20   b , and  20   c  shown here positioned at regular angles of 120° about the rotor  12 . Again additional coils may be provided according to techniques well known in the art for motors having larger numbers of poles. 
         [0040]    Generally, appropriately phased signals may be applied to each of coils  20   a ,  20   b  and  20   c  to produce a rotating magnetic field vector  22  synchronously attracting the rotor  12  to drive the motor  10 . 
         [0041]    Referring now to  FIG. 2 , the permanent magnet  14  of the rotor  12  has a magnetic vector defined by the north pole and one south pole of the permanent magnet  14  and defining both a magnetic axis  34  and a magnet direction  36 , (the latter having a direction, from south to north). A d-axis  34 ′ of the rotor  12  is aligned with the magnetic axis  34  and a q-axis  37  of the rotor is perpendicular to the magnetic axis  34 . The magnetic axis  34  and magnet direction  36  also define a rotor angular position θ measured between an arbitrary stationary reference point and the d-axis. 
         [0042]    Referring now to  FIG. 3 , a motor drive  30  suitable for practicing the present invention may receive command signals at motor control logic  32 , for example position and velocity or acceleration commands, and may regulate these commands into a q and d current I q  and I d  respectively. As is understood in the art, these currents define stator currents that will produce magnetic fields in the q-axis and d-axis directions respectively. In order to effect acceleration and speed control, the motor control logic  32  must receive an indication of rotor position θ. 
         [0043]    The I q  and I d  currents are received by PID controllers (proportional, integral, derivative controllers) or other similar feedback control circuits  40  and  38  respectively, which provide voltage commands to null the error signals for the I q  and I d  currents respectively. 
         [0044]    The error signals may be received by one pole ( 3 ) of a single pole, triple throw switch pair  42 , which, during normal operation, is connected to a vector rotator  44  which, using knowledge of θ (during normal operation), converts the I d  and I q  currents to A, B and C currents corresponding to coils  20   a ,  20   b  and  20   c  described above and more generally to three phases of power provided to the motor  10 . The present invention, in which θ is initially unknown, substitutes a generated value of γ to produce the desired test waveforms to be described. 
         [0045]    These A, B and C currents are received by a pulse width modulator  46  which provides pulse width modulated signals to an inverter  48  which, in turn, provides high power current to the coils  20  and thus to the motor  10  producing the A, B and C currents. 
         [0046]    The current on coils  20  is monitored by current sensors  50  and provided to a vector de-rotator  52  performing the opposite function of vector rotator  44  in converting signals A, B and C into feedback currents I′ d  and I′ q . These feedback currents I′ d  and I′ q  are in turn provided to the feedback control circuits  38  and  40  to complete a feedback control loop as is understood in the art. 
         [0047]    The present invention augments this motor drive  30  through the addition of five blocks that form a position detection system  54 . The first block is a high-frequency injector  56  which may add a signal on top of (or instead of) the drive power provided to the motor  10  producing a high-frequency, low-power rotating magnetic field as will be described. In one embodiment, as shown, the signal from the high-frequency injector  56  is added to the A, B and C voltages after the vector rotator  44 . 
         [0048]    The second block of the position detection system  54  is a pulse injector  58  which is connected to one pole ( 1 ) of switch pair  42  to be connected to the input of vector rotator  44  during resistance and inductance measurement stages of parameter estimation before the rotor  12  is rotating. Generally, the pulse injector  58  is used to apply voltages to the stator coils  20  for the measurement of resistance and self-inductance and for a determination of magnet direction of the rotor  12 . 
         [0049]    A third block of the position detection system  54  is a current monitor  60  receiving the signals taken at current sensors  50 . The current monitor is used in the measurements of stator resistance, self-inductance and flux linkage. The current monitor  60  is also used during application of the high-frequency rotating field to the stator coils  20  from high-frequency injector  56  to determine a magnetic axis signal γ indicating the orientation of the magnetic axis  34  (without direction) as deduced from measurements of the power signals. Generally γ could either equal θ or θ+180 degrees as a result of the fundamental symmetry in saliency of the rotor  12 . 
         [0050]    A fourth block of the position detection system  54  is a magnetic direction analyzer  63  monitoring the feedback current I d  during application of pulses from the pulse injector  58  to determine magnet direction  36 . 
         [0051]    Finally, the fifth block is a rotor position extractor  62  using the magnetic axis signal γ and the magnet direction  36  to deduce θ as will be described. 
         [0052]    Generally the elements of the motor drive  30  will include discrete electrical components, including power semiconductors and the like as well as one or more computer processors executing stored programs to implement functional blocks described. 
         [0053]    Referring now to  FIGS. 3 and 4 , the position detection system  54  may operate according to a stored program having initial process block  64 . During this process block  64 , a high-speed rotational vector from injector  56  is applied to the pulse width modulator  46  and inverter  48  to generate a rotating magnetic field about the rotor  12 . At this time, the rotor  12  is stationary and switch pair  42  is connected to pole ( 2 ) disconnecting the feedback control circuits  38  and  40 . 
         [0054]    Referring momentarily to  FIG. 2 , this high-speed rotational vector  66  has a low-strength and high angular speed such as to not induce rotation in the rotor  12 . As a practical matter, the rotor  12  experiences a slight torque from the projection of the rotational vector  66  on the q-axis, but the direction of torque changes rapidly so that the rotational inertia of the rotor  12  prevents substantial motion. Generally the speed of rotation of the vector  66  will be substantially greater than the normal rotational speed of the motor but at a frequency low enough to prevent substantial inductive attenuation. 
         [0055]    The currents at the coils  20  are monitored by the current monitor  60  to determine the angle of the rotor magnetic axis  34 . Generally, this is done by monitoring the saliency features in the current waveform from the stator which exhibits two peaks when the rotating vector is aligned with the magnet axis  34  in either of two directions over a full motor phase cycle of the vector  66 . A motor phase cycle will be 360° for a single pole pair motor, or N/360° for an N-pole pair motor where generally N is the number of duplications of coils  20   a - 20   c  around the stator. Because there are generally two saliency features for every motor phase cycle, this determination of process block  64  identifies only the magnetic axis  34  (γ) and not the magnet direction  36  (θ). This technique is described in co-pending U.S. application Ser. No. ______ entitled: “Method And Apparatus For Identifying Orientation Of A Stationary Rotor In A Sensor-Less PMSM”, filed ______, assigned to the assignee of the present invention and hereby incorporated by reference. Alternatively, the rotor orientation may be deduced by measuring the stator current response to select voltage pulses as described in U.S. Pat. No. 6,172,498. 
         [0056]    Referring now to  FIGS. 4 and 5 , at process block  67 , the stator resistance is determined by applying a known test voltage  78  to the stator coils  20   a - 20   c  and measuring the current using the current monitor  60 . The test voltage  78  is limited in amplitude and applied along the magnetic axis  34  to minimize rotation of the rotor  12 . Generally, in order to apply the test voltage  78  along the magnetic axis  34 , different voltages must be applied to each of the stator coils  20   a - 20   c  such that the vector sum of the produced fields aligns with the magnetic axis  34 . 
         [0057]    Because the output of the motor drive  30  (provided by pulse width modulator  46  and inverter  48 ) provides for a duty cycle or pulse width modulated waveform  68 , DC steady-state voltages cannot be obtained at the output of the motor drive  30 , however average voltage values and average current values may be used to accommodate this shortcoming. The average applied test voltage  78  may be computed by considering the nominal on-time  70  and off-time  72  of the output waveform from the inverter (controllable in open loop control by the motor drive  30  operating according to the current program), the bus voltage V b  of the motor drive (measured by a connected analog-to-digital converter) and the dead time  74  in the waveform  68 , representing a predetermined delay in the switching of the output transistors intended to prevent opposing transistors from being simultaneously switched on and shorting the bus. These known quantities can be used provide an effective average test voltage  78  applied to the stator  18  being, for example, the bus voltage times the on-time  70  divided by the sum of the on-time  70 , off-time  72  and dead time  74 . 
         [0058]    During the application of the applied test voltage  78 , the current monitor  60  monitors the current  80  at a time t n  after the application of the test voltage  78  when the current  80  has reached a steady-state. The test voltage  78  divided by the steady-state current at time t n  provides stator resistance. This process may be repeated with opposite polarity test voltage  78  and the two values averaged. 
         [0059]    Referring now to  FIGS. 4 and 6 , at succeeding process block  82 , first and second polarity, equal amplitude pulses  84   a  and  84   b  may be applied along the magnetic axis  34 . These pulses may be produced by pulse injector  58  as shown in  FIG. 3  when switch pair  42  is switched to poles ( 1 ). The pulses are applied in sets  86  of four pulses with a first positive polarity pulse  84   a  followed by a second negative polarity pulse  84   b  and then, after a short delay, with a third negative polarity pulse  84   b  followed by a fourth positive polarity pulse  84   a . By pairing pulses  84   a  and  84   b  together, net torque on the rotor  12  is reduced with the second pulse in each pair serving as a current suppression pulse. 
         [0060]    Each of these pulse sets  86  is then repeated if needed. During the application of the pulses  84 , the current monitor  60  determines a current peak  90  (positive and negative) to deduce two pieces of information. First, by comparing the peak  90  associated with the first and second pulse pairs of pulses  84  of each set  86 , the magnet direction  36  may be determined. Generally the current flow in different directions, and hence the peaks  90 , will differ based on saturation of the ferromagnetic components of the stator  18 . This difference in current reveals the magnet direction  36  of the rotor  12  along the magnetic axis  34 . Again, this process is described in greater detail in the above referenced co-pending US application. By making this comparison, actual magnet direction  36  (θ) is known and can be used for starting the motor  10 . 
         [0061]    The second piece of information revealed by the current peaks  90  is the d-axis self-inductance. Generally the self-inductance may be measured by a straight line approximation extending from the initiation of the first pulse of each pair of pulses  84  associated with a peak  90 , to point  90 ′ before the peak  90 , the slope of this line providing a data point  92  in a plot of d-axis self-inductance (L d ) for the current at point  90 ′. Multiple data points  92  for different amplitudes of point  90 ′ provide d-axis self-inductance (L d ) as a function of current. 
         [0062]    Referring now to  FIGS. 4 and 7 , at succeeding process block  94 , a similar process is employed with respect to measurement of q-axis self-inductance. In this case, a pulse set  96  may be applied to the stator coils  20  perpendicular to the magnetic axis  34  consisting of a positive polarity pulse  98   a  followed by a negative polarity pulse  98   b  having twice the area of pulse  98   a , in turn followed by a second positive  98   c  having the same polarity and area as pulse  98   a . Again, the inductance may be determined by a straight line approximation  100  between the start of pulse  98   a  and a current point  90 ′ of the current waveform  93  measured by the current monitor  60 . 
         [0063]    As before, additional current points  90 ′ are then used to provide multiple data points  102  representing q-axis self-inductance (L q ) at different stator currents. In this case, there is a strong functional relationship between q-axis self-inductance (L q ) and current, and thus multiple data points  102  are stored in a lookup table as will be described. 
         [0064]    Referring again to  FIG. 4 , at next process block  104  the motor  10  may be operated to rotate the rotor  12  using a rotating field  66  of a frequency that may capture the rotor  12 . Just before the motor  10  has started, the high-frequency signal of process block  64  is reapplied to the stator coils  20  and used to monitor rotor magnetic axis  34  in the manner described with respect to process block  64  for ongoing sensor-less operation. 
         [0065]    As the motor  10  is rotated at a known frequency, flux linkage (λ m ) may be measured according to the following equation: 
         [0000]    
       
         
           
             
               λ 
               m 
             
             = 
             
               
                 
                   
                     v 
                     q 
                   
                   - 
                   
                     
                       R 
                       s 
                     
                     · 
                     
                       i 
                       q 
                     
                   
                 
                 ω 
               
               - 
               
                 
                   L 
                   d 
                 
                 · 
                 
                   i 
                   d 
                 
               
             
           
         
       
     
         [0066]    where ω is the speed of rotation of the rotor, L d  is the d-axis self-inductance (previously determined), R s  is the stator resistance (previously determined) and v q  and i d  are average q-axis voltage (determined as described above) and average d-axis current monitored by the current monitor  60  during this rotational period. 
         [0067]    Referring now to  FIGS. 4 and 8 , at process block  122  the measured parameters including multiple values of q-axis inductance held in a lookup table  120 , may be provided to a standard motor control algorithm  123  implemented by motor control logic  32  to provide q- and d-axis current commands to the feedback control circuits  38  and  40 . During normal operation of the motor, measured q-axis currents are periodically applied to the lookup table  120  to obtain accurate q-axis self-inductance (L q ) dynamically reflecting actual operating conditions of the motor. 
         [0068]    The present invention has been described in terms of the preferred embodiment, and it is recognized that equivalents, alternatives, and modifications, aside from those expressly stated, are possible and within the scope of the appending claims.