POSITION SENSORLESS DRIVE SYSTEM AND METHOD FOR PERMANENT MAGNET MOTORS

A position sensorless drive systems for a permanent magnet motors are disclosed. An embodiment includes a square wave voltage source connectable to an input of a permanent magnet motor. At least one current sensor is connectable to the motor, wherein the current sensor is configured to sense the current in at least one power line to the motor in response to the square wave input to the motor. The position of the rotor relative to the stator may be determined based on the current resulting from the square wave voltage.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description

This patent application claims priority to United States provisional patent application 61/819,267 filed on May 3, 2013 for INITIAL POSITION AND VELOCITY ESTIMATION ALGORITHM FOR SALIENT PERMANENT MAGNET MOTORS which is incorporated for all that is disclosed therein.

BACKGROUND

A permanent magnet motor represents a type of motor where a fixed stator causes rotation of a movable rotor. The rotor typically includes multiple magnets embedded in or connected to the rotor, and the stator typically includes multiple conductive windings. Electrical signals in the windings generate a rotating magnetic field that interacts with the magnets of the rotor, causing the rotor to rotate. Because the stator has multiple windings, the input to the stator, which is the input to the motor, is inductive.

“Sensorless” motor control refers to an approach where one or more characteristics of a motor, such as motor speed or rotor position, are mathematically derived. Sensorless motor control typically avoids the use of separate speed and position sensors that are mechanically attached to a motor, which might detrimentally affect the performance of the motor.

SUMMARY

Position sensorless drive systems for permanent magnet motors are disclosed. An embodiment includes a square wave voltage source that is connectable to an input of a permanent magnet motor. At least one current sensor is connectable to the motor, wherein the current sensor measures the current in response to the square wave input to the motor. The position of the rotor relative to the stator is determined based on the current resulting from the square wave voltage.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a cross-sectional view of a permanent magnet motor that illustrates the magnetic flux property when an injected voltage is injected in the direction of the north pole and augments the magnetic flux.

FIG. 2 is a block diagram of an embodiment of a sensorless drive system for permanent magnet motors.

FIG. 3 is a cross-sectional view of the motor of FIG. 1 with the rotor in the opposite direction and the resulting magnetic flux property when the injected voltage is injected in the direction of the south pole and decreases the magnetic flux.

FIG. 4 is a diagram showing an embodiment of a square wave voltage injected into the motor of FIGS. 1 and 3 in relation to a pulse width modulated signal used to drive the motor.

FIG. 5 is a set of graphs showing current into and out of the motor when the injected voltage is injected in the direction of the north pole and augments the magnetic flux.

FIG. 6 is a set of graphs showing current into and out of the motor when the injected voltage is injected in the direction of the south pole and decreases the magnetic flux.

FIG. 7 is a block diagram of an embodiment of a motor controller.

FIG. 8 is a graph showing the relationship between the estimated and real dq planes in the motor of FIG. 1.

FIG. 9 shows an embodiment of average inductance, n, and differential inductance, ΔL, in the d axis of the motor of FIG. 1.

FIG. 10 is block diagram of an embodiment of the speed and position observer of

FIG. 7.

FIG. 11 is a block diagram of an embodiment of the dq/abc device of FIG. 7.

FIG. 12 is a block diagram of another embodiment of the dq/abc device of FIG. 7.

FIG. 13 is a block diagram describing an embodiment for determining the position of the rotor in the motor of FIGS. 1 and 3.

DETAILED DESCRIPTION

Sensorless drive systems and methods of driving salient motors or permanent magnet motors that overcome the above-described problems are described herein. The systems and methods that are used vary slightly depending on the speed of the motor. When the motor is stationary, or more specifically, when the rotor is stationary relative to the stator, the position of the rotor is determined by injecting a square wave voltage into the motor and measuring the location and direction of magnetic flux. When the motor is operating at low speed, the rotor position is determined by injecting or superimposing a square wave onto a driving voltage of the motor and measuring reflected current. When the motor is operating at high speed, conventional systems and methods may be used to determine the position of the rotor. The systems and methods for determining the position of a stationary rotor will be described followed by descriptions of systems and methods for determining the position of a slow moving rotor.

