Thomas McGahee wrote:
>
> Mark,
Wow, good tutorial here! Thanks!
> The TEAC Floppy typically uses a 5 wire stepper motor. One of the
> wires is a COMMON which is tied to one side of each of the four
> unipolar coils. You can easily determine which wire is the COMMON
> by using an ohmmeter. There will be only one wire that will measure
> the same value with respect to all the other four wires.
OK, so this one's not split into 2 pairs of windings. Good data.
> Connect the COMMON to +12v. Arbitrarily label one of the wires .
> Connect to ground. At this point the stepper motor will lock
> into a fixed detent position. One at a time short each of the other
> wires to ground. You will find that one wire makes the shaft move
> clockwise a small amount, and one wire makes the shaft move counter-
> clockwise by the SAME amount. Label the wire that caused the shaft to
> rotate CW . Label the wire that made the shaft rotate CCW .
> Label the remaining wire .
>
> The stepper motor will rotate full-step CW if the sequence is thus:
> A B C D A B C D A B C D etc.
>
> The stepper motor will rotate full-step CCW if the sequence is thus:
> A D C B A D C B A D C B etc.
>
> The stepper motor will rotate half-step CW if the sequence is thus:
> A AB B BC C CD D DA A AB B BC C CD D DA etc.
>
> The stepper motor will rotate half-step CCW if the sequence is thus:
> A AD D DC C CB B BA A AD D DC C CB B BA etc.
Given the 5 wires (instead of 6), I remembered all that, summat vaguely
but well enough as I've been watching the discussions in here. There's
another rotation scheme used sometimes:
The stepper motor will rotate full-step CW if the sequence is thus:
AB BC CD DA AB BC CD DA AB BC CD DA etc.
similar possibility for CCW.
> A diode should be connected across each coil winding. The Anodes
> all connect to the Common wire, and the Cathodes connect to A B C
> and D.
>
> The diode will supress high voltage spikes when the coil is
> switched from it's ON to it's OFF state.
AKA inductive kicks, yep. OK, makes sense.
> You can drive the windings to ground via a grounded HexFet, or even
> a decent bipolar transistor such as a Motorola MPS6566. The transistor
> must be capable of handling the current through the winding, which
> can be computed using Ohm's Law: I=E/R where R is the DC resistance
> of the coil.
Logic-level hexfet'd be a good idea here, too, want to make sure you
saturate the FET (Or transistor.)
> The transistor or HexFet is used as a switch. When it is OFF
> the voltage across it is +12v and the current is zero. When it is
> fully ON, the current will be from a few hundred milliamps to
> perhaps an amp or so (depending on the stepper motor), and the
> voltage across the switching device will be only a few tenths
> of a volt. In either case the POWER dissipation of the device
> can be kept quite low so long as the switching device is driven
> *hard*.
Would not need a protection diode across a transistor, either, as
that's already across the coil winding instead - OK, sounds good.
(Hexfet's have their own protection diode, o'course.)
> The maximum speed at which the typical floppy stepper motor can
> be stepped is between 200 and 300 steps per second. As the speed
> increases, torque will decrease until finally the motor becomes
> erratic and loses synch.
OK, good info there, that knocks steppers out of the running for one
project (I need a known speed motor control to spin a little cylinder or
disk at a very high, controlled speed, for playing with a Nipkow
heads-up display design for wearable computers. Need something like a
30+ Hz refresh rate for that, want some other motor then (1200
steps per second's pushing these more than they'll run at, IOW) Well,
still many other projects!
> It is possible to increase the speed significantly by using
> a chopper mode with feedback which keeps the ON current constant.
> In this case the compliance voltage is raised to over 24 volts.
> However, such techniques are normally reserved for driving
> large high power stepper motors. It would be over-kill to do
> this with a floppy stepper motor.
Hmmm. Makes sense, unless size & weight constraints made it necessary.
> As to driving the stepper motor via a PIC, it is ridiculously
> easy. You assign four I/O pins to drive the ABCD driver
> transistors. If using full-step mode, you can simply shift 2
> bits left or right in a register and then copy the least
> significant 4 bits to the I/O pins. Initial "seed" value would
> be binary 00010001. Just make sure that when you shift the carry
> value is properly set up based whether you are shifting left
> or right.
Knew that, it's the speed & wiring I needed refreshing on - good to be
thorough, though! Could also do a 2-wire interface through a shift
register, etc., if interface pins are low (12C508A etc.)
> I have to go right now, but if anyone has any further questions,
> ask away. As usual, this is only ONE of MANY POSSIBLE ways to
> do things. If you have a preferred method of doing this, share
> it with the rest of us.
>
> Fr. Tom McGahee
Good thorough info. These are strongest when static, was the major
thing I needed to remember here Thanks!
Mark