Abstract:
A DC brushless motor includes a rotary actuation shaft having multiple poles. Each of the poles has multiple commutation steps. The DC brushless motor also includes a motor controller capable of controlling rotation of the rotary actuation shaft. The motor controller stores a commutation step map.

Description:
RELATED APPLICATION 
     This application claims priority to U.S. Provisional Application No. 61/447,177, which was filed Feb. 28, 2011. 
    
    
     BACKGROUND 
     The present disclosure is directed toward rotary actuators, and more particularly toward DC brushless motor control for rotary actuators. 
     DC motors for use in rotary actuators are typically brushless DC poly-phase motors. A standard DC motor includes a plurality of motor poles, each of which includes multiple commutation steps (steps within each pole). By way of example a brushless DC three-phase motor includes six motor poles, each of which has six commutation steps. This results in a total of thirty-six commutation steps around the shaft, with each of the commutation steps being approximately ten degrees offset from each adjacent commutation step. Motors of this type are typically controlled by a sensor capable of determining the rotary position of the shaft, and thereby determining the number of and approximate location of commutation steps needed in order to apply a desired rotation. 
     In a standard DC motor, it is assumed that the commutation steps are evenly distributed around the shaft. Known methods for determining how many commutation steps to rotate the shaft in order to achieve desired angle of rotation divide the desired angle of rotation by the assumed angular distance between commutation steps. The resulting integer is the number of commutation steps that the shaft is rotated. If variations are present in the angular distance between commutation steps, then the resulting rotation provides an incorrect location of commutation change, reducing available torque, efficiency, and peak velocity. 
     SUMMARY 
     A method for generating a motor commutation map includes the steps of determining a magnetic center of a current commutation step of a motor and storing the magnetic center in a database, rotating a rotary actuation shaft of said motor to a next commutation step, and determining a magnetic center of said next commutation step of said motor and storing said magnetic center in said database. 
     A method for operating a motor for a rotary actuator includes the steps of determining a current commutation step of a motor, determining a number of commutation steps required to rotate a rotary actuation shaft of the motor a desired angular distance using a commutation step map, and rotating the rotary actuation shaft the determined number of commutation steps. 
     A motor includes a rotary actuation shaft, a plurality of poles, each of which have a plurality of commutation steps about the rotary actuation shaft. A motor controller is capable of controlling rotation of the rotary actuation shaft. The motor controller includes a memory to store a commutation step map. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  schematically illustrates an example DC motor. 
         FIG. 2  illustrates an example method for generating a commutation step map. 
         FIG. 3  illustrates an example method for operating a motor. 
     
    
    
     DETAILED DESCRIPTION 
       FIG. 1  illustrates a DC motor  10  that has a rotary actuation shaft  20  and a motor controller  30 . The rotary actuation shaft  20  position is detectable via a sensor  40  that reports to the controller  30 . The DC motor  10  can be a brushless DC three-phase motor having six magnetic poles, and thirty-six total commutation steps. In prior art systems each of the commutation steps are presumed to be equidistant about rotary shaft. In practical implementations, however, the angular distance between commutation steps can vary as much as +/− one degree or more. This variance results in decreased torque and efficiency in systems using the prior art assumptions. 
     In order to compensate for the variations in magnetic centers of the commutation steps, a commutation step map is generated according to a map generation method illustrated in  FIG. 2 . Initially, the controller  30  (illustrated in  FIG. 1 ) determines the magnetic center of the commutation step that the motor is currently on in a “determine center of current commutation step” step  210 . The magnetic center of the commutation step is determined by applying a current to the motor to pull the rotor into “centered” position, and using a sensor  40  (illustrated in  FIG. 1 ). The sensor  40  detects the exact angular position of the rotary actuation shaft  20 . The sensor  40  may be a resolver or other rotary position sensor. The magnetic centerpoint of the initial commutation step is then stored in a “store centerpoint of commutation step” step  220 . After storing the magnetic centerpoint of the first commutation step, the motor  10  rotates the rotary actuation shaft  20  by one commutation step in a “rotate one step” step  230 . 
     The controller  30  then checks to see if the current commutation step is the commutation step on which the mapping method started (the initial commutation step) in a “determine if current commutation step is initial commutation step” step  240 . If the current commutation step is not the initial commutation step, the process repeats itself beginning with the “determine center of current commutation step” step  210 . If the current commutation step is the initial commutation step, then the commutation map of the motor  10  is completed and stored in a “store commutation map” step  250 . 
     The information in the commutation map is then used to determine the exact angular position at which to switch the motor commutation to induce continued motion and these angular positions are stored in an array or look-up table. The look-up table of commutation positions a/k/a commutation map, is stored in a writable memory of the controller  30 , for example, in one or more databases. When the motor  10  is commanded to rotate, the controller  30  will monitor the position measurement from the sensor  40  and compare this with the locations stored in the table to decide when to activate the next motor winding combination to continue or hold position. Storing this information provides customized calibration for the motor  10  to account for non-uniform distribution of commutation steps and manufacturing variations between systems. 
     The commutation map and the look-up table are used to control the motor  10  for a rotary actuator according to a process illustrated in  FIG. 3 . When the motor  10  receives an instruction to rotate a certain angular distance, or provide a certain amount of torque, a controller  30  determines how to activate the motor windings in proper sequence and appropriate timing to achieve the desired rotation using the look-up table. The controller  30  uses a sensor  40  to determine which commutation step the motor  10  is currently on in a “determine current motor position measurement” step  310 . 
     Once the current position is determined, the controller  30  looks up the exact location of transition between commutation steps in a “look up position of commutation change and compare with measurement” step  320 . The controller  30  then determines exactly when to change the commutation output in order to obtain the desired direction of rotation or torque in the “set commutation outputs to achieve desired direction of rotation and desired torque when position measurement coincides with commutation transition location” step  330 . The controller  30  then causes the motor  10  to rotate the rotary actuation shaft  20  with the proper sequence, at the optimum switching position. Using this process, the controller  30  can compensate for variability in the angular distances between commutation steps, and can thus provide more accurate and efficient rotation of the rotary actuation shaft  20  than the prior art systems. 
     Although an example embodiment has been disclosed, a worker of ordinary skill in this art would recognize that certain modifications would come within the scope of this disclosure. For that reason, the following claims should be studied to determine the true scope and content of this disclosure.