A cross-sectional view of an embodiment of a permanent magnet motor 100 is shown in FIG. 1. The motor 100 has a fixed stator 102 and a rotatable rotor 104 that rotates relative to the stator 102. A permanent magnet or a plurality of permanent magnets are fixed to the rotor 104. In FIG. 1, the permanent magnet is noted by its poles of north and south. The stator 102 has a plurality of teeth 108 that extend to locations proximate the rotor 104. The teeth 108 are wound by coils 110 that create magnetic fields in the teeth 108 when current passes through the coils 110. The rotor 104 rotates as the magnetic field in the stator 102 is changed so as to attract or repel the magnets in the rotor 104. Therefore, by controlling the current input to the motor 100, which is input to the stator 102, the speed and torque of the motor 100 is controlled.

The maximum torque of the motor 100 is generated when the position of the input current waveform is perpendicular to the position of the flux waveform in the rotor 104. For permanent magnet motors, such as the motor 100, the flux position is equal to the rotor position. As a result, the maximum torque is achieved in the motor 100 if the instantaneous position of the rotor 104 is known so that the input current can be positioned accordingly. By using the devices and methods disclosed herein, the position of the rotor 104 is quickly determined, which enables a motor controller to maximize the torque output of the motor 100.

An embodiment of a sensorless drive system 200 for salient motors or permanent magnet (PM) motors that overcomes the above-described problems is shown in FIG. 2. There are several types of motors that can be referred as salient motors, such as surface mount PM motors with saturation-induced saliencies or teeth on their rotors, and interior PM motors with magnets buried in their rotors. The system 200 drives the motor 100 using a power source 204 that is coupled to an input 206 of the motor 100. In some embodiments, the power source 204 is a voltage source. A square wave generator 210 generates a square wave voltage VINJ that is added to the input 206 by way of an adder 212. A current analyzer 214 analyzes the current reflected from the motor 100. The reflection is a result of the square wave voltage VINJ being injected into the coils 110, FIG. 1, which are primarily inductive. In some embodiments, the second order harmonics of the square wave voltage VINJ generated by the square wave generator 210 are reflected from the motor 100 and are analyzed by the current analyzer 214. A position observer 216 determines the position of the rotor 104 based on the analysis of the reflected current. In some embodiments, the position observer 216 also determines the velocity of the rotor 104, FIG. 1, relative to the stator 102.

The description commences with determining the position of the rotor 104 when it is stationary. The rotor 104 will be measured to be at an angle relative to the stator 102, however, the polarity of the motor 100 or rotor 104 must also be known. Additional reference is made to FIG. 3, which shows the motor 100 of FIG. 1 with the rotor 104 in the opposite direction, which is referred to as having the opposite polarity. More specifically, the rotor north/south pole direction of FIG. 1 is opposite that of FIG. 3. The angle of the rotor 104 relative to the stator 102 in both configurations of the motor 100 will be calculated as the same. The methods described herein determine the polarity of the motor 100 in addition to the angle of the rotor 104 relative to the stator 102.

In order to determine magnet polarity in the motor 100, the square wave voltage VINJ is injected in the d-axis, which is also referred to as the direct axis. The motor 100 has two axes, the d-axis and the q-axis. Current commands are generated for each axis to operate the motor 100. The d-axis is used to control the magnetizing flux of the motor 100 and the q-axis is used to control the torque of the motor 100.

The injected square wave voltage VINJ either augments or detracts the flux in the motor 100, which increases or decreases the reflected wave from the motor 100 that is caused by the inductance of the coils 110. Accordingly, the reflected wave that results from the injected square wave voltage VINJ contains the magnetic polarity information. By analyzing the reflected alternating waveform over a time average, the polarity is determined, which is indicative of the position of the rotor 104. The magnetic polarity is identified, as described in greater detail below, based on the flux saturation reflected current resulting from the square wave voltage injection VINJ. By using a time average method, the initial position estimation of the rotor 104 is insensitive to the current measurement offset and signal-to-noise ratio. In some embodiments, low square wave injection voltage magnitude is used, which results in reduced injection induced losses. In some embodiments, the methods described herein can accurately estimate the initial position of the motor 100 with a 1.088 (Lq/Ld) saliency ratio by utilizing 26% DC bus voltage for injection. The saliency ratio is defined as the inductance in the q-axis divided by the inductance in the d-axis. It is this difference in inductance that is used to determine the polarity.

