A Stepper Smörgåsbord
The Maker movement has created a growing demand for stepper motors to build into projects like 3D printers and CNC machines. The market has responded and now there is a huge variety of reasonably priced stepper motors to choose from.
But not all motors are created equal. Two identical looking motors may have the same NEMA size designation, yet have completely different electrical specifications. So it is important to choose an appropriate driver for your stepper. At best, a poor match will result in poor performance. At worst, a motor or driver may go up in smoke.
Basic Motor Drivers
The first generation of hobby-level motor controllers like the V1 Motor Shield were almost all based on the ubiquitous L293D chip - a very basic dual H-bridge chip. These bridge chips have no current limiting, so you need to apply Ohm's Law to determine a supply voltage that would not exceed the chip's maximum current rating.
Many high-performance steppers have a very low phase resistance so the maximum 'safe' voltage is impossibly low. These motors are simply not compatible with those first-generation hobbyist controllers.
The Adafruit V2 motor shield uses the more modern TB6612B dual bridge chips. These are more efficient and have a higher current rating. But the TB6612 has no current limiting either, so many high-performance motors are still off-limits for even the V2 shield.
Choppers to the rescue!
Current limiting drivers - also known as "Chopper" drives - are capable of handling a wider range of stepper motor and power supply combinations. Current limiting was previously only available in expensive industrial controllers. But thanks largely to the increased demand from Makers, current limiting drivers are now becoming available at reasonable prices
Motor drivers like the DRV8871 allow you to use much higher drive voltages to get best results from these high performance motors. The higher drive voltage helps to overcome the inductance of the motor windings to produce more torque at the start of a step. But to keep current to a safe level, it 'chops' the current output when it exceeds the preset limiting level.
The DRV8871 bridge chip is capable of much higher supply voltages and currents than an L293D. However, it is only a single bridge chip. We will need to combine two of them to drive the two phases of a typical stepper motor. In this tutorial, we'll wire up 2 DRV8871 breakout boards to drive a high-torque bipolar stepper motor.
For more information on how a current-limiting "chopper" driver interacts with the motor, please read this guide: Matching the driver to the stepper