Method of operating a brushless DC motor

Information

  • Patent Grant
  • 7106020
  • Patent Number
    7,106,020
  • Date Filed
    Tuesday, August 30, 2005
    19 years ago
  • Date Issued
    Tuesday, September 12, 2006
    18 years ago
Abstract
Methods and devices for brushless DC motor operation. An example method may include using previously sensed Hall effect sensor transitions to predict a future Hall effect transition, and dividing a time between a most recent Hall effect sensor transition and the predicted Hall effect sensor transition into time increments. The time increments may be used to effect phase advance by selecting a number of time increments to create a time offset for phase advance purposes. The time increments may also be used as a virtual encoder. Devices incorporating controllers and control circuitry for performing like methods are also discussed.
Description
FIELD

The present invention is related to the field of electric motors. More particularly, the present invention is related to brushless DC motors.


BACKGROUND

In a brushed DC motor, the brushes make mechanical contact with a set of electrical contacts provided on a commutator secured to an armature, forming an electrical circuit between the DC electrical source and coil windings on the armature. As the armature rotates on an axis, the stationary brushes come into contact with different sections of the rotating commutator. The commutator and brush system form a set of electrical switches that operate in sequence such that electrical power flows through the armature coil that is closest to the stator, which houses stationary magnets creating forces relative to the coil windings that cause rotation.


A brushless DC motor makes use of control circuitry to operate switches that replace the combination of brushes and electrical contacts on the commutator. While the control circuitry can add to the expense of the brushless DC motor, the elimination of the brushes and commutator reduces maintenance, as there is no wear on an associated brush, and prevents arcing in the motor that can occur as the commutator moves past the brushes. In some examples, a plurality of Hall effect sensors and magnets are disposed on the rotor and armature, with the outputs of the Hall effect sensors used to control current switching.


An example of a brushless DC motor appears in FIGS. 1A–1B. The motor 10, shown in cross section, includes an armature 12 and a rotor 14, with magnets 16, 17 disposed on the rotor 14. Hall effect sensing elements 18 are disposed on the armature 12 to sense the location of the magnets 16, 17. Control circuitry 20 includes Hall interrupt detection block 22 that is coupled to the Hall effect sensors 18 and generates an interrupt or other signal whenever one of the Hall effect sensors 18 transitions, indicating the rotation of the magnets 16, 17. When triggered, the detection block 22 interacts with commutator state circuitry 24 to control changing of the state of output switches 26. Using the output switches 26, the control circuitry 20 can couple energy from line power 28, which typically (though not necessarily) passes through a step-down transformer 30 to the motor 10.



FIG. 1B shows a different cross section of the motor 10, with magnets 16, 17 on the rotor 14, and three coil windings 32, 34, 36 on the armature 12. Usually, during operation, two of the coil windings 32, 34 will be activated while a third coil winding 36 will be grounded. FIG. 2 illustrates the timing of operation. In FIG. 2, a trio of armature coil windings are indicated as A, B, and C, with the state indicated by a “+” (driven by a voltage V), “−” (grounded) or “0” (open circuit). Alternatively, a dual power supply approach would have “+” be a signal of a first polarity, “−” be a signal of a second polarity, and “0” indicate that the winding is grounded. At each Hall effect sensor interrupt 38, the commutator state is changed, and the current flow through two of the coil windings changes. Operation is further illustrated in FIG. 3, which shows operation during a run state. As shown at 40, the control circuitry waits for a Hall effect sensor interrupt or trigger, detects a transition of the output for one of the Hall effect sensors, as shown at 42, and changes commutator state, as shown at 44. The control circuitry then returns to 40. Other tasks may also be performed, but the basic steps are shown. Refinement of this process to improve efficiency and output actuation is desirable.


SUMMARY

The present invention, in a first illustrative embodiment, includes a method of operating a brushless DC motor having a plurality of sensing elements for sensing rotor position with reference to an armature, the rotor position changing to cause sensing events, the DC motor operating by proceeding through a series of commutation states. The illustrative method may comprise extrapolating, using first and second most recent sensing events, a time for a third sensing event, and interpolating a plurality of time increments between the most recent sensing event and the time for the third sensing event. In some embodiments, the steps of extrapolating and interpolating provide data for a virtual encoder indicating rotor position. In some embodiments, the method further includes selecting a time offset, the time offset being a number of time increments. The time offset may be used for providing a phase advance in the brushless DC motor.