In the embodiments of the controller 200 described herein, the power source 204 uses pulse width modulation (PWM) to drive the motor 100. FIG. 4 shows an embodiment of an injected square-wave voltage VINJ with respect to a PWM pattern. The PWM operates or switches at a first frequency, such as 10-kHz, which is shown by the arrows in FIG. 4. The injected square wave voltage VINJ is at a second frequency, which is typically lower than the PWM switching frequency. In the embodiment of FIG. 4, the second frequency is half of PWM first frequency, so the frequency of the injected voltage VINJ is 5-kHz in the example provided above. FIG. 4 also shows the injection reflected current IINJ in the d-axis that results from the injected voltage VINJ. Because the input to the motor 100 is inductive, the injected current IINJ is the integral of the injected voltage VINJ.

In order to determine the position of the rotor 104, the injected voltage VINJ is injected in the direction of an estimated d-axis. Depending on the position of the rotor 104, the injected voltage VINJ will either augment or detract the magnetic flux λ of the motor 100 as described in greater detail below. As described above, FIGS. 1 and 3 are schematic cross sectional embodiments of the motor 100 in two configurations. In the configuration of the motor 100 of FIG. 1, the rotor 104 is oriented with the south pole to the left and in FIG. 3, the south pole is oriented to the right.

The polarity is identified based on the different saturation conditions between the north and south poles of the rotor 104 relative to the stator 102. FIG. 1 illustrates the magnetic flux property when the injected voltage VINJ is injected in the direction of the north pole. As shown in FIG. 1, the magnetic flux km resulting from the injected voltage VINJ augments the magnetic flux of the motor λPM. The augmented magnetic flux λ (λPMINJ) drives the coils 110 on the stator teeth 108 further into saturation, which lowers the inductance in the motor 100. By contrast in FIG. 3, the injected voltage VINJ is injected in the direction of the south pole, which detracts or subtracts from the magnetic flux of the motor λPM. The result is an overall magnetic flux λ of λPMINJ. The decrease in the overall magnetic flux λ leads the stator teeth 108 out of saturation, which increases the inductance of the motor 100.

As shown by the graphs in FIG. 4, when the square wave injected voltage VINJ is injected into the motor 100, a nearly triangular current ILINEAR results because the impedance of the motor 100 is dominant. The current ILINEAR of FIG. 4 does not account for the increased or decreased inductance caused by the injected flux λINJ. FIG. 5 shows three graphs of the current associated with the motor 100 when the injected voltage VINJ is injected in the direction of the north pole and augments the magnetic flux λ as shown in FIG. 1. Graph A of FIG. 5 shows the ideal injected current ILINEAR that would occur without the magnetic flux λ affecting the inductance of the motor 100. Graph B illustrates an example of the saturation current IDSAT that occurs due to the saturation of the stator 102. Graph C shows the injected current IINJ when the injected voltage VINJ is injected in the direction of the north pole. As shown in graph C, the injected current IINJ has a slightly positive offset during the positive portion of its period. The positive offset is caused by the saturation of the stator 102, which causes the absolute value of the maximum peak injection current of IINJ to be slightly greater than that of minimum peak injection current IINJ. In the example of graph C, the injection current IINJ has a maximum value of IMAX and a minimum value of IMIN. The average of IMAX and IMIN is positive indicating that the injected current IINJ is flowing from south to north, which indicates that the polarity of the rotor 104 is in the position shown in FIG. 1.

The opposite occurs when the injected current IINJ is injected in the direction of the south pole as shown by the motor configuration of FIG. 3. The graphs of FIG. 6 show the currents resulting from the injected voltage VINJ. Graph A shows the linear current ILINEAR, which is the same as the linear current of FIG. 5. As shown in graph B, the current IDSAT induced by the injected voltage VINJ is slightly negative. The negative current IDSAT causes the negative peaks of the injected current IINJ to have negative offsets as shown in graph C. Therefore, the average of the values of IMAX and IMIN will be negative indicating that the injected current IINJ is flowing from north to south, which indicates the polarity of the rotor 104 is as shown in FIG. 3.

