Close

Stepper motors: common ICs

A project log for Supercon talk: a pragmatic guide to motor controls

Developing my first hardware con talk in the open

jonathan-beriJonathan Beri 11/09/2015 at 16:100 Comments

I should spend a bit of words explaining what's inside a stepper to understand how they can be made to move. As a generalization, a stepper has a magnet on a shaft and 4 coils in a "plus" pattern around the perimeter. When a coil is energized as an electromagnet, the magnet on the shaft rotates to the next coil. Energize the coils in succession, the motor turns one way. Reverse the order, it turns the other way. Progress through the coils more quickly and the motors move faster. Do nothing and...the motor brakes (more on that in a bit.) You can find animated diagrams online explaining this pattern but I like to visualize the coils like a game of Simon.

In a basic Bipolar motor, you cycle through the coils by energizing 1 of the say even coil sets, then the odd and then reversing the polarity on the even, etc. Practically, that's no different than controlling 2 BDC motors, albeit with different logic. Luckily that means any of the H-Bridge solution we've previously discussed will work just fine. If you need to move a stepper continuously and don't care about positioning, a 555, XOR Gate & flip-flop will turn that stepper. You have to make sure you have enough power from your controller, so selecting the right H-bridge/Mosfet for your demand is just as important as before. The L293D can be found in maker kits everywhere because it Just Works™ and therefore breakout boards are super cheap for prototyping.

And braking? We actually kinda get that for free. If the cycling stops but one coil is energized, the motor will stop quickly and even hold in place - something unnatural for the BDC counterpart. To freewheel you actually have to turn off all coils. If you have a 3D printer you might have experienced the need execute a "disable motors" command in order to move around the printer bed or extruder.

Discussions