Another illustrative embodiment includes a brushless DC motor comprising an armature having electric coils disposed relative thereto, a rotor disposed relative the armature and adapted to rotate relative to the armature in response to a commutation sequence of electric signals delivered to the electric coils, a plurality of location sensors located relative the rotor and the armature for sensing when the rotor is at selected angular positions relative to the armature, and control circuitry adapted to capture signals from the plurality of location sensors and to selectively control the commutation sequence. The control circuitry may be adapted to determine a first time at which at least one location sensor indicates a change of rotor position and a second time at which at least one location sensor indicates a next change of rotor position, extrapolate a third time for a next change of rotor position, and interpolate a plurality of time increments between the third time and the second time. The control circuitry may use the extrapolated third time, and the plurality of time increments, to operate as a virtual encoder indicating rotor position. The control circuitry may be further adapted to select or define a time offset, the time offset comprising a number of the time increments. In some embodiments, the time offset may be used to provide a phase advance for use in the commutation sequence.





BRIEF DESCRIPTION OF THE FIGURES


FIG. 1A illustrates various parts of a typical brushless DC motor;



FIG. 1B shows, in cross section, a portion of a rotor/armature of a brushless DC motor including magnetic driving elements;



FIG. 2 is a timing chart for a brushless DC motor;



FIG. 3 shows, in block form, a method of operating a brushless DC motor;



FIG. 4 is a signal graph showing current lagging voltage when applied to a motor winding;



FIG. 5 is a block diagram for an illustrative method embodiment;



FIG. 6A is a timing chart showing an illustrative method of extrapolation of a future position change in a DC brushless motor;



FIG. 6B is a timing chart showing interpolation of time increments after extrapolation of a future position change in an illustrative method; and



FIG. 6C is a timing chart showing the effects of phase advance and correction of extrapolation in an illustrative method.





DETAILED DESCRIPTION

The following detailed description should be read with reference to the drawings. The drawings, which are not necessarily to scale, depict illustrative embodiments and are not intended to limit the scope of the invention.


As explained above with reference to FIGS. 1–3, a typical brushless DC motor will make use of a plurality of windings disposed on an armature to generate magnetic force causing the rotor to rotate. As shown in FIG. 4, signal application to such windings is not ideal. Specifically, FIG. 4 is a signal graph showing current lagging voltage when applied to a motor winding. Because the winding is inductive, current 52 will lag the voltage signal 50, such that a voltage applied at a first time 54 will not cause a desired level of current flow until a later time 56. The time at which magnetic forces reach their maximum is delayed, and is not achieved at an ideal physical juxtaposition of the rotor and armature. Particularly, at higher speeds, efficiency is reduced, causing a reduction in output power.


One solution to this dilemma is to introduce a phase advance in the applied voltage. By applying the voltage at an earlier time, the current may be introduced such that magnetic forces between the armature coils and the rotor magnets coincide with physical positions of each that are closer to ideal. Various systems for applying a phase advance range from simple to quite complex.


In some more complicated (and, often, expensive) motors, an encoder is coupled to the shaft along with an optical element for reading the encoder. By use of the encoder, the rotor position can be calculated at all times. The use of the encoder then allows for application of sinusoidal driving signals instead of the simple block signals described with reference to FIGS. 2 and 4.



FIG. 5 is a block diagram for an illustrative method of the present invention. The illustrative method beings with a change in commutator state, as shown at 70. After the commutator state is changed at 70, a timer is reset, as shown at 72. A time for a next Hall effect sensor state change is then estimated. For example, given a first time that has elapsed between two (or more) most recent Hall effect sensor state changes, it may be estimated that a second time, sometimes equal to the first time, will elapse before a next Hall effect sensor state change.


Next, a plurality of time increments are created, as shown at 76. The time increments divide the time between a most recent Hall effect sensor state change and an estimated time for a next Hall effect sensor change. In some embodiments, the time increments may be equally sized, but this is not required. In an illustrative example, eight time increments are created. In other examples, four-to-forty-eight time increments may be defined, though other numbers of time increments may be defined depending upon various factors such as system timer capacity and desired resolution.


Next, as shown at 78, a phase advance is selected. In an illustrative embodiment, the phase advance is selected as an integer number of time increments, but this is not required. The phase advance may vary in amplitude depending upon the speed of the motor, and may vary in sign depending upon the direction the motor is spinning. For example, the following are illustrative for a system in which eight time increments are defined:


For Angular Velocity (AV)<−1500 rpm, phase advance=−8


For −1500<=AV<−900 rpm, phase advance=−6


For −900<=AV<−600 rpm, phase advance=−5


For −600<=AV<−300 rpm, phase advance=−4


For −300<=AV<−150 rpm, phase advance=−2