At this point, the polarity of the rotor 104 relative to the stator 102 is known. The following description focuses on the rotational position of the rotor 104 relative to the stator 102. Additional reference is made to FIG. 7, which is a block diagram of a motor controller 700. The motor controller 700 of FIG. 7 is a more enhanced version of the motor controller 200 of FIG. 2. The controller 700 supports the use of field-oriented control (FOC), which generally includes controlling the voltages provided to the motor 100 while representing those voltages with a vector. The motor 100, as a three-phase, time-dependent and speed-dependent system, can be transformed via projection into a two-coordinate time-invariant synchronous system. As described above, the two coordinate axes are referred to as the d and q axes. The motor 100 is controlled by generating ide* and iqe* current commands (sometimes referred to as “currents”) for the d and q axes, respectively. The ide* current command is used to control the magnetizing flux of the motor, and the iqe* current command is used to control the torque of the motor 100. These current commands are then converted to vde* and vqe* voltage commands (sometimes referred to as “voltages”) for the d and q axes, respectively. The vde* and vqe* voltage commands define a voltage vector that is used to generate a three-phase voltage for the motor 100 as described in greater detail below.

The controller 700 receives a command speed signal ωe* that is input to an adder 704. The adder 704 also receives an estimated speed signal {circumflex over (ω)}e that represents feedback identifying an estimate of the actual speed of the rotor 104 relative to the stator 102, which is referred to as the speed of the motor 100. The adder 704 outputs a difference between these signals, which identifies the error between the commanded speed signal ωe* and the estimated speed signal {circumflex over (ω)}e. The adder 704 includes any suitable circuit for combining signals.

A speed controller 706 receives the output of the adder 704 and uses the error identified by the adder 704 to generate the current command iqe* to control the torque of motor 100. The current command is proportional to the output of the adder 704 and a speed setting set by the speed controller 706. The speed controller 706 includes any suitable circuit or device for converting a speed error into a current command. Another adder 708 combines the current command iqe* with a feedback signal iqfe, which represents a measurement of the actual current in the q axis. The adder 708 generates an output identifying the difference or error between the feedback signal iqfe and the current command iqe*. The adder 708 includes any suitable circuit for combining signals.

A current regulator 710 receives the output of the adder 708 and uses the output of the adder 708 to generate the voltage command vqe* for the motor 100. The current regulator 710 includes any suitable circuit for converting a current into a voltage command. An adder 712 combines a current command ide* with a feedback signal idfe*, which represents a filtered measurement of the actual current in the d axis. The adder 712 generates an output identifying the difference or error between the feedback signal idf—fe* and the command current ide*. The adder 712 includes any suitable circuit for combining signals. A current regulator 716 receives the output of the adder 712 and uses the error identified by the adder 712 to generate a voltage command vde* for the motor 100. The current regulator 716 includes any suitable circuit for converting a current error into a voltage command and a current.

As shown in FIG. 7, the current regulator 716 generates a voltage command Vde* that is used to power the d-axis of the motor 100. An adder 718 receives the voltage command Vde* and the square wave voltage VINJ generated by the square wave generator 210. The adder 718 mixes the voltage command Vde* with the square wave voltage VINJ. The current ripples resulting from the square wave voltage VINJ are used to determine the position of the rotor 104, FIG. 2, in the motor 100 as described further below. The adder 718 includes any suitable circuit for combining or mixing signals.

A dq/abc device 720 receives the mixed voltage command v and the voltage command vqe* that collectively define the voltage vector for the motor 100. The dq/abc device 720 converts the voltage vector into three-phase voltage signals Va, Vb, and Vc for field oriented control of the motor 100. In some embodiments, the dq/abc device 720 uses direct-quadrature transformations to generate the three-phase voltage signals. In field oriented control, the dq/abc device 720 holds the current vector perpendicular to the rotor flux vector in order to maximize torque. In order to achieve the field oriented control, the rotor position must be known to control the direction of the current vector. The three-phase voltage signals define the voltages to be applied to the coils 110 of the stator 102 in the motor 100. Although not shown, the three-phase voltage signals Va, Vb, and Vc can be converted into PWM signals for driving the motor 100. The dq/abc device 720 includes any suitable circuit or device, including a microprocessor or microprocessor-controlled device, for converting a voltage vector into three-phase voltage signals.

