Torque in a motor depends on current going through the motor's coils. Therefore, the common and logical way to control this torque is to perform a current regulation by monitoring it directly. This method is called the current mode control. Another way to drive a motor, called voltage mode control, exists.
Current Mode vs. Voltage Mode
In that case, the current is not monitored, but the voltage that must be applied to the motor is calculated in order to reach the desired target current. This article presents the advantages and drawbacks of both methods. The stepper motor driver powerSTEP01 from STMicroelectronics is the only driver on the market that can be programmed to use both methods.
See related product
In a motor design, the electrical specifications of the motor can be represented as an inductance, a resistance and a back EMF as shown in Figure 1. A bi-directional stepper motor has a dual-H bridge and the same signals are applied on each H-bridge with a phase difference of 90 degrees. Hence, we are focusing only on one H-bridge.
Figure 1
In a current mode control, the current is monitored thanks to a shunt resistor at the bottom of the H-Bridge (see Figure 2) and the voltage across the shunt resistor is connected to an ADC.
Figure 2
Based on this voltage, various actions are triggered as summarized in Figure 3. If the voltage is above a given threshold, a decay must take place. If the current needs to decrease slowly, a slow decay is performed by recirculating the current at the low side (or high side) of the bridge. A fast decay decreases quickly by applying a negative voltage to the coil. After a short period, the current needs to increase and a positive voltage is applied to the motor. The current then fluctuates around the target value until a new value is programmed.
Figure 3
Current Mode Control Solutions
Then, the following issues must be solved with the current mode control:
- Requirement to program slow and fast decay in the same cycle.
- Algorithm for the decay timing. As the BEMF changes with the speed, the decay timing must change. Besides, in microstepping, the step value is different, requiring a different timing at each microstep. Even with an optimized timing, the current is noisy, preventing accurate positioning.
- As timing changes, the frequency changes and can drop in the audio noise. That is (of course) not acceptable in many applications.
- Requirement of shunt resistors. At high current, shunt resistors are large and expensive.
Voltage Mode Control Solutions
The voltage mode control solves these problems. As seen previously, the motor is an inductance and a resistance that are fixed values and a Back EMF that depends on the speed of the motor. Depending on motor speed, the system behaves as a resistive circuit (at low speed) or as an inductive circuit (at high speed). Having an Iph_target target current, the voltage to apply is calculated by the following equations:
Where Ke is the electrical constant of the motor in V/Hz and fel is the electrical frequency in Hz.
In this mode, the voltage is applied by a fixed frequency PWM (for most systems, a frequency of 20 kHz is fine therefore always above the audio frequencies). As a consequence, there is no mix decay to handle, and the system provides smoother operation, more accurate positioning, allows stall detection and better torque control at low speed. Unfortunately, any stepper motor has resonance at various speeds, and the voltage mode control shows weaknesses when the system damper is not high enough. Indeed, as the current is not monitored, when vibrations occur, the BEMF is not predictable anymore. As by design, the frequency and value of the voltage cannot adapted, the current phase follows the shaky movements of the BEMF resulting in an uncontrolled torque and potentially ends up in standstill.
Figure 4 visualizes the difference of driving between these two modes. The H-bridge voltage outputs are in blue and green and the current in the motor is in brown. In current mode control, when blue and green interlock, a mix of slow and fast decay occurs unlike the voltage mode that uses only slow decay to adjust the current.
Figure 4
To conclude, depending on requirements, voltage or current mode control are more than adequate. At low speed, the voltage mode control is more beneficial and at high speed, or if the motor must go through resonance phases, the current mode is better suited. The powerSTEP01 from STMicroelectronics is programmable to drive stepper motors in both modes allowing designs of versatile platforms.