For −150<=AV<150 rpm, phase advance=0


For 150<=AV<300 rpm, phase advance=2


For 300<=AV<600 rpm, phase advance=4


For 600<=AV<900 rpm, phase advance=5


For 900<=AV<1500 rpm, phase advance=6


For 1500<=AV, phase advance=8


The scales may vary depending on particular device size, structure and performance. After the phase advance is selected, the method waits for the estimated time of change less a time offset calculated from the phase advance, as noted at 80. When the time of change less the time offset is reached, the method recycles by changing commutator state, as shown at 70. Alternatively, the method may include providing an interrupt if there is a Hall effect sensor change, as shown at 82. This may occur, for example, if the motor is accelerating due to an increase in applied voltage.



FIG. 6A is a timing chart showing an illustrative method of extrapolation of a future position change in a DC brushless motor. Outputs are shown for Hall effect sensors A, B, C, with the chart taking into account a current time, t1, and showing a past time, t2. Times t1 and t2 are defined because Hall effect sensors A and C, respectively, changed outputs at those times. An estimated time for a next Hall effect sensor transition, te, is also shown. The predicted or estimated time te is shown occurring after a duration of time, X, that is, in the illustrative example, equal to the duration of time between t1 and t2. If the motor is accelerating or decelerating, this may be accounted for by adjusting the duration of time, X, by decreasing X (if accelerating) or increasing X (if decelerating).



FIG. 6B is a timing chart showing interpolation of time increments after extrapolation of a future position change in an illustrative method. As can be seen, the duration of time, X, from FIG. 6A has been divided into a number of time increments 102. The time increments 102 may be of equal duration, but this is not required. While twelve time increments 102 are shown in FIG. 6B, any other suitable number of time increments may be defined.



FIG. 6C is a timing chart showing the effects of phase advance and correction of extrapolation in an illustrative method. A number of time increments are shown at 104, leading up to the estimated time, te, of the next Hall effect sensor transition. A number of time increments 106 have been selected as a time offset to provide phase advance. It can be seen from voltage signal 110 that the voltage applied to one or more of the coils used in the associated electric motor is changed at a time preceeding te by the selected time increments 106. The result is shown by line 112, which, schematically, represents the current flow that lags the voltage 110. Because of the phase advance, the current 112 reaches its maximum level at approximately te.


While te was the estimated time of a next Hall effect sensor transition, the actual time of such a transition can be seen at 108. The use of an estimated time of transition may introduce some error. However, as indicated above in the illustrative method of FIG. 5, the error may be reset to zero after each step in the commutation sequence by starting over with a new estimated time of a next Hall effect sensor transition based on previous sensed transitions.


The use of the extrapolation and interpolation operates to allow a virtual encoder. Specifically, the rotor position can be “known” or estimated at many positions, rather than just the six commutation cycle positions. This additional data may then be used to provide a sinusoidal driving signal without requiring the expense and mechanical difficulty of adding an encoder and optical or other encoder readers.


Those skilled in the art will recognize that the present invention may be manifested in a variety of forms other than the specific embodiments described and contemplated herein. Accordingly, departures in form and detail may be made without departing from the scope and spirit of the present invention as described in the appended claims.

