Patent Publication Number: US-10790768-B2

Title: Motor driving control device and motor driving control method

Description:
CROSS REFERENCE TO RELATED APPLICATIONS 
     The present application is a continuation application of International Patent Application No. PCT/JP2017/028892 filed on Aug. 9, 2017, which claims the benefit of Japanese Patent Application No. 2016-171243, filed on Sep. 1, 2016. The contents of these applications are incorporated herein by reference in their entirety. 
    
    
     BACKGROUND 
     Technical Field 
     The present disclosure relates to a motor driving control device and a motor driving control method suitable for controlling a rotational stop position of a motor. 
     Background 
     Conventionally, when a stepping motor is subjected to position sensorless driving for performing commutation with the zero-cross of back electromotive force set as a trigger under 1-phase excitation, the motor rotates with a load current and a rotational speed corresponding to a drive voltage and a load. When driving of this motor is stopped, overrun occurs due to the inertia of the motor and positional accuracy of the rotational stop position of the motor is deteriorated. 
     When all switching elements (FETs) of a driving circuit (H-bridge circuit) are turned off to stop the motor, the back electromotive force periodically changes with stoppage of the motor, and it is observed that the motor is rotating with the inertia of the motor. 
     In a hold current decay control method for performing control to stop the motor so as to set a hold current to a high current under 2-phase excitation simultaneously with stoppage of the motor, gradually decrease the current and stop the decrease of the current at a stable point of the 2-phase excitation, when the rotational speed of the motor is low and thus the inertia is small, it is possible to secure positional accuracy. However, when the rotational speed of the motor is high and thus the inertia is large, the current periodically changes with stoppage of the motor during the control to stop the motor, and it can be observed that the motor is rotating with the inertia of the motor. 
     For this reason, when an excessive current occurs during the foregoing hold current decay control to stop the motor, it is more possible to secure positional accuracy by using fast decay control for applying a voltage in a reverse direction so as to consume the current as compared with the hold current decay control, but it is impossible to secure positional accuracy in the case of the inertia of a motor exceeding one quadrant of an electrical angle. 
     For example, a control method for a stepping motor capable of accurately controlling the stop position of a rotor even when the rotational speed is high is disclosed in Japanese Patent Application Laid-Open No. 2005-229743. 
     The control method of Japanese Patent Application Laid-Open No. 2005-229743 is open control of 1-phase excitation, and the rotational speed just before the stop is arbitrary but fixed. The open control of 1-phase excitation cannot achieve an optimum rotational speed corresponding to a load, and a time in which vibration of the motor has subsided varies according to the load. Since the rotational speed just before the stop of the motor is not stabilized due to the drive voltage or the load, the position sensorless driving may have a risk such that it is difficult to accurately control the rotational stop position due to occurrence of overrun caused by the inertia, etc. when a holding time is extended in one step just before the stop. That is, it is insufficient to control the rotational stop position of the motor to a desired stop position in a short period of time under some rotational states. 
     Therefore, the present disclosure is related to providing a motor driving control device and a motor driving control method capable of accurately controlling a rotational stop position of a motor in a short time. 
     SUMMARY 
     According to a first aspect of the present disclosure, a motor driving control device comprises a zero-cross detection unit configured to detect zero-cross of back electromotive force of a motor coil provided in a motor, and a control unit configured to control driving of the motor by a 1-phase excitation method and without a position sensor perform commutation based on the zero-cross of the back electromotive force detected by the zero-cross detection unit, control driving of the motor based on a rotational speed corresponding to a drive voltage and a load, and perform extension control of a commutation time for each step from a calculated deceleration start step until the rotational speed of the motor decreases to a predetermined rotational speed or less for enabling the motor to stop at a desired stop position when the driving of the motor is stopped. 
     Other units will be described in the detailed description of embodiments. 
     According to the present disclosure, with respect to the motor driving control device and the motor driving control method, the rotational stop position of the motor can be accurately controlled in a short time. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is an overall block diagram of a motor control system according to the present embodiment and a comparative example. 
         FIG. 2  is a detailed block diagram of a motor driving control device according to the present embodiment and the comparative example. 
         FIGS. 3A to 3D  are first explanatory diagrams of an operation mode of an H-bridge circuit. 
         FIGS. 4E and 4F  are second explanatory diagrams of the operation mode of the H-bridge circuit. 
         FIG. 5  is a waveform diagram illustrating currents/voltages of X-phase and Y-phase of an H-bridge circuit of a comparative example. 
         FIG. 6  is a waveform diagram illustrating a commutation order of the H-bridge circuit of the comparative example. 
         FIG. 7  is a flowchart illustrating processing of a first quadrant of the X-phase in the comparative example. 
         FIG. 8  is a flowchart illustrating processing of a second quadrant of the X-phase in the comparative example. 
         FIG. 9  is a waveform diagram illustrating currents/voltages of the X-phase and the Y-phase of the H-bridge circuit in the present embodiment. 
         FIG. 10  is a waveform diagram illustrating a commutation order of the H-bridge circuit in the present embodiment. 
         FIG. 11  is a flowchart illustrating processing of a first quadrant of the X-phase in the present embodiment. 
         FIG. 12  is a flowchart illustrating processing of a PWM cycle on an energization side in the present embodiment. 
         FIG. 13  is a flowchart illustrating processing of a PWM cycle on a back electromotive (non-energization) side in the present embodiment. 
         FIG. 14  is a graph illustrating a first deceleration example in the present embodiment. 
         FIG. 15  is a graph illustrating a second deceleration example in the present embodiment. 
     
    
    
     DETAILED DESCRIPTION 
     An embodiment for implementing the present disclosure will be described hereinafter in detail with reference to the drawings. 
       FIG. 1  is an overall block diagram of a motor control system according to the present embodiment and a comparative example. 
     In  FIG. 1 , a stepping motor  120  is a bipolar type two-phase stepping motor, and includes a rotor  126  having a permanent magnet and being provided rotatably and stators provided at positions quadrisectioned in a circumferential direction around the rotor  126 . These stators include stators  122 XP and  122 XN of the X-phase, and stators  122 YP and  122 YN of the Y-phase. A winding is wound around each of these stators. The windings wound around the stators  122 YP and  122 YN are connected to each other in series, and the combination of both the windings is referred to as a “stator winding  124 Y”. Likewise, the windings wound around the stators  122 XP and  122 XN are connected to each other in series, and the combination of both the windings is referred to as a “stator winding  124 X”. The stator windings  124 Y and  124 X are examples of motor coils. 
     A host device  130  outputs a speed command signal for commanding the rotational speed of the stepping motor  120 . A motor driving control device  100  controls driving of the stepping motor  120  according to the speed command signal. H-bridge circuits  20 X and  20 Y each including a combination of half bridges connected to the stator windings are provided to the motor driving control device  100 , and apply an X-phase voltage VMX and a Y-phase voltage VMY to the stator windings  124 X and  124 Y, respectively. 
     The H-bridge circuit  20 X is connected to the winding (an example of the motor coil) of the X-phase stator  122 XN via a connection point Mout 0 , and further connected to the winding (an example of the motor coil) of the X-phase stator  122 XP via a connection point Mout 1 . A coil current IMout 1 - 0  is a current flowing from the connection point Mout 1  to the connection point Mout 0 . 
     The H-bridge circuit  20 Y is connected to the winding (an example of the motor coil) of the Y-phase stator  122 YP via a connection point Mout 2 , and further connected to the winding (an example of the motor coil) of the Y-phase stator  122 YN via a connection point Mout 3 . A coil current IMout 3 - 2  is a current flowing from the connection point Mout 3  to the connection point Mout 2 . 
     (Motor Driving Control Device  100 ) 
     Thereafter, the motor driving control device  100  will be described in detail with reference to  FIG. 2 . The stator windings  124 X and  124 Y of two systems and H-bridge circuits  20 X and  20 Y of the two systems are shown in  FIG. 1 . However, these stator windings and these H-bridge circuits are collectively shown as a stator winding  124  of one system and an H-bridge circuit  20  of one system. 
     A CPU (Central Processing Unit)  101  (an example of a control unit) provided inside the motor driving control device  100  controls each unit via a bus  106  based on a control program stored in ROM (Read Only Memory)  103 . RAM (Random Access Memory)  102  is used as a work memory of the CPU  101 . A timer  104  measures elapsed time from a reset timing under the control of the CPU  101 . An I/O port  105  receives and outputs signals to and from the host device  130  and other external devices shown in  FIG. 1 . A bridge control unit  107  controls each unit of a bridge control circuit  110  based on a command from the CPU  101 . 
     Here, the bridge control circuit  110  is formed as an integral integrated circuit. In the bridge control circuit  110 , a PWM (pulse width modulation) signal generator  113  generates a PWM signal and supplies the PWM signal to the H-bridge circuit  20  under the control of the bridge control unit  107 . FETs (Field-Effect Transistors)  2 ,  4 ,  6 , and  8  and FETs  15  and  17  are included in the H-bridge circuit  20 . In  FIG. 2 , terminals on the lower side of these FETs are source terminals, and terminals on the upper side of these FETs are drain terminals. The PWM signal is an ON/OFF signal to be applied as a gate voltage to these FETs. 
     The FETs  2  and  4  are connected to each other in series, a DC power source  140  and a ground line  142  are connected to this series circuit, and a predetermined voltage MVdd is applied to the series circuit. Likewise, the FETs  6  and  8  are also connected to each other in series, and the voltage MVdd is also applied to the series circuit. Diodes  12 ,  14 ,  16 , and  18  are parasitic diodes for reflux, and are connected in parallel to the FETs  2 ,  4 ,  6 , and  8 . The FETs  15  and  17  are provided for current detection and form current mirror circuits together with the FETs  4  and  8 , respectively. As a result, currents proportional to currents flowing through the FETs  4  and  8  flow through the FETs  15  and  17 , respectively. 
     The voltage VMout 0  at the connection point Mout 0  of the FETs  2  and  4  is applied to one end of the stator winding  124  of the motor. The voltage VMout 1  at the connection point Mout 1  of the FETs  6  and  8  is applied to another end of the stator winding  124 . Therefore, a motor voltage VM corresponding to the difference between the voltage VMout 0  and the voltage VMout 1  is applied to the stator winding  124 . Actually, the motor voltage VM is the X-phase voltage VMX and the Y-phase voltage VMY shown in  FIG. 1 . 
     A current detection unit  116  (an example of a current detection unit) detects the motor current flowing through the stator winding. More specifically, the current detection unit  116  measures current values flowing through the FETs  15  and  17  according to the current direction, thereby outputting a current measurement value Icoil of a current flowing through the stator winding  124 . A D/A converter  115  receives a digital value of a current reference value Iref from the bridge control unit  107 , and converts the digital value to an analog value. A comparator  114  compares a current measurement value Icoil of the analog value with the current reference value Iref, outputs a “1” signal when the former is equal to or larger than the latter, and outputs a “0” signal in other cases. 
     Furthermore, the voltages VMout 0  and VMout 1  are also supplied to a BEMF (back electromotive force) detection unit  118  (an example of a zero-cross detection unit). The BEMF detection unit  118  detects zero-cross of back electromotive force of the stator windings  124 Y and  124 X provided in the stator of the stepping motor  120 . That is, when the motor voltage VM is back electromotive force, the BEMF detection unit  118  outputs a flag ZC according to switching (zero-cross) in the voltage direction during a period when no voltage is applied from the H-bridge circuit  20 . 
     The CPU  101  controls the driving of the stepping motor  120  by a 1-phase excitation method and without a position sensor, performs commutation based on the zero-cross of the back electromotive force detected by the BEMF detection unit  118 , and performs the control of the driving of the stepping motor  120  at a rotational speed corresponding to the drive voltage and the load. In addition, as described later, when stopping the driving of the stepping motor  120 , the CPU  101  controls extension of a commutation time for each step from a calculated deceleration start step until the rotational speed of the stepping motor  120  decreases to a predetermined rotational speed or less. At the predetermined rotational speed or less, the stepping motor  120  can stop at a desired stop position. 
     (Operation Mode of H-Bridge Circuit  20 ) 
       FIGS. 3A to 3D  and  FIGS. 4E and 4F  are explanatory diagrams of operation modes of the H-bridge circuit. The operation modes of the H-bridge circuit  20  will be described with reference to these explanatory diagrams. 
       FIG. 3A  shows a case where two diagonally opposite FETs are set to an ON state to increase the absolute value of a motor current flowing through the stator winding  124 . In the example shown in  FIG. 3A , the FETs  4  and  6  are in the ON state while the FETs  2  and  8  are in an OFF state. In  FIG. 3A , an increase of the absolute value of the motor current is indicated by black arrows. In this state, the motor current flows in a direction indicated by a broken line via the FET 6 →the stator winding  124 →the FET  4 , and the motor current increases. This operation mode is called a charge mode. 
     Furthermore, when the current is slowly decayed from the state of  FIG. 3A , the FET  6  is turned off as shown in  FIG. 3B . The FET  4  maintains the ON state, and the FETs  2  and  8  maintain the OFF state. Then, a current looping through the FET  4 , the diode  18  (the parasitic diode of the FET  8 ) and the stator winding  124  flows as indicated by a broken line in the figures. This current is decayed by the FET  4 , the diode  18  (the parasitic diode of the FET  8 ) and the impedance of the stator winding  124 , but the decay speed is low. This operation mode is called an asynchronous slow decay mode. In  FIG. 3B , decay of the motor current is indicated by outlined arrows. 
     Furthermore, as a variation of the slow decay mode, as shown in  FIG. 3C , the FET  8  may be further turned on. At this time, a motor current looping through the FETs  4  and  8  and the stator winding  124  flows as indicated by broken lines in the figures. This current is decayed by the FETs  4  and  8  and the impedance of the stator winding  124 , but the decay speed is lower. This operation mode is referred to as a synchronous slow decay mode. In  FIG. 3C , decay of the motor current is indicated by outlined arrows. 
     Even when the gate voltage of any one FET is set to OFF, the FET is kept in the ON state for a period of time due to the parasitic capacitance of the FET. For this reason, for example, when a state in which the FET  4  is turned on and the FET  2  is turned off is instantaneously switched to a state in which the FET  4  is turned off and the FET  2  is turned on, the FETs  2  and  4  connected in series are instantaneously set to the ON state, so that the voltage MVdd and the ground are short-circuited with relation to each other and thus the FETs  2  and  4  are destroyed. In order to protect such a situation, the H-bridge circuit  20  is set to a shoot through protection mode as shown in  FIG. 3D . 
       FIG. 3D  shows the shoot through protection mode. In the shoot through protection mode, the FETs  2 ,  4 ,  6 , and  8  are set to the OFF state. When the charge mode of  FIG. 3A  is switched to the shoot through protection mode of  FIG. 3D , back electromotive force occurs in the stator winding  124 . Therefore, the motor current flows through the diode  18 →the stator winding  124 →the diode  12  (the parasitic diode of the FET  2 ) in a direction indicated by a broken line. 
     In the shoot through protection mode of  FIG. 3D , a power dissipation corresponding to a forward voltage drop of the diodes  12  and  18  occurs, so that the decay speed of the motor current becomes largest. 
     Here, when the FET  2  is turned on, the mode transits to a flyback mode shown in  FIG. 4E . The flyback mode is a mode in which the motor current flows through the diode  18 →the stator winding  124 →the FET  2  in a direction indicated by a broken line. In the flyback mode, the decay speed of the motor current becomes slightly more gradual than that in the shoot through protection mode. 
     When all energy charged in the stator winding  124  in the flyback mode is released and then the FET  2  is turned off, the mode transits to a back electromotive force/free mode shown in  FIG. 4F . 
     The back electromotive force mode is a mode in which the FETs  2 ,  4 ,  6 , and  8  are set to the OFF state, no current flows in the H-bridge circuit  20 , and back electromotive force occurs. The free mode is a mode after the FETs  2 ,  4 ,  6 , and  8  are set to the OFF state, no current flows in the H-bridge circuit  20 , and back electromotive force crosses zero. 
     The 1-phase excitation driving of the two-phase stepping motor performs commutation in the order of X+ phase→Y+ phase→X− phase→Y− phase to sequentially shift from the first quadrant to the fourth quadrant as shown in  FIG. 6  below, thereby energizing the coils phase by phase. When the stepping motor  120  is rotated in the reverse direction, the commutation is performed in the order of X+ phase→Y− phase→X− phase→Y+ phase. 
     In a normal case where the coil current is within a maximum current, the H-bridge circuit  20  transits in the order of the charge mode→the shoot through protection mode→the flyback mode→the free mode. 
     The CPU  101  repeats the charge mode and the slow decay mode as the operation mode under current limitation of the H-bridge circuit  20 . Furthermore, as the operation mode under current limitation of the H-bridge circuit  20 , the CPU  101  causes the H-bridge circuit  20  to transit in the order of the shoot through protection mode, the flyback mode, and the free mode after repetition of the charge mode and the slow decay mode at every PWM cycle. 
     That is, under current limitation, the H-bridge circuit  20  repeats the charge mode and the slow decay mode at every PWM cycle, and then transits in the order of the shoot through protection mode the flyback mode the free mode. By using the slow decay mode, the decay of current becomes smaller than that in the fast decay mode. Therefore, the rotational driving force and the holding force of the motor are maintained, and a current ripple caused by the repetition of the charge mode and the slow decay mode is reduced. 
     The slow decay mode is available in a case in which the processing is performed by an asynchronous slow decay mode alone and a case in which the mode is shifted to a synchronous slow decay mode after the asynchronous slow decay mode. 
     The flyback mode is available in a case in which a kickback voltage is regenerated to a power source via a parasitic diode (shoot through protection mode) and a case where the FET on an upper side (a high side) of this route is turned on for regeneration to the power source (flyback mode). 
       FIG. 5  is a waveform diagram illustrating the currents/voltages of the X-phase and the Y-phase of the H-bridge circuit  20  of a comparative example.  FIG. 6  is a waveform diagram illustrating the commutation order of the H-bridge circuit  20  of the comparative example. Hereinafter, the operation in each quadrant will be described with reference to  FIGS. 5 and 6 . 
     &lt;&lt;First Quadrant: Time t 10 &gt;&gt; 
     At a time t 10  in the first quadrant, the H-bridge circuit  20 X of the X-phase shifts to the charge mode, and the H-bridge circuit  20 Y of the Y-phase shifts to the flyback mode. As shown in  FIG. 6 , the stepping motor  120  is in the X+ phase, and the voltage VMout 1  becomes the voltage MVdd. 
     In the H-bridge circuit  20 X of the X-phase, in the charge mode, the voltage VMout 1  is switched to the voltage MVdd, and the voltage VMout 0  is switched to GND (ground) as shown in  FIG. 5 . The voltage MVdd is applied to the X-phase stator winding  124 X, and the X-phase coil current IMout 1 - 0  gradually increases. 
     When the absolute value of the X-phase coil current IMout 1 - 0  exceeds a predetermined maximum current, the H-bridge circuit  20 X switches from the charge mode to the slow decay mode at every PWM cycle, whereby the absolute value of the coil current IMout 1 - 0  is maintained at less than the maximum current. 
     A flyback pulse (kickback) occurring in an opposite direction to the direction of a voltage applied in an immediately preceding fourth quadrant occurs in the H-bridge circuit  20 Y of the Y-phase. The H-bridge circuit  20 Y shifts to the free mode when the flyback voltage falls and further the coil current IMout 3 - 2  is equal to 0. The H-bridge circuit  20 Y shifts to the free mode at a time t 11 . 
     In the free mode, back electromotive force appears in a direction opposite to that of the kickback in the H-bridge circuit  20 Y of the Y-phase. The CPU  101  performs commutation with the zero-cross of this back electromotive force voltage set as a trigger, and shifts to a next second quadrant. The occurrence time of the kickback and the back electromotive force vary according to the drive voltage of the motor, the driving load of the motor, and the rotational speed. 
     Note that the shoot through protection mode is inserted between the respective modes as required so that the upper and lower FETs of the half bridge are not turned on at the same time. As a result, through-current can be prevented. 
     &lt;&lt;Second Quadrant: Time t 14 &gt;&gt; 
     At a time t 14  in the second quadrant, the H-bridge circuit  20 X of the X-phase shifts to the flyback mode, and the H-bridge circuit  20 Y of the Y-phase shifts to the charge mode. As shown in  FIG. 6 , the stepping motor  120  is in the Y+ phase, and the voltage VMout 3  becomes the voltage MVdd. 
     As shown in  FIG. 5 , a flyback pulse (kickback) occurring in a direction opposite to the direction of a voltage applied in an immediately preceding first quadrant occurs in the H-bridge circuit  20 X of the X-phase. The H-bridge circuit  20 X shifts to the free mode when the flyback voltage falls and further the coil current IMout 1 - 0  is equal to 0. The H-bridge circuit  20 X shifts to the free mode at a time t 15 . 
     In the free mode, back electromotive force appears in an opposite direction to that of the kickback in the H-bridge circuit  20 X of the X-phase. The CPU  101  performs commutation with the zero-cross of this back electromotive force set as a trigger, and shifts to a next third quadrant. The occurrence time of the kickback and the back electromotive force vary according to the drive voltage of the motor, the driving load of the motor, and the rotational speed. 
     Note that the shoot through protection mode is inserted between the respective modes as required so that the upper and lower FETs of the half bridge are not turned on at the same time. As a result, through-current can be prevented. 
     In the charge mode, the voltage VMout 3  is switched to the voltage MVdd and the voltage VMout 2  is switched to the GND in the H-bridge circuit  20 Y of the Y-phase. The voltage MVdd is applied to the Y-phase stator winding  124 Y, and the Y-phase coil current IMout 3 - 2  gradually increases. 
     When the absolute value of the Y-phase coil current IMout 3 - 2  exceeds a predetermined maximum current, the H-bridge circuit  20 Y switches from the charge mode to the slow decay mode at every PWM cycle, whereby the absolute value of the coil current IMout 3 - 2  is maintained at less than the maximum current. 
     &lt;&lt;Third Quadrant: Time t 18 &gt;&gt; 
     At a time t 18  in the third quadrant, the H-bridge circuit  20 X of the X-phase shifts to the charge mode. In the charge mode, the coil current IMout 1 - 0  flows in an opposite direction to that in the first quadrant. The H-bridge circuit  20 Y of the Y-phase shifts to the flyback mode. In the flyback mode, the coil current IMout 3 - 2  flows in an opposite direction to that in the first quadrant. As shown in  FIG. 6 , the stepping motor  120  is in the X− phase, and the voltage VMout 0  becomes the voltage MVdd. 
     As shown in  FIG. 5 , in the H-bridge circuit  20 X of the X-phase, the voltage VMout 1  is switched to GND, and the voltage VMout 0  is switched to the voltage MVdd. A voltage is applied to the X-phase stator winding  124 X in a direction opposite to that in the first quadrant so that the X-phase coil current IMout 1 - 0  gradually increases in the direction opposite to that in the first quadrant. 
     A flyback pulse (kickback) occurring in a direction opposite to the direction of a voltage applied in an immediately preceding second quadrant occurs in the H-bridge circuit  20 Y of the Y-phase. When the flyback voltage falls and further the coil current IMout 3 - 2  is equal to 0, the H-bridge circuit  20 Y shifts to the free mode. The H-bridge circuit  20 Y shifts to the free mode at a time t 19 . 
     In the free mode, back electromotive force appears in a direction opposite to that of the kickback in the H-bridge circuit  20 Y of the Y-phase. The CPU  101  performs commutation with the zero-cross of this back electromotive force set as a trigger, and shifts to a next fourth quadrant. The occurrence time of the kickback and the back electromotive force vary according to the drive voltage of the motor, the driving load of the motor, and the rotational speed. 
     The operation in the third quadrant is similar to the operation in the first quadrant except for the direction in which the current flows. 
     &lt;&lt;Fourth Quadrant: Time t 22 &gt;&gt; 
     At a time t 22  in the fourth quadrant, the H-bridge circuit  20 X of the X-phase shifts to the flyback mode. The H-bridge circuit  20 Y of the Y-phase shifts to the charge mode. As shown in  FIG. 6 , the stepping motor  120  is in the Y− phase, and the voltage VMout 2  becomes the voltage MVdd. 
     As shown in  FIG. 5 , a flyback pulse (kickback) occurring in a direction opposite to the direction of a voltage applied in an immediately preceding third quadrant occurs in the H-bridge circuit  20 X of the X-phase. The H-bridge circuit  20 X shifts to the free mode when the flyback voltage falls and further the coil current IMout 1 - 0  is equal to 0. The H-bridge circuit  20 X shifts to the free mode at a time t 23   
     In the free mode, back electromotive force appears in a direction opposite to that of the kickback in the H-bridge circuit  20 X of the X-phase. The CPU  101  performs commutation with the zero-cross of this back electromotive force set as a trigger, and shifts to a next third quadrant. The occurrence time of the kickback and the electromotive force voltage vary according to the drive voltage of the motor, the driving load of the motor, and the rotational speed. 
     In the charge mode, the voltage VMout 3  is switched to GND and the voltage VMout 2  is switched to the voltage MVdd in the H-bridge circuit  20 Y of the Y-phase. The voltage MVdd is applied to the Y-phase stator winding  124 Y in a direction opposite to that of the second quadrant, and the Y-phase coil current IMout 3 - 2  gradually increases in a direction opposite to that in the second quadrant. 
     The operation in the fourth quadrant is similar to the operation in the second quadrant except for the direction in which the current flows. 
     &lt;&lt;Subsequent Quadrants&gt;&gt; 
     The H-bridge circuits  20 X and  20 Y perform operations similar to the operations in the first to fourth quadrants while sequentially switching the operations. 
       FIG. 7  is a flowchart illustrating processing of the first quadrant of the X-phase in a comparative example. 
     In the first quadrant, the CPU  101  sets a maximum duty for each PWM cycle and sets a value in a delay timer (processing S 10 ), and the H-bridge circuit  20 X of the X-phase shifts to an energization period. In this energization period, the H-bridge circuit  20 X of the X-phase shifts to the charge mode. 
     The CPU  101  turns on the FET  2  on the high side (HS) of the connection point Mout 1 , and further turns on the FET  8  on the low side (LS) of the connection point Mout 0  (processing S 11 ). Subsequently, the CPU  101  starts an energization timer (processing S 12 ). 
     The CPU  101  determines whether a maximum time associated with the Y-phase has elapsed (processing S 13 ). When determining that the maximum time associated with the Y-phase has not elapsed (processing S 13 →No), the CPU  101  determines zero-cross of back electromotive force of the Y-phase (processing S 14 ). When determining that the back electromotive force of the Y-phase does not cross zero (processing S 14 →No), the CPU  101  returns to the processing S 13 . 
     When determining the zero-cross of the back electromotive force of the Y-phase (processing S 14 →Yes), the CPU  101  subtracts the delay timer (processing S 15 ). When determining that the delay timer is not equal to 0 (processing S 16 →No), the CPU  101  returns to the processing S 13 . 
     When the delay time is equal to 0 (processing S 16 →Yes), the CPU  101  turns off the FET  2  on the high side (HS) of the connection point Mout 1  and the FET  8  on the low side (LS) of the connection point Mout 0 , and terminates the energization period (processing S 17 ). 
     When the CPU  101  determines in processing S 13  that the maximum time associated with the Y-phase has elapsed (processing S 13 →Yes), the CPU  101  executes the processing S 17  and terminates the energization period regardless of the determination of the zero-cross of the back electromotive force of the Y-phase and the count value of the delay timer. 
     After the energization period is terminated, the CPU  101  terminates the energization timer, calculates the rotational speed based on the value of the energization timer (processing S 18 ), and ends the processing in the first quadrant of the X-phase. 
     The processing in the second quadrant of the Y-phase is similar to the processing in the first quadrant of the X-phase. The processing in the third quadrant of the X-phase is similar to the processing in the first quadrant of the X-phase except that the direction of the voltage applied to the stator winding  124 X (see  FIG. 1 ) is different. 
     The processing in the fourth quadrant of the Y-phase is similar to the processing in the first quadrant of the X-phase except that the direction of the voltage applied to the stator winding  124 Y (see  FIG. 1 ) is different. 
       FIG. 8  is a flowchart illustrating processing of the second quadrant of the X-phase in the comparative example. 
     First, in the second quadrant, the CPU  101  sets a maximum time in the timer (processing S 30 ). The H-bridge circuit  20 X of the X-phase shifts to a flyback period. In the flyback period, the H-bridge circuit  20 X of the X-phase shifts to the flyback mode. 
     In the flyback period, when the flyback mode is terminated (processing S 32 →No), the H-bridge circuit  20 X shifts to a back electromotive force period. During the back electromotive force period, the H-bridge circuit  20 X of the X-phase shifts to the back electromotive force mode. The termination of the flyback mode may be detected based on any of the following: falling of the flyback voltage, zero-cross of the flyback voltage, and zero-cross of the coil current. 
     Subsequently, in the back electromotive force period, when the back electromotive force mode is terminated (processing S 33 →No), the H-bridge circuit  20 X shifts to a free period. In the free period, the H-bridge circuit  20 X of the X-phase shifts to the free mode. The termination of the back electromotive force mode may be detected based on zero-cross of the back electromotive force. When the back electromotive force does not exceed 0 V due to an overload, the termination of the back electromotive force mode may be detected based on lapse of the delay time from a peak of the back electromotive force (approximately twice the time from the start of the back electromotive force mode to the peak, etc.) or a next voltage increase after the peak of the back electromotive force. 
     In the free period, when determining termination of the second quadrant of the X-phase (processing S 34 →Yes), the CPU  101  ends the processing of the second quadrant of the X-phase. 
     When the conditions of the processing S 32  and S 33  are satisfied and when the condition of the processing S 34  is not satisfied, the CPU  101  returns to the processing S 31  and determines excess of the maximum time. When the timer has exceeded the maximum time (processing S 31 →Yes), the CPU  101  ends the processing of the second quadrant of the X-phase regardless of the operation mode. 
     The processing of the second quadrant of the X-phase is similar to the processing of the third quadrant of the Y-phase. The processing of the fourth quadrant of the X-phase is similar to the processing of the second quadrant of the X-phase except that the direction of the zero-crossing voltage is different. 
     The processing of the third quadrant of the Y-phase is similar to the processing of the first quadrant of the Y-phase except that the direction of the zero-crossing voltage is different. 
       FIG. 9  is a waveform diagram illustrating the currents/voltages of the X-phase and the Y-phase of the H-bridge circuit  20  in the present embodiment.  FIG. 10  is a waveform diagram illustrating the commutation order of the H-bridge circuit  20  in the present embodiment. Hereinafter, the operation in each quadrant will be described with reference to  FIGS. 9 and 10 . 
     &lt;&lt;First Quadrant: Time t 40 &gt;&gt; 
     At a time t 40  in the first quadrant, the H-bridge circuit  20 X of the X-phase shifts to the charge mode, and the H-bridge circuit  20 Y of the Y-phase shifts to the flyback mode. As shown in  FIG. 10 , the stepping motor  120  is in the X+ phase, and the voltage VMout 1  becomes the voltage MVdd. 
     As shown in  FIG. 9 , in the charge mode, the voltage VMout 1  is switched to the voltage MVdd and the voltage VMout 0  is switched to GND in the H-bridge circuit  20 X of the X-phase. The voltage MVdd is applied to the X-phase stator winding  124 X, and the X-phase coil current IMout 1 - 0  gradually increases. 
     When the absolute value of the X-phase coil current IMout 1 - 0  exceeds a predetermined maximum current, the H-bridge circuit  20 X switches from the charge mode to the slow decay mode at every PWM cycle, whereby the absolute value of the coil current IMout  1 - 0  is maintained at less than the maximum current. 
     A flyback pulse (kickback) occurring in a direction opposite to the direction of a voltage applied in an immediately preceding fourth quadrant occurs in the H-bridge circuit  20 Y of the Y-phase. The H-bridge circuit  20 Y shifts to the free mode when the flyback voltage falls and further the coil current IMout 3 - 2  is equal to 0. The H-bridge circuit  20 Y shifts to the free mode at a time t 41 . 
     In the free mode, back electromotive force appears in a direction opposite to that of the kickback in the H-bridge circuit  20 Y of the Y-phase. The CPU  101  performs commutation with the zero-cross of this back electromotive force set as a trigger and shifts to a next second quadrant. The occurrence time of the kickback and the back electromotive force vary according to the drive voltage of the motor, the driving load of the motor, and the rotational speed. 
     Note that the shoot through protection mode is inserted between the respective modes as required so that the upper and lower FETs of the half bridge are not turned on at the same time. As a result, the through-current can be prevented. 
     &lt;&lt;Second Quadrant: Time t 44 &gt;&gt; 
     At a time t 44  in the second quadrant, the H-bridge circuit  20 X of the X-phase shifts to the flyback mode, and the H-bridge circuit  20 Y of the Y-phase shifts to the charge mode. As shown in  FIG. 10 , the stepping motor  120  is in the Y+ phase, and the voltage VMout 3  becomes the voltage MVdd. 
     As shown in  FIG. 9 , a flyback pulse (kickback) occurring in a direction opposite to the direction of a voltage applied in an immediately preceding first quadrant occurs in the H-bridge circuit  20 X of the X-phase. The H-bridge circuit  20 X shifts to the free mode when the flyback voltage falls and further the coil current IMout 1 - 0  is equal to 0. The H-bridge circuit  20 X shifts to the free mode at a time t 45 . 
     In the free mode, back electromotive force appears in a direction opposite to the direction of the kickback in the H-bridge circuit  20 X of the X-phase. The CPU  101  performs commutation with the zero-cross of this back electromotive force set as a trigger, and shifts to a next third quadrant. The occurrence time of the kickback and the back electromotive force vary according to the drive voltage of the motor, the driving load of the motor, and the rotational speed. 
     Note that the shoot through protection mode is inserted between the respective modes as required so that the upper and lower FETs of the half bridge are not turned on at the same time. As a result, through-current can be prevented. 
     In the charge mode, the voltage VMout 3  is switched to the voltage MVdd and the voltage VMout 2  is switched to GND in the H-bridge circuit  20 Y of the Y-phase. The voltage MVdd is applied to the Y-phase stator winding  124 Y, and the Y-phase coil current IMout 3 - 2  gradually increases. 
     When the absolute value of the Y-phase coil current IMout 3 - 2  exceeds a predetermined maximum current, the H-bridge circuit  20 Y switches from the charge mode to the slow decay mode at every PWM cycle, whereby the absolute value of the coil current IMout 3 - 2  is maintained at less than the maximum current. 
     Hereinafter, deceleration stop control is being executed from a deceleration start step to a deceleration stop step. Here, the number of deceleration steps is 4. In the deceleration stop step, the stepping motor  120  reaches a final stop speed. The deceleration start step is calculated from the number of driving steps and the number of deceleration steps. 
     &lt;&lt;Third Quadrant: Time t 48 : Deceleration Start Step&gt;&gt; 
     At a time t 48  in the third quadrant, the H-bridge circuit  20 X of the X-phase shifts to the charge mode in a direction opposite to that in the first quadrant. The H-bridge circuit  20 Y of the Y-phase shifts to the flyback mode in which the coil current IMout 3 - 2  flows in a direction opposite to that in the first quadrant. The third quadrant is a step of starting deceleration of the stepping motor  120 . As shown in  FIG. 10 , the stepping motor  120  is in the X− phase, and the voltage VMout 0  becomes the voltage MVdd. 
     As shown in  FIG. 9 , in the charge mode, the voltage VMout 1  is switched to GND and the voltage VMout 0  is switched to the voltage MVdd in the H-bridge circuit  20 X of the X-phase. A voltage is applied to the X-phase stator winding  124  X in a direction opposite to that in the first quadrant, and the X-phase coil current IMout 1 - 0  gradually increases in a direction opposite to that in the first quadrant. The operation in the third quadrant is similar to the operation in the first quadrant except for the direction in which the current flows. 
     A flyback pulse (kickback) occurring in a direction opposite to the direction of a voltage applied in an immediately preceding second quadrant occurs in the H-bridge circuit  20 Y of the Y-phase. The H-bridge circuit  20 Y shifts to the free mode when the flyback voltage falls and further the coil current IMout 3 - 2  is equal to 0. The H-bridge circuit  20 Y shifts to the free mode at a time  49 . 
     In the free mode, back electromotive force appears in a direction opposite to the direction of the kickback in the H-bridge circuit  20 Y of the Y-phase. The occurrence time of the kickback and the back electromotive force vary according to the drive voltage of the motor, the driving load of the motor, and the rotational speed. 
     As will be described below, when the motor current detected by the current detection unit  116  exceeds a predetermined current value during a period from the deceleration start step to the stop, the CPU  101  specifies the slow decay mode to the H-bridge circuits  20 X and  20 Y at every PWM cycle. 
     Based on the time of an immediately preceding step measured by the timer, a predetermined maximum speed, and the number of deceleration steps, the CPU  101  calculates the time of a step of this deceleration step turn. In place of the zero-cross of the back electromotive force, the CPU  101  performs commutation with this time set as a trigger, and shifts to a next fourth quadrant. 
     With the deceleration, the absolute value of the coil current IMout 1 - 0  of the X-phase may drastically increase. In this case, the H-bridge circuit  20 X prevents overcurrent by shifting to the slow decay mode under current control at every PWM cycle. Here, the absolute value of the coil current IMout 1 - 0  slightly increases after a time t 50 , but the H-bridge circuit  20 X has not shifted to the slow decay mode. 
     Note that the shoot through protection mode is inserted between the respective modes as required so that the upper and lower FETs of the half bridge are not turned on at the same time. As a result, through-current can be prevented. 
     &lt;&lt;Fourth Quadrant: Time t 52 : Second Step of Deceleration&gt;&gt; 
     At a time t 52  in the fourth quadrant, the H-bridge circuit  20 X of the X-phase shifts to the flyback mode in a direction opposite to that in the second quadrant. The H-bridge circuit  20 Y of the Y-phase shifts to the charge mode in a direction opposite to that in the second quadrant. This fourth quadrant is a second step of the deceleration of the stepping motor  120 . As shown in  FIG. 10 , the stepping motor  120  is in the Y-phase, and the voltage VMout 2  becomes the voltage MVdd. 
     As shown in  FIG. 9 , in the charge mode, the voltage VMout 3  is switched to GND and the voltage VMout 2  is switched to the voltage MVdd in the H-bridge circuit  20 Y of the Y-phase. The voltage MVdd is applied to the Y-phase stator winding  124 Y in a direction opposite to that in the second quadrant, and the Y-phase coil current IMout 3 - 2  gradually increases in a direction opposite to that in the second quadrant. The operation in the fourth quadrant is similar to the operation in the second quadrant except for the direction in which the current flows. 
     A flyback pulse (kickback) occurring in a direction opposite to the direction of a voltage applied in an immediately preceding third quadrant occurs in the H-bridge circuit  20 X of the X-phase. The H-bridge circuit  20 X shifts to the free mode when the flyback voltage falls and further the coil current IMout 1 - 0  is equal to 0. The H-bridge circuit  20 X shifts to the free mode at a time t 53 . 
     In the free mode, back electromotive force appears in a direction opposite to the direction of the kickback in the H-bridge circuit  20 X of the X-phase. The occurrence time of the kickback and the back electromotive force vary according to the drive voltage of the motor, the driving load of the motor and the rotational speed. 
     As described below, when the motor current detected by the current detection unit  116  exceeds a predetermined current value during a period from the deceleration start step to the stop, the CPU  101  specifies the slow decay mode to the H-bridge circuits  20 X and  20 Y at every PWM cycle. 
     From the time of an immediately preceding step measured by the timer, a predetermined maximum speed, and the number of deceleration steps, the CPU  101  calculates the time of a step of this deceleration step turn. In place of the zero-cross of the back electromotive force, the CPU  101  performs commutation with this time set as a trigger, and shifts to a next first quadrant. 
     The absolute value of the Y-phase coil current IMout 3 - 2  may drastically increase due to deceleration. In this case, the H-bridge circuit  20 Y prevents overcurrent by shifting to the slow decay mode under current control at every PWM cycle. Here, the absolute value of the coil current IMout 3 - 2  slightly increases after a time t 54 , but the H-bridge circuit  20 Y has not shifted to the slow decay mode. 
     Note that the shoot through protection mode is inserted between the respective modes as required so that the upper and lower FETs of the half bridge are not turned on at the same time. As a result, through-current can be prevented. 
     &lt;&lt;First Quadrant: Time t 56 : Third Step of Deceleration&gt;&gt; 
     At a time t 56  in the first quadrant, the H-bridge circuit  20 X of the X-phase shifts to the charge mode. The H-bridge circuit  20 Y of the Y-phase shifts to the flyback mode. This first quadrant is a third step of deceleration of the stepping motor  120 . As shown in  FIG. 10 , the stepping motor  120  is in the X+ phase, and the voltage VMout 1  becomes the voltage MVdd. 
     As shown in  FIG. 9 , in the charge mode, the voltage VMout 0  is switched to the voltage MVdd and the voltage VMout 1  is switched to the GND in the H-bridge circuit  20 X of the X-phase. The voltage MVdd is applied to the X-phase stator winding  124 X, and the X-phase coil current IMout 1 - 0  gradually increases. 
     A flyback pulse (kickback) occurring in a direction opposite to the direction of a voltage applied in an immediately preceding fourth quadrant occurs in the H-bridge circuit  20 Y of the Y-phase. The H-bridge circuit  20 Y shifts to the free mode when the flyback voltage falls and further the coil current IMout 3 - 2  is equal to 0. The H-bridge circuit  20 Y shifts to the free mode at a time t 57 . 
     In the free mode, back electromotive force appears in a direction opposite to the direction of the kickback in the H-bridge circuit  20 Y of the Y-phase. The occurrence time of the kickback and the back electromotive force vary according to the drive voltage of the motor, the driving load of the motor, and the rotational speed. 
     The operation in the first quadrant so far is similar to the operation in the third quadrant except for the direction in which the current flows. 
     As described below, when the motor current detected by the current detection unit  116  exceeds a predetermined current value during the period from the deceleration start step to the stop, the CPU  101  specifies the slow decay mode to the H-bridge circuits  20 X and  20 Y at every PWM cycle. 
     From the time of an immediately preceding quadrant step measured by the timer, a predetermined maximum speed, and the number of deceleration steps, the CPU  101  calculates the time of a step of this deceleration step turn. In place of the zero-cross of the back electromotive force, the CPU  101  performs commutation with this time set as a trigger, and shifts to a next fourth quadrant. 
     The absolute value of the X-phase coil current IMout 1 - 0  may drastically increase due to deceleration. In this case, the H-bridge circuit  20 X prevents overcurrent by shifting to the slow decay mode under current control at every PWM cycle. Here, the absolute value of the coil current IMout 1 - 0  slightly increases after a time t 58 , but the H-bridge circuit  20 X has not shifted to the slow decay mode. 
     Note that the shoot through protection mode is inserted between the respective modes as required so that the upper and lower FETs of the half bridge are not turned on at the same time. As a result, through-current can be prevented. 
     &lt;&lt;Second Quadrant: Time t 60 : Deceleration Stop Step&gt;&gt; 
     At a time t 60  in the second quadrant, the H-bridge circuit  20 X of the X-phase shifts to the flyback mode. The H-bridge circuit  20 Y of the Y-phase shifts to the charge mode. This second quadrant is a deceleration stop step of the stepping motor  120 . As shown in  FIG. 10 , the stepping motor  120  is in the Y+ phase, and the voltage VMout 3  becomes the voltage MVdd. 
     As shown in  FIG. 9 , in the charge mode, the voltage VMout 3  is switched to the voltage MVdd, and the voltage VMout 2  is switched to the GND in the H-bridge circuit  20 Y of the Y-phase. The voltage MVdd is applied to the Y-phase stator winding  124 Y, and the Y-phase coil current IMout 3 - 2  gradually increases. The operation in the second quadrant is similar to the operation in the fourth quadrant except for the direction in which the current flows. 
     A flyback pulse (kickback) occurring in a direction opposite to the direction of a voltage applied in an immediately preceding third quadrant occurs in the H-bridge circuit  20 X of the X-phase. The H-bridge circuit  20 X shifts to the free mode when the flyback voltage falls and further the coil current IMout 1 - 0  is equal to 0. The H-bridge circuit  20 X shifts to the free mode at a time t 61 . 
     In the free mode, back electromotive force appears in a direction opposite to the direction of the kickback in the H-bridge circuit  20 X of the X-phase. The occurrence time of the kickback and the back electromotive force vary according to the drive voltage of the motor, the driving load of the motor and the rotational speed. 
     As described below, when the motor current detected by the current detection unit  116  exceeds a predetermined current value during the period from the deceleration start step to the stop, the CPU  101  specifies the slow decay mode to the H-bridge circuits  20 X and  20 Y at every PWM cycle. 
     From the time of an immediately preceding quadrant step measured by the timer, a predetermined maximum speed, and the number of deceleration steps, the CPU  101  calculates the time of a step of this deceleration step turn. In place of the zero-cross of the back electromotive force, the CPU  101  performs commutation with this time set as a trigger, and shifts to a next third quadrant. 
     The absolute value of the Y-phase coil current IMout 3 - 2  may drastically increase due to deceleration. In this case, the H-bridge circuit  20 Y prevents overcurrent by shifting to the slow decay mode under current control at every PWM cycle. Here, since the absolute value of the coil current IMout 3 - 2  increases beyond a threshold value after a time t 62 , the H-bridge circuit  20 Y periodically shifts to the slow decay mode. 
     As a result, the stepping motor  120  reaches a final stop speed, and can be stopped at a desired stop position. 
     Note that it is also possible to decelerate by gradually decreasing ON-duty from 100% within a range where the coil current does not affect the driving of the motor and the final position holding. The ON-duty is a turn-on time of the FET at every PWM cycle. In this case, during deceleration under stop control, the commutation may be performed with the zero-cross of the back electromotive force set as a trigger. Detection of step-out can be identified based on deviation of the kickback time or back electromotive force. 
       FIG. 11  is a flowchart illustrating processing of the first quadrant of the X-phase in the present embodiment. The present embodiment is different from the comparative example shown in  FIG. 7  in the processing after the stop control start position. The CPU  101  sets a stop control timer after the stop control start position, and further operates with a stop control timer instead of the zero-cross of the back electromotive force of the Y-phase after (the stop control start position+1). 
     In the first quadrant, the CPU  101  sets a maximum duty for each PWM cycle and sets a value in the delay timer (processing S 50 ). The H-bridge circuit  20 X of the X-phase shifts to the energization period. In this energization period, the H-bridge circuit  20 X of the X-phase shifts to the charge mode. 
     The CPU  101  turns on the FET  2  on the high side (HS) of the connection point Mout 1  and further turns on the FET  8  on the low side (LS) of the connection point Mout 0  (processing S 51 ). Subsequently, the CPU  101  starts an energization timer (processing S 52 ). 
     The CPU  101  determines whether the rotational position of the motor is not less than (the stop control start position+1) (processing S 53 ). When the rotational position is not less than (the stop control start position+1) (processing S 53 →Yes), the CPU  101  starts the stop control. The CPU  101  subtracts the stop control timer (processing S 58 ), repeats the processing S 59  and the processing S 58  until the timer value is equal to 0, and then proceeds to processing S 60 . 
     When the rotational position of the motor is less than (the stop control start position+1) (processing S 53 →No), the CPU  101  proceeds to processing S 54  and performs normal first quadrant processing. 
     In processing S 54 , the CPU  101  determines whether the maximum time associated with the Y-phase has elapsed. When determining that the maximum time associated with the Y-phase has not elapsed (processing S 54 →No), the CPU  101  determines zero-cross of back electromotive force of the Y-phase (processing S 55 ). When determining that the back electromotive force of the Y-phase has not crossed zero (processing S 55 →No), the CPU  101  returns to the processing S 54 . 
     When determining the zero-cross of the back electromotive force of the Y-phase (processing S 55 →Yes), the CPU  101  subtracts the delay timer (processing S 56 ). When determining that the delay timer is not equal to 0 (processing S 57 →No), the CPU  101  returns to the processing S 54 . 
     When the energization timer is equal to 0 (processing S 57 →Yes), the CPU  101  proceeds to processing S 60 , turns off the FET  2  on the high side (HS) of the connection point Mout 1  and the FET  8  on the low side (LS) of the connection point Mout 0 , and terminates the energization period. 
     When determining in processing S 54  that the maximum time associated with the Y-phase has elapsed (processing S 54 →Yes), the CPU  101  executes the processing S 60  and terminates the energization period irrespective of the determination as to the zero-cross of the back electromotive force of the Y-phase and the count value of the delay timer. 
     After the termination of the energization period, the CPU  101  terminates the energization timer and calculates the rotational speed based on the value of the energization timer (processing S 61 ). Furthermore, in the case of the stop control start position or more (processing S 62 →Yes), the CPU  101  sets the stop control timer (processing S 63 ). Then, the CPU  101  ends the processing in the first quadrant of the X-phase. 
     The processing of the second quadrant of the X-phase by the motor driving control device according to the present embodiment is similar to the processing of the comparative example shown in  FIG. 8   
       FIG. 12  is a flowchart illustrating the processing of an energization-side PWM cycle in the present embodiment. 
     Here, “energization” includes one or more “energization-side PWM cycles” executed at every PWM cycle. The processing of the energization-side PWM cycle is always necessary to perform maximum current limitation under stop control including normal control. In the 1-phase excitation driving, a method using no PWM cycle is general. 
     When the energization-side PWM cycle is started and it is an initial cycle of the PWM cycle in this quadrant (processing S 70 →Yes), the CPU  101  sets a threshold value for the coil current (processing S 71 ) and proceeds to processing S 72 . When the energization-side PWM cycle is not the initial cycle of the PWM cycle in this quadrant (processing S 70 →No), the CPU  101  proceeds to processing S 72 . 
     When the coil current exceeds the threshold value (processing S 72 →Yes), the CPU  101  causes the H-bridge circuit  20  to shift to the slow decay mode (processing S 73 ) and proceeds to processing S 74 . 
     When the coil current does not exceed the threshold value (processing S 72 →No), the CPU  101  proceeds to processing S 74 . When the H-bridge circuit  20  is not in the slow decay mode (processing S 74 →No), the CPU  101  shifts to the charge mode (processing S 75 ), and when the H-bridge circuit  20  is in the slow decay mode (processing S 74 →Yes), the CPU  101  determines whether the energization-side PWM cycle terminates (processing S 76 ). 
     The CPU  101  repeats these processes S 72  to S 75  until the energization-side PWM cycle terminates (processing S 76 →No). 
       FIG. 13  is a flowchart illustrating the processing of the PWM cycle on a back electromotive side in the present embodiment. The back electromotive side is a non-energization side of the PWM cycle, and the processing of the PWM cycle on this side is executed at every PWM cycle. 
     When the back electromotive side PWM cycle is started and it is an initial cycle of the PWM cycle in this quadrant (processing S 80 →Yes), the CPU  101  causes the H-bridge circuit  20  to shift to the flyback mode (processing S 81 ), and proceeds to processing of S 82 . When the back electromotive side PWM cycle is not the initial cycle of the PWM cycle in this quadrant (processing S 80 →No), the CPU  101  proceeds to processing S 82 . 
     Thereafter, when the H-bridge circuit  20  is in the flyback mode (processing S 82 →Yes) and this flyback mode has terminated (processing S 83 →Yes), the H-bridge circuit  20  shifts to the back electromotive force mode (processing S 84 ), and then proceeds to processing S 85 . When the H-bridge circuit  20  is not in the flyback mode (processing S 82 →Yes), the H-bridge circuit  20  proceeds to processing S 85 . When the H-bridge circuit  20  is in the flyback mode (processing S 82 →Yes) and this flyback mode continues (processing S 83 →No), the H-bridge circuit  20  proceeds to processing S 88 . 
     In processing S 85 , when the H-bridge circuit  20  is not in the back electromotive force mode (processing S 85 →No) or when the back electromotive force mode has terminated (processing S 86 →Yes), the H-bridge circuit  20  shifts to the free mode (processing S 87 ), and proceeds to processing S 88 . When the H-bridge circuit  20  is in the back electromotive force mode (processing S 85 →Yes) and the back electromotive force mode continues (processing S 86 →No), the H-bridge circuit  20  proceeds to processing S 88 . 
     The CPU  101  and the H-bridge circuit  20  repeat these processes S 82  to S 87  until the energization-side PWM cycle has terminated (processing S 88 →No). 
     &lt;&lt;Various Deceleration Control Methods&gt;&gt; 
     In the motor driving control device  100  according to the present embodiment, when stopping the driving of the stepping motor  120 , the CPU  101  performs extension control of a commutation time for each step from the calculated deceleration start step until the rotational speed of the stepping motor  120  decreases to a predetermined rotational speed or less at which the stepping motor  120  can stop at a desired stop position. More specifically, when stopping the driving of the stepping motor  120 , the CPU  101  performs deceleration control in which a phase switching (commutation) time is increased according to the following deceleration step until the rotational speed reaches a speed capable of securing positional accuracy of the rotational stop position of the stepping motor  120 , so that the positional accuracy can be secured with few steps. 
     &lt;&lt;Deceleration Control Method Based on Increase of Time&gt;&gt; 
     The CPU  101  ceases the commutation based on the zero-cross of the back electromotive force until the stepping motor  120  reaches a predetermined rotational speed or less from the deceleration start step, and extends the commutation time for each step. More specifically, the CPU  101  measures the time of 1-phase excitation just before deceleration, and performs time control by gradually extending the phase switching (commutation) time, thereby decelerating the rotational speed of the motor. This deceleration method can secure the positional accuracy by adjusting the number of deceleration steps and a time increasing rate. It may be considered to be increase of time, for example, to increase the commutation time for each step at a constant rate (e.g., the time is extended by 25% in each step). This is represented in the following expression (1).
 
