Abstract:
Embodiments are directed to a stepper motor and a controller, where the controller measures a parameter associated with a current of the stepper motor prior to support of commanding a step in connection with the stepper motor. That is, the controller commands the step in connection with the stepper motor, measures a parameter subsequent to commanding the step, compares the measurements of the parameter, and determines whether a fault exists with respect to the stepper motor based on the comparison of the measurements.

Description:
BACKGROUND 
     A motor is an important component of an aircraft (e.g., an airplane). A motor, however, may fail. For example, a motor may fail due to an open circuit or stall condition, which may result in an inability to move the motor. 
     One type of motor used in aircraft is a so called stepper motor. A stepper motor is controlled by an external control circuit, such as a microcontroller. To make the motor shaft turn, first, one electromagnet is given power, which makes the rotor magnetically attracted to the electromagnet&#39;s poles. When the next electromagnet is turned on and the first is turned off, the rotor rotates slightly to align with the poles of the next one, and from there the process is repeated. Each of those slight rotations is called a “step” and is made upon the issuance of a step command by the control circuit. 
     Detection of a failed stepper motor is typically based on a position tracking function. Using position tracking results in a delay from a time of the failure until a time that the failure is detected. Moreover, the fault may go undetected until a reposition command (e.g. the next “step command”) is provided. 
     BRIEF SUMMARY 
     In some embodiments, a system comprises a stepper motor, and a controller configured to: measure a parameter associated with a current of the stepper motor prior to commanding a step in connection with the stepper motor, command the step in connection with the stepper motor, measure the parameter subsequent to commanding the step, compare the measurements of the parameter, and determine whether a fault exists with respect to the stepper motor based on the comparison of the measurements. 
     In some embodiments, a method comprises measuring, by a controller, a parameter associated with a current of a stepper motor prior to commanding a step in connection with the stepper motor, commanding, by the controller, the step in connection with the stepper motor, measuring, by the controller, the parameter subsequent to commanding the step, comparing, by the controller, the measurements of the parameter, and determining, by the controller, whether a fault exists with respect to the stepper motor based on the comparison of the measurements. 
     In some embodiments, an apparatus comprises at least one processor, and memory having instructions stored thereon that, when executed by the at least one processor, cause the apparatus to: measure a duty cycle of a pulse width modulation (PWM) associated with a current of a stepper motor prior to commanding a step in connection with the stepper motor, command the step in connection with the stepper motor, measure the duty cycle of the PWM subsequent to commanding the step, compare the measurements of the duty cycle of the PWM, and determine whether a fault exists with respect to the stepper motor based on the comparison of the measurements. 
     Other embodiments of the disclosure are described below. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The present disclosure is illustrated by way of example and not limited in the accompanying figures, in which: 
         FIG. 1  illustrates an exemplary system in accordance with one or more embodiments of the disclosure; 
         FIGS. 2A-2C  illustrate exemplary graphs in accordance with one or more embodiments of this disclosure; and 
         FIG. 3  illustrates an exemplary method in accordance with one or more embodiments of this disclosure. 
     
    
    
     DETAILED DESCRIPTION 
     In accordance with one or more embodiments of the disclosure, a fault associated with a motor may be detected. In contrast to techniques that monitored voltages, embodiments of the disclosure may monitor or control one or more currents, potentially in connection with a pulse width modulation (PWM) function. 
     It is noted that various connections are set forth between elements in the following description and in the drawings (the contents of which are included in this disclosure by way of reference). It is noted that these connections in general and, unless specified otherwise, may be direct or indirect and that this specification is not intended to be limiting in this respect. In this regard, a coupling of entities, components, and/or devices may refer to either a direct connection or an indirect connection. 
       FIG. 1  illustrates an exemplary fault detection system  100 . The system  100  may be associated with one or more applications or environments, such as an aircraft. The system  100  may include one or more motors, such as a motor  102 . The motor  102  may be a stepper motor. The motor  102  may include one or more components or devices, such as one or more mechanical and/or electrical components known to those of skill in the art. In some embodiments the motor  102  may include one or more coils, such as coils  104 . The system may include one or more power supplies, such as a power supply  106 . The motor  102  may be powered by the power supply  106 . 
     The system  100  may include a controller  108 . The controller  108  may include any combination of hardware, software, and/or firmware. In some embodiments, the controller  108  may include one or more processors  110 , and memory  112  having instructions stored thereon that, when executed by the one or more processors  110 , cause the controller  108  to perform one or more methodological acts, such as those described herein. The controller  108  may be coupled to the motor  102  as shown in  FIG. 1 . 
     In some embodiments, the controller  108  may be configured to control a current associated with the motor  102 . For example, the controller  108  may control the current of a stepper motor based on a pulse width modulation (PWM) function. In some embodiments, an electromagnet or coil  104  may be selectively energized or de-energized to facilitate a step in the motor  102 . 
     When a step in the motor  102  is commanded by the controller  108 , a first of the coils  104  might need to de-energize before a second of the coils  104  can be driven or energized. While de-energizing, a current might not flow through a monitor point  116 . In some embodiments, the monitor point  116  may correspond to a node associated with, or coupled to, one or more of the coils  104  as shown in  FIG. 1 . The absence of the current through the monitor point  116  may cause the PWM function to react by increasing a duty cycle. In the event that a coil  104  fails or sustains a fault, there may be no de-energizing period, and accordingly, no increase in the PWM duty cycle. As such, the duty cycle of the PWM function may be monitored to determine whether a fault exists with respect to the motor  102 . 
     The system  100  is illustrative. In some embodiments, one or more of the components or devices may be optional. In some embodiments, one or more additional devices not shown may be included. In some embodiments, the components or devices may be organized or arranged in a manner different from what is shown in  FIG. 1 . 
       FIGS. 2A-2C  illustrate exemplary graphs in accordance with one or more aspects of this disclosure. Each of the graphs of  FIG. 2A-2C  may depict time counts on the vertical axis relative to sample numbers taken from a logic analyzer on the horizontal axis. As shown in  FIGS. 2A-2C , the vertical axis may generally correspond to or include a PWM “on” time as measured in, e.g., microseconds (μs) and may be proportional to a fixed PWM period. The horizontal axis may correspond to PWM periods. 
     As shown in  FIG. 2A , a cycle  202  may be composed of a number of steps. For example, transitions or steps may be included at approximately sample numbers forty-one (41), forty-nine (49), sixty-one (61), and sixty-nine (69). That same pattern of four transitions or steps may repeat itself starting at, e.g., approximately sample number eighty-one (81). 
     Also shown in  FIG. 2A  is a plot of the PWM “on” time  204 . The PWM on time  204  may correspond to a time that a PWM function is active. The PWM on time  204  may be associated with the cycle  202 . For example,  FIG. 2B  is a graph of an individual step in the cycle  202 . As shown in  FIG. 2B , the downward step at sample number ten (10) in the cycle  202  may result in a (local) maxima in PWM on time  204  at approximately sample number sixteen (16). The delay between the commanded step and the maxima may be correlated to a loop time of the PWM function. 
       FIG. 2C  illustrates a graph that may be indicative of a fault, such as a broken coil (e.g., a coil  104 ). For example, in response to steps at approximately sample numbers fifty-six (56) and three-hundred forty-two (342) in the cycle  202 , relatively large transients appear in the PWM on time graph  204 . Conversely, no such transient appears in the PWM on time graph  204  in response to the step at approximately sample number one-hundred ninety-nine (199) in the cycle  202 . The lack of a transient in the PWM on time graph  204  starting at approximately sample number one-hundred ninety-nine (199) may be indicative of a fault. 
     The values shown in  FIGS. 2A-2C  are illustrative. In some embodiments, different counts, samples, or frequencies may be used. 
       FIG. 3  illustrates a method in accordance with one or more embodiments of this disclosure. In some embodiments, the method may execute in accordance with one or more systems, components, or devices, such as those described herein. The method of  FIG. 3  may be used to detect whether a fault exists with a motor (e.g., the motor  102 ). The method may be implemented using hardware, software, firmware, or any combination thereof. The method may be implemented using a controller (e.g., the controller  108 ). 
     In block  302 , a step in a motor may be commanded. The step may correspond to one of a number of steps associated with a full period of rotation of the motor. 
     In block  304 , a duty cycle of a PWM function may be monitored. For example, the duty cycle may be measured. The monitoring of block  304  may be triggered or initiated by the step commanded in block  302 . 
     In block  306 , a determination may be made whether the duty cycle of the PWM function changed in block  304  in an amount greater than a threshold, within a threshold amount of time (or samples). If so (e.g., the “Yes” path is taken out of block  306 ), then flow may proceed to block  302  to prepare for the next step or transition. Otherwise, flow may proceed from block  306  to block  308  (e.g., along the “No” path out of block  306 ), where a fault associated with the motor (e.g., a failed coil) may be declared. 
     The blocks or operations shown in  FIG. 3  are illustrative. In some embodiments, some of the operations (or portions thereof) may be optional. In some embodiments, additional operations not shown may be included. In some embodiments, the operations may execute in an order or sequence different from what is shown. 
     Embodiments of the disclosure may be used to detect a fault associated with a motor (e.g., a fault associated with a coil of the motor) within a number (e.g., four) steps. Aspects of the disclosure may allow for a faster detection of the fault relative to prior solutions. Such earlier/faster detection may be used to maintain dynamics of fuel flow. For example, in embodiments where multiple or redundant channels are available, a switch-over from a failed channel (e.g., a motor with a fault) to a healthy channel (e.g., a motor without a fault) may take place sooner. 
     In some embodiments various functions or acts may take place at a given location and/or in connection with the operation of one or more apparatuses or systems. In some embodiments, a portion of a given function or act may be performed at a first device or location, and the remainder of the function or act may be performed at one or more additional devices or locations. Aspects of the disclosure may be directed to one or more systems, apparatuses, and methods. In some embodiments, executable instructions may be stored on one or more media, such as a non-transitory computer readable medium. The instructions, when executed, may cause an entity to perform one or more methodological acts. 
     Aspects of the disclosure may be tied to particular machines. For example, in some embodiments a device or entity, such as a controller, may monitor a duty cycle of a PWM function to determine whether a motor (or coil associated with the motor) has sustained a fault. 
     Aspects of the disclosure have been described in terms of illustrative embodiments thereof. Numerous other embodiments, modifications and variations within the scope and spirit of the appended claims will occur to persons of ordinary skill in the art from a review of this disclosure.