Claims
  • 1. A method of operating a brushless DC motor having a plurality of sensing elements for sensing rotor position with reference to an armature, the rotor position changing to cause sensing events, the DC motor operating by proceeding through a series of commutation states, the method comprising: extrapolating, using first and second most recent sensing events, a time for a third sensing event; andinterpolating a plurality of time increments between the most recent sensing event and the time for the third sensing event.
  • 2. The method of claim 1 wherein a sensing event occurs when a first magnetic element disposed on the rotor passes from a first position in which it is adjacent a first coil disposed on the armature to a second position in which the first magnetic element and the first coil are no longer disposed adjacent one another.
  • 3. The method of claim 1 further comprising selecting a time offset by selecting a number of time increments.
  • 4. The method of claim 3 further comprising using the time offset to perform a phase advance while advancing through the sequence of commutation states.
  • 5. The method of claim 3 wherein the step of selecting a time offset is performed such that, at greater motor speeds, a greater time offset is selected.
  • 6. The method of claim 1 further comprising using the interpolated time increments to operate as a virtual encoder, and applying a sinusoidal drive signal to the brushless DC motor.
  • 7. A method of estimating a position of a rotating element of a brushless DC motor having an armature and a rotor, the method comprising: providing a plurality of sensors for sensing the position of the rotor, the sensors sensing relative motion between the sensors and one or more sensed elements, wherein one of the plurality of sensors or the one or more sensed elements is disposed relative the rotor and the other is disposed relative the armature;observing a first time at which the rotor is in a position relative the armature as indicated by a changing output of at least one of the plurality of sensors;observing a second time, after the first time, at which the rotor is in a position relative the armature as indicated by a changing output of at least one of the plurality of sensors;extrapolating, from the positions of the rotor at the first time and the second time, a likely position for the rotor at a third time; anddefining, between the third time and the second time, a plurality of time increments, wherein rotor position is estimated between the second time and the third time by reference to the plurality of time increments.
  • 8. The method of claim 7 wherein the motor operates using a commutation sequence, and the third time is calculated such that the likely position of the rotor is a position in which a change occurs relative to the commutation sequence.
  • 9. The method of claim 7 further comprising performing a step in the commutation sequence at the third time.
  • 10. The method of claim 7 further comprising selecting a time offset, the time offset being a number of time increments.
  • 11. The method of claim 10 further comprising performing a step in the commutation sequence using the time offset to provide a phase advance function.
  • 12. The method of claim 10 wherein the time offset includes a greater number of time increments when the rotor has a greater angular velocity than when the rotor has a lesser angular velocity.
  • 13. The method of claim 7 further comprising providing a sinusoidal drive voltage by using the plurality of time increments to estimate rotor position as a virtual encoder.
  • 14. A brushless DC motor comprising: an armature having electric coils disposed relative thereto;a rotor disposed relative the armature and adapted to rotate relative to the armature in response to a commutation sequence of electric signals delivered to the electric coils;a plurality of location sensors located relative the rotor and the armature for sensing when the rotor is at selected angular positions relative to the armature; andcontrol circuitry adapted to capture signals from the plurality of location sensors and selectively control the commutation sequence;wherein the control circuitry is adapted to:determine a first time at which at least one location sensor indicates a change of rotor position and a second time at which at least one location sensor indicates a next change of rotor position;extrapolate a third time for a next change of rotor position; andinterpolate a plurality of time increments between the third time and the second time.
  • 15. The motor of claim 14 wherein the control circuitry is also adapted to select a time offset comprising a number of the time increments.
  • 16. The motor of claim 15 wherein the time offset comprises a greater number of the time increments when the rotor is moving at a greater angular velocity than when the rotor is moving at a lesser angular velocity.
  • 17. The motor of claim 16 wherein the control circuitry performs steps to advance the commutation sequence at a time separated from the third time by the timer offset.
  • 18. The motor of claim 16 wherein the control circuitry performs steps to use the timer offset to perform a phase advance function.
  • 19. The motor of claim 15 wherein the control circuitry performs steps to advance the commutation sequence at a time separated from the third time by the timer offset.
  • 20. The motor of claim 14 wherein the control circuitry is adapted to use the defined time increments to perform virtual encoding of rotor position and provide a sinusoidal driving signal.