[Expression 1]
 
 T   next (1+ K   extend )× T   now   (1)
 
     Where, 
     T next : phase switching time in next step 
     T now : phase switching time in current step 
     K extend : time increasing coefficient between steps (for example, 25% or the like) 
     As a result, the time in each step is multiplied by 1.25→1.56→1.95→2.44, and the average speed is equal to 80%→64%→51.2%→41.0%. According to this deceleration method, the rotational speed can be steeply reduced immediately after the start of deceleration with few steps, and the rotational speed can be gradually reduced immediately before the termination of deceleration. 
     &lt;&lt;Deceleration Control Method Based on Specification of Final Speed+Constant Speed Decrease&gt;&gt; 
     The time of 1-phase excitation just before the deceleration start step is measured, and the speed is calculated by the expression (2).
 
[Expression 2]
 
 V   first =1/ T   prev   (2)
 
     Where, 
     V first : speed just before deceleration start step 
     T prev : time of 1-phase excitation just before deceleration start step 
     Furthermore, the number of deceleration steps and the final step time are specified, and calculation is performed according to the expression (3) so that the decrease in the average speed between steps is constant.
 
[Expression 3]
 
 V   tick =( V   first −1/ T   final )/ D   steps   (3)
 
     Where, 
     V tick : decrease of speed between steps 
     D steps : the number of deceleration steps 
     V first : speed at deceleration start time 
     T final : final step time 
     The speed in each step can be calculated by substituting this speed decrease into the expression (4).
 