Two current sensors 724 and 726 measure the currents in two of the three-phase current signals. In the embodiment of FIG. 7, the sensors 724 and 726 measure the current in the Va and Vb phases. The sensors 724 and 726 measure the current ripple resulting from the injected square wave voltage VINJ produced by the square wave generator 210. The current ripples are used to estimate the position and speed of the rotor 104. Each of the current sensor 724 and 726 includes any suitable structure or circuit for measuring current.

An abc/dq device 728 receives the current measurements from the sensors 724 and 726 and converts the measurements into the dq domain. In some embodiments, the abc/dq device 728 performs direct-quadrature transforms. In doing the transforms, the abc/dq device 728 generates signals iqeand ide, which represent the measurements of the actual currents in the d and q axes. The abc/dq device 728 includes any suitable circuit or device, including a microprocessor or microprocessor-controlled device, for converting current measurements associated with three-phase voltage signals into currents associated with the dq axes.

The signals iqe and ide are input to a band-pass filter 730. The band-pass filter 730 outputs the low-pass filtered current signals idfe and iqfe to the adder 712 and to the adder 708.

The band-pass filter 730 also outputs high-pass filtered current signals iqhfe hf and iqhfe to an extraction circuit 734. The signals iqfe and id—hhfe are the high frequency components of the current signals iqe and ide and have ripples due to the injected square wave voltage VINJ generated by the square wave generator 210. The band-pass filter 730 filters out other signals and components so that the ripple currents can be analyzed as described below. The band-pass filter 730 includes any suitable circuit for filtering signals.

The iqhfe and idhfe signals are input to the extraction circuit 734 as described above. The extraction circuit 734 performs functions on the signals as described below to yield a signal IΔLERR that contains the position error of the rotor 104. The signal 2IΔLθERR is output to the position observer 216 which determines the velocity {circumflex over (ω)}e and position {circumflex over (θ)}e of the rotor 104. The position {circumflex over (θ)}e is transmitted to both the dq/abc device 720 and the abc/dq device 728 because position information is required in order to fix the current vector perpendicular to the rotor magnet flux vector to yield the maximum torque. The rotor speed {circumflex over (ω)}e is input to the adder 704 as described above. Both the extraction circuit 734 and position observer 216 include circuits or devices for performing the functions described herein to yield their respective outputs. In some embodiments, the extraction circuit 734 and/or the position observer 216 are microprocessors or include microprocessors to perform the mathematical functions described below.

The operation of the controller 700 with respect to determining the position and speed of the rotor 104 at low speed operation will now be described. An embodiment of the injected voltage VINJ as shown in FIG. 4 is superimposed onto the voltage Vde* to create saliency reflected current ripples IRIPPLE. Due to the properties of a square waveform, the frequency of the injected voltage VINJ can increase up to half of the PWM switching frequency. If the PWM switching frequency is 10 KHz, the frequency of the injected voltage VINJ may be as high as 5 KHz. High frequency injection has the advantage of reducing acoustic noises. In this embodiment, the injected voltage VINJ has an amplitude of +−VSQ. The voltage VINJ is defined by equation (1) as follows:

V INJ = ± V SQ = L s × I RIPPLE T = L S ( θ ) × Δ I RIPPLE Δ T Equation ( 1 )

where LS is the saliency-reflected inductance that contains the position information, IRIPPLE is the resulting current ripple, and T is the sampling period of a microprocessor as shown by the arrows in FIG. 4 that performs the analysis of equation (1). The current IRIPPLE contains the position information due to the inductance variation caused by the position of the rotor 104 relative to the stator 102. Based on equation (1), the incremental current ripple ΔIRIPPLE is determined by equation (2) as follows:


ΔIRIPPLE=±ΔTLS−1(θ)VSQ   Equation (2)

