Anyone else pick up one of those ten-wire, 5-phase stepper motors from Ax-Man and want to know how to drive it? We did!
The motor is a Seagate part #54173-001 or #72060-440 hard drive motor. Being as it's a 5-phase rather than your more standard 2-phase stepper motor, finding an existing driver box or chip to run it proved to be rather impossible, if not cost-prohibitive. Now, ETC does make the PMM5303 HIC for 5-Phase Stepper Motors chip, but we ended up making our own driver consisting of commonly-available IC's and one custom GAL.
The basics of the circuit are nothing special: a 4029 binary counter is configured as a 5-stage counter (0,1,2,3,4,0,1,2,3,4,etc.), and its binary outputs are decoded to 5 signal (phase) lines by a 4028 BCD-to-Decimal decoder. This plus a ULN2003 darlington array and an external clock source would have been enough to drive the motor and fulfill proof-of-concept. However, we wanted to take this circuit a step further.
The circuit as described thus far actuates only one coil at a time and is called "Wave-Drive". Although functional, this technique only gives the motor half the torque it could have. By activating more than one coil at a time we can increase the power of the motor. Thus, we created a custom GAL to add two additional drive modes: "Full" and "Half-Step". The logic diagram for our GAL is shown to the right. Throw in some NAND gates to handle bi-directional drive and this completes our test circuit for this wonderfully unique piece of hardware.
Included in the schematic below are example waveforms for each drive mode, as well as the pinout for motor's 10-pin connector. For each coil, one pin is connected to the ULN2003 and the other is tied to GND. An external clock source was used and is not shown in the schematic.