[Expression 4]
 
 V   next   =V   now   −V   tick   (4)
 
     Where, 
     V next : speed in next step 
     V now : speed in current step 
     V tick : speed decrease between steps 
     According to this deceleration method, it is possible to perform settings for efficiently preventing overrun by specifying the rotational speed mainly contributing to kinetic energy. 
     &lt;&lt;Deceleration Control Method Based on Specification of Final Speed+Constant Time Increase&gt;&gt; 
     This is a method of specifying the number of deceleration steps and the time of a final step so that the time increasing rate of each step is constant. The relationship between the rotational speed and the time according to this deceleration control method is shown in  FIG. 14 . 
     This deceleration control method has a characteristic such that decrease in average speed immediately after deceleration starts is substantial and decrease in average speed decrease immediately before deceleration terminates is slight. 
     &lt;&lt;Deceleration Control Method Based on Specification of Final Speed+Constant Deceleration&gt;&gt; 
     This is a method of specifying the number of deceleration steps and the rotational speed of a final step so that the deceleration is constant. At this time, the rotational speed is represented by a linear function of time. The relationship between the rotational speed and the time according to this deceleration control method is shown in  FIG. 15 . 
     &lt;&lt;Deceleration Control Method Based on Specification of Final Speed+Speed Table&gt;&gt; 
     The commutation time is specified from a speed calculated from a deceleration obtained by measuring the time of 1-phase energization just before the deceleration start step, specifying the deceleration step number and the final step time, and performing ratio calculation based on a speed table (trapezoid/S-shape, presence or absence of a linear part), and deceleration is performed. According to this deceleration method, the speeds immediately after the deceleration starts and immediately before the deceleration terminates become gradual, and the influence on the load becomes slightest. 
     In addition to the deceleration control method described above, the motor rotational speed may be reduced by simultaneously using duty control to intentionally gradually reduce the duty per PWM cycle of 1-phase energization. For example, the duty is reduced by 10% each time, so that the duty is reduced to 90%→80%→70%→60%. In this case, when the commutation is performed with the zero-cross of the back electromotive force set as a trigger, for example, in a case where the load increases due to the rotation of the motor, the current required for lifting the load may be insufficient, and therefore time control of gradually extending the phase switching (commutation) time may be used in combination. The effect of this duty control on the deceleration of the speed is different depending on the motor and voltage/load. 
     Effect of the Present Embodiment 
     (1) By performing the extension control of the commutation time for each step or the extension control of the zero cross interval between the steps, it is possible to enhance the positional accuracy of the rotational stop position of the motor when the motor driven under 1-phase energization and without a position sensor is stopped with respect to a varying voltage or a load varying due to rotation of the motor.
 