The following algorithms describe the extraction of position and speed from the voltage induced current ripple IRIPPLE. As shown in FIG. 7, the square wave voltage is superimposed on the rotor-referred d-axis by way of the voltage Vde*. The superimposed voltage is given by equation (3) as follows:

[ V q e * V d e * ] = [ ± V INJ 0 ] Equation ( 3 )

where e* is the estimated dq frame, e is the real dq frame, and θERR is the corresponding position error of the rotor 104. FIG. 8 shows a graph of the relationship between the estimated and real dq planes and the reference to the error OERR. As described above, the inductances in the coils 110 of the teeth 108 on the stator 102 are dependent on the location of the rotor 104. The inductance matrices are depicted by the terms Ldqe* and Ldqe and are shown by the equations (4) and (5) below, which are also referred to as reference frames:

L dq e * = [ L - Δ L cos ( 2 θ ERR ) - Δ sin ( 2 θ ERR ) - Δ sin ( 2 θ ERR ) L + cos ( 2 θ ERR ) ] Equation ( 4 ) L dq e = [ L - Δ L 0 0 L + Δ L ] Equation ( 5 )

where ΣL and ΔL are the average inductance and differential inductance of the rotor 104. An embodiment of ΣL and ΔL in Lde* is shown by the graph of FIG. 9. The average inductance ΣL is shown by the dashed line. The differential inductance ΔL is the difference from the average inductance ΣL to a peak and a trough. The average inductance ΣL is much greater than the differential inductance ΔL. When θERR is equal to zero, the estimated inductance Ldqe* is equal to the actual or real inductance Ldqe. With additional reference to FIG. 7, the ripple current IRIPPLE is related to the estimated d and q currents Ide* and Iqe* and the estimated voltages Vde* and Vqe* by equation (6) as follows:

I RIPPLE = [ Δ I d e * Δ I q e * ] = Δ TL dq e * - 1 [ V d e * V q e * ] Equation ( 6 )

By further substitution, IRIPPLE is related to the error θERR as shown by equation (7) as follows:

I RIPPLE = Δ T [ L - Δ cos ( 2 θ ERR ) - Δ L sin ( 2 θ ERR ) - Δ L sin ( 2 θ ERR ) L + Δ L cos ( 2 θ ERR ) ] - 1 [ ± V INJ 0 ] I RIPPLE = ± Δ TV INJ [ L + Δ L cos ( 2 θ ERR ) L 2 - Δ L 2 Δ L L 2 - Δ L 2 sin ( 2 θ ERR ) ] ± [ I L I Δ L ( 2 θ ERR ) ] Equation ( 7 )

when θERR≈0, sin(2 θERR) and where

I L = ± Δ TV INJ L + Δ L L 2 - Δ L 2 and I Δ L = ± Δ TV INJ Δ L L 2 - Δ L 2

By superimposing the square wave voltage VINJ on the estimated d-axis voltage Vde* as shown in FIG. 7, saliency-reflected current with the position dependent signal appears in the estimated q-axis, 2IΔLθerr, as shown in equation (7) under the assumption θerr≈0. As a result, the error θerr is manipulated to zero to find the position of the rotor 104, which is the real dq axis in FIG. 8.

The position observer 216 of FIGS. 2 and 7 receives the signal 2IΔLθerr and performs the functions above to determine position and velocity of the rotor 104. A block diagram of an embodiment of the position observer 216 is shown in FIG. 10. The position observer 216 has an input 1002 that receives the signal 2IΔLθerr, which is the reflected current ripples or is proportional to the reflected current ripples generated in response to the injected square wave voltage VINJ. The signal 2IΔLθerr is split and multiplied by Ki and Kp constants in blocks 1004 and 1006. Ki is the integral gain of the motor 100 and Kp is the proportional gain of the motor 100. The signal resulting from the integral gain 1004 is integrated over time by an integrator 1006. The integrated signal resulting from the integrator 1006 and the signal resulting from multiplication by the proportional gain Kp are added by an adder 1008 wherein the result is the estimated velocity of the rotor 104. The measured velocity is determined by multiplying the estimated velocity output by the adder 1008 by the number of pole pairs in the motor 100 using the multiplier 1010. The number of pole pairs refers to the number of pole pairs or pairs of teeth 108 in the stator 102 of the motor 100. The position of the rotor 104 is determined by integrating the estimated velocity over time using the integrator 1012.