US Referenced Citations (128)
Number Name Date Kind
3937974 Lafuze Feb 1976 A
3959702 Godwin et al. May 1976 A
4027216 Rozek May 1977 A
4038589 Heyne et al. Jul 1977 A
4139807 Hucker Feb 1979 A
4295085 Lafuze Oct 1981 A
4311950 Goldin et al. Jan 1982 A
4315202 Dawson et al. Feb 1982 A
4364004 Bourbeau Dec 1982 A
4393597 Picard et al. Jul 1983 A
4422028 Godwin et al. Dec 1983 A
4501155 Garritano Feb 1985 A
4546293 Peterson et al. Oct 1985 A
4591774 Ferris et al. May 1986 A
4591775 Niissel et al. May 1986 A
4608527 Glennon et al. Aug 1986 A
4618808 Ish-Shalom et al. Oct 1986 A
4651068 Meshkat-Razavi Mar 1987 A
4656410 Shibata Apr 1987 A
4659973 Stich Apr 1987 A
4701839 McNally et al. Oct 1987 A
4704569 Mallick, Jr. et al. Nov 1987 A
4751438 Markunas Jun 1988 A
4818908 Tamae et al. Apr 1989 A
4825138 Platzer et al. Apr 1989 A
4835448 Dishner et al. May 1989 A
4839579 Ito et al. Jun 1989 A
4841202 Dishner et al. Jun 1989 A
4888533 Gotoh et al. Dec 1989 A
4897583 Rees Jan 1990 A
4937508 Rozman Jun 1990 A
4939441 Dhyanchand Jul 1990 A
4949021 Rozman et al. Aug 1990 A
5029263 Rozman Jul 1991 A
5038062 Shiraki Aug 1991 A
5047681 Gaillard et al. Sep 1991 A
5053688 Rees Oct 1991 A
5053689 Woodson et al. Oct 1991 A
5097189 Ito et al. Mar 1992 A
5113125 Stacey May 1992 A
5168202 Bradshaw et al. Dec 1992 A
5200661 Shramo et al. Apr 1993 A
5202610 Frye et al. Apr 1993 A
5274315 Finocchi Dec 1993 A
5384527 Rozman et al. Jan 1995 A
5391970 Chaffee et al. Feb 1995 A
5406186 Fair Apr 1995 A
5416397 Mazzara et al. May 1995 A
5416652 Lewis May 1995 A
5420492 Sood et al. May 1995 A
5425165 Shramo et al. Jun 1995 A
5428470 Labriola, II Jun 1995 A
5430362 Carr et al. Jul 1995 A
5449986 Dozor Sep 1995 A
5450999 Scholten et al. Sep 1995 A
5461293 Rozman et al. Oct 1995 A
5488286 Rozman et al. Jan 1996 A
5493200 Rozman et al. Feb 1996 A
5495162 Rozman et al. Feb 1996 A
5495163 Rozman et al. Feb 1996 A
5519546 Lewis May 1996 A
5565750 Padgett Oct 1996 A
5567874 Suzuki et al. Oct 1996 A
5587641 Rozman Dec 1996 A
5594322 Rozman et al. Jan 1997 A
5619085 Shramo Apr 1997 A
5656911 Nakayama et al. Aug 1997 A
5677605 Cambier et al. Oct 1997 A
5710755 Chen Jan 1998 A
5740880 Miller Apr 1998 A
5760707 Katagiri Jun 1998 A
5767643 Pham et al. Jun 1998 A
5777477 Wynn Jul 1998 A
5793180 Maiocchi et al. Aug 1998 A
5796194 Archer et al. Aug 1998 A
5798596 Lordo Aug 1998 A
5850130 Fujisaki et al. Dec 1998 A
5859518 Vitunic Jan 1999 A
5874796 Petersen Feb 1999 A
5912542 Zalesski Jun 1999 A
5912543 Mahr et al. Jun 1999 A
5923728 Ikkai et al. Jul 1999 A
5964455 Catanzarite et al. Oct 1999 A
5986419 Archer et al. Nov 1999 A
5990643 Holling et al. Nov 1999 A
5995710 Holling et al. Nov 1999 A
6002234 Ohm et al. Dec 1999 A
6049194 Nakagawa et al. Apr 2000 A
6075332 McCann Jun 2000 A
6078158 Heeren et al. Jun 2000 A
6114827 Alvaro Sep 2000 A
6181091 Heeren et al. Jan 2001 B1
6222333 Heeren et al. Jan 2001 B1
6236179 Lawler et al. May 2001 B1
6246232 Okumura Jun 2001 B1
6271641 Yasohara et al. Aug 2001 B1
6307336 Goff et al. Oct 2001 B1
6310450 Arrigo Oct 2001 B1
6313601 Kubo et al. Nov 2001 B1
6324085 Kimura et al. Nov 2001 B1
6367337 Schlabach Apr 2002 B1
6373211 Henry et al. Apr 2002 B1
6407524 Endo et al. Jun 2002 B1
6508072 Kanazawa et al. Jan 2003 B1
6524209 Ito et al. Feb 2003 B1
6549871 Mir et al. Apr 2003 B1
6577097 Krefta et al. Jun 2003 B1
6580235 Laurent Jun 2003 B1
6605912 Bharadwaj et al. Aug 2003 B1
6626002 Notohara et al. Sep 2003 B1
6631781 Williams et al. Oct 2003 B1
6647329 Kleinau et al. Nov 2003 B1
6683427 Desbiolles et al. Jan 2004 B1
6686713 Desbiolles et al. Feb 2004 B1
6694287 Mir et al. Feb 2004 B1
6732438 Enzinna May 2004 B1
6741048 Desbiolles et al. May 2004 B1
6801011 Ide Oct 2004 B1
6812667 Yasohara et al. Nov 2004 B1
6826499 Colosky et al. Nov 2004 B1
6828752 Nakatsugawa et al. Dec 2004 B1
6828919 Gold Dec 2004 B1
6900607 Kleinau et al. May 2005 B1
6900613 Hirono May 2005 B1
6911794 Maslov et al. Jun 2005 B1
6914399 Kushion et al. Jul 2005 B1
20050127861 McMillan et al. Jun 2005 A1
20050171777 Moore et al. Aug 2005 A1