(2) According to the deceleration control method of the present embodiment, it is possible to stop the motor at a desired stop position without overrunning the rotational stop position of the motor.
 
(3) According to the deceleration control method of the present embodiment, it is possible to accurately control the rotational stop position of the motor with a low number of steps and in a short time irrespective of the drive voltage or the load.
 
(4) When the coil current exceeds the threshold value, the CPU  101  specifies the slow decay mode at the PWM cycle. As a result, the decay of the coil current can be suppressed, and the driving force and the holding force can be maintained. In addition, generation of electromagnetic noise can be suppressed.
 
(5) When the coil current exceeds the threshold value, the CPU  101  performs control so as to repeat the charge mode and the slow decay mode. This reduces the current ripple.
 
     Variant 
     The present disclosure is not limited to the above embodiment, and may be modified and implemented without departing from the subject matter of the present disclosure. For example, the following matters (a) to (c) may be adopted. 
     (a) The type of the motor is not limited to the stepping motor, but includes a brushless DC motor. 
     (b) It is also possible to perform deceleration by gradually reducing the on-duty from 100% within a range where the coil current does not affect the driving of the motor and the final position holding. Note that the on-duty means the time an FET at each PWM cycle is turned on.
 
(c) the CPU  101  may perform the extension control of the commutation time for each step by setting a stop control value in an energization timer without the stop control timer.