The position information is input to the dq/abc device 720, FIG. 7, where it is used to generate the Va, Vb, and Vc signals. By knowing the position of the rotor 104, the Va, Vb, and Vc signals are generated to maximize the torque generated by the motor 100. The velocity information is fed back to the adder 704, FIG. 7.

The controller 700 of FIG. 7 uses two current sensors 724 and 726 to measure the current ripple of the motor 100. An embodiment of a portion of the dq/abc device 720 that uses two current sensors 724 and 726 in the controller 700 is shown in FIG. 11. The dq/abc device 720 controls a plurality of switches or transistors to generate the voltages Va, Vb, and Vc. The respective currents or proportional currents are shown as Ia, Ib, and Ic. The current sensors 724 and 726 of FIG. 7 are shunt resistors wherein the voltages across the resistors are measured to determine the currents Ib and Ic. Using Kirchoff s Law, the sum of the currents is equal to zero for the dq/abc device 720. Therefore, the current Ia is equal to −Ib-Ic.

In some embodiments, a single current sensor is used to determine the current. Reference is made to FIG. 12, which is an embodiment of the dq/abc device 720 that uses a single shunt resistor 1202 to measure the current Isum, which is equal to the sum of Ia, Ib, and Ic. In this embodiment, the abc/dq device 728 may use different algorithms to determine the currents Ia, Ib, and Ic. In some embodiments, the abc/dq device 728 makes the average of the currents Ia, Ib, and Ic equal to the sum Isum.

The methods described above can be summarized by the flow chart 300 of FIG. 13. In block 1302, the process commences with injecting a square wave voltage VINJ into the motor 100. In block 1304, the rotor position is determined by monitoring the input current in response to the injected square wave when the rotor is not moving. When the average current is greater than the differential current, the rotor 104 has a first orientation and when the average current is less than the differential current the rotor 104 has a second orientation.

As described above, a square wave is injected into the motor 100, FIG. 1. In some embodiments, the square wave is a high frequency wave that is in the human audible range of about 12 kHz to about 20 kHz. As a result, audible noise may be generated. The injection induced noise can be minimized by properly selecting the square-wave frequency under different motor operations. When the motor 100 is initially power up at zero speed, the high frequency square-wave voltage is injected to find the motor polarity as well as the rotor position. The motor polarity is identified based on the injection reflected saturation in the motor magnetic material. In order to achieve a measurable saturation effect on the current ripples, the injection frequency may be inverter PWM frequency over 4 or 8 to increase the current ripples for the motor polarity detection. Once the polarity is identified, the injection frequency can be increased and the motor 100 is ready to control. In some embodiments, the minimum injection duration for the motor polarity detection is 200 ms. In some embodiments, the acoustic noise cannot be avoided during the stage of zero speed operation. However, once the motor polarity is identified, the injection frequency can be increased beyond the audible range.

While illustrative and presently preferred embodiments of integrated circuits have been described in detail herein, it is to be understood that the inventive concepts may be otherwise variously embodied and employed and that the appended claims are intended to be construed to include such variations except insofar as limited by the prior art.

Claims

1. A position sensorless drive system for a permanent magnet motor, the motor comprising a rotor and a stator, the drive system comprising:

a square wave voltage source connectable to an input of a permanent magnet motor;
at least one current sensor connectable to the motor, wherein the current sensor is configured to sense the current in at least one power line to the motor in response to the square wave input to the motor;
wherein the position of the rotor relative to the stator may be determined based on the current resulting from the square wave voltage.

2. The drive system of claim 1, wherein the system is adapted to determine the position of the rotor when the rotor is stationary relative to the stator, and further comprising a position observer, wherein the position observer is adapted to determine the position of the rotor relative to the stator based on the current input resulting from the injected square wave.

3. The drive system of claim 1, wherein the position observer is adapted to determine that the rotor is in a first orientation when the current input resulting from the square wave voltage is greater than an average current, and wherein the position observer is adapted to determine that the rotor is in a second orientation when the current input resulting from the square wave voltage is less than the average current.

