Stepper motors

I need to control 6 small, low-power stepper motors from a pc.

Does anybody know what to buy, and where?


Reply to
Loading thread data ...

I made a small PCB using 5841A serial-in driver chips that can drive 8 unipolar stepper motors.

I have them hooked up driving 56 steppers on the way to a total of 343 motors in all.

formatting link
It costs me $15 to have the PCB made and put on all the parts.

You can use the schematic and build a prototype yourself if you want, or I'll sell you a populated and tested one for $35 including shipping to the US.

You can get the data sheet for the drivers online.

Reply to
Alan Kilian

This is interesting!

How do you control the motors? Isn't controlling them directly "unstable"? What about speed and accuracy?

Reply to

I use the parallel port to shift bits into the drivers. It takes three output pins: Data, Clock and Latch.

I don't know what you mean by this.

The speed is as accurate as your OS allows.

Winders will be bad, Linux without the X-Window-system will be OK. An RTOS will be great. (I use QNX)

Accuracy will be perfect (As far as steppers go) without regard to your OS choice. It's just bits.

Reply to
Alan Kilian

How do you "wait" for the pulse to complete, so that you can send the next one? I guess you would have to create a for-loop, making the cpu going crazy. And if the next pulse is too close, you'd loose track of the position, right?

How many pulses do you think is the max on say a pentium 550MHz?

Reply to

For a non-realtime OS, you have several methods.

You can sometimes use a "micro" sleep. Linux has usleep() or use the select() TCP/IP call with a microsecond timeout.

For a real time OS, you just setup a timer running at whatever rate you want, and it calls your step routine at the right rate.

Stepper motors really don't need THAT high a step rate.

I have almost 50 motors on one serial chain, so I need to send

200 bits of information out the parallel port to get the motors to step one step. (4-phase: 24 steps-per-rev (48 at halfstep))

At 5 revs-per-second for my motors, that's 240 steps-per-second and 200 bits-per-step = 48,000 bits-per-second out the parallel port. (It's really more like 3 times that since I'm not doing anything fancy with the clock.

Of course if you use 400 steps-per-rev motors, you need more steps-per-second, but you can do the math no problem.

So anyway, unless you are trying to step faster than the motors can handle it, you'll probably be able to run as fast as you like with any PC.

I'm using a 233 MHz Compaq laptop right now.

Reply to
Alan Kilian

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.