4. The drive system of claim 1, wherein the position of the rotor relative to the stator may be determined when the rotor is moving relative to the stator by analyzing reflected current ripples resulting from the square wave voltage.

5. The drive system of claim 4, wherein the square wave voltage is adapted to be injected into the d-axis of the motor.

6. The drive system of claim 4, wherein the position of the rotor relative to the stator may be determined by analyzing the current ripples in the q-axis of the motor.

7. A position sensorless drive system for a permanent magnet motor, the motor comprising a rotor and a stator, the drive system comprising:

a voltage input for the q-axis of the motor;
a voltage input for the d-axis of the motor;
a square wave voltage source adapted to generate an injected voltage, to be added to the voltage input for the d-axis of the motor;
at least one current sensor adapted to measure the current in at least one power line to the motor, the current being generated in response to the injected voltage;
an extraction device coupled to the at least one current sensor that is adapted to generate an error signal based on current in the d-axis and current in the q-axis; and
a position observer coupled to the extraction device, wherein the position observer is adapted to determine the position of the rotor based on the error signal.

8. The drive system of claim 7 further comprising a dq/abc device coupled between the first and second inputs and the motor, wherein the dq/abc device is adapted to transform the voltage inputs for the q-axis and the d-axis into a three phase input signal to drive the motor.

9. The drive system of claim 8, wherein the at least one current sensor is adapted to measure the current on at least one of the three phases of the three phase input signal.

10. The drive system of claim 8, wherein the position of the rotor as determined by the position sensor is adapted to be input to the dq/abc device.

11. The drive system of claim 7 further comprising an abc/dq device coupled between the motor and the extraction device, wherein the abc/dq device monitors the current measured by the at least one current sensor and generates currents representative of the current in the d-axis and current in the q-axis.

12. The drive system of claim 11 further comprising a filter coupled between the abc/dq device and the extraction device, wherein the filter is adapted to pass high frequency components of the currents representative of the current in the d-axis and the current in the q-axis to the extraction device.

13. The drive system of claim 13 wherein the filter is adapted to pass low frequency representations of the current in the d-axis and the current in the q-axis, wherein the representation of the current in the d-axis is at least partially adapted to generate the voltage input for the d-axis and wherein the representation of the current in the q-axis is at least partially adapted to generate the voltage input for the q-axis.

14. The drive system of claim 11 wherein the position of the rotor as determined by the position observer is adapted to be input to the abc/dq device.

15. The drive system of claim 7, wherein the currents representative of the current in the d-axis and the current in the q-axis are reflected ripple currents generated in response to the injected voltage.

16. The drive system of claim 15, wherein the currents representative of the current in the d-axis and the current in the q-axis are second harmonics of reflected ripple currents generated in response to the injected voltage.

17. The drive system of claim 7, wherein the error signal is proportional to the amplitude of the injected voltage multiplied by the ratio of the difference in inductance in the q-axis and the d-axis over the difference between the average inductance squared and the difference in inductance in the q-axis and the d-axis squared.

18. The drive system of claim 7, wherein the position observer is adapted to generate a first signal of the error signal multiplied by the proportional constant of the motor and second signal of the error signal multiplied by the integral constant of the motor and integrated, and wherein the first signal and the second signal are added together.

19. A method of determining the position of a rotor in a permanent magnet motor, the method comprising:

injecting a square wave voltage into the motor;
monitoring the input current in response to the injected square wave when the rotor is not moving, wherein the average current is greater than the differential current when the rotor has a first orientation and wherein the average current is less than the differential current when the rotor has a second orientation.

20. The method of claim 19 further comprising:

measuring current reflected from the motor in response to the square wave when the rotor is rotating at a low speed; and
determining the position of a rotor based on the reflected current.
Patent History
Publication number: 20140327379
Type: Application
Filed: Mar 14, 2014
Publication Date: Nov 6, 2014
Applicant: Texas Instruments Incorporated (Dallas, TX)
Inventors: Shih-Chin Yang (Dallas, TX), David P. Magee (Allen, TX)
Application Number: 14/211,208