Stepper motors

I need to control 6 small, low-power stepper motors from a pc.
Does anybody know what to buy, and where?
Thanks.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
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.
http://bobodyne.com/web-docs/robots/Hex/PCB/index.html http://bobodyne.com/web-docs/robots/Hex/Petal_3/index.html http://bobodyne.com/web-docs/robots/Hex/index.html http://www.taomc.com/stepperarray/stepperarray.htm
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.
--
- Alan Kilian <alank(at)timelogic.com>
Bioinformatics Applications Director, TimeLogic Corporation
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
This is interesting!
How do you control the motors? Isn't controlling them directly "unstable"? What about speed and accuracy?

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

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.
--
- Alan Kilian <alank(at)timelogic.com>
Bioinformatics Applications Director, TimeLogic Corporation
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
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?
wrote:

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
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.
--
- Alan Kilian <alank(at)timelogic.com>
Bioinformatics Applications Director, TimeLogic Corporation
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
There is a shareware program called turbocnc .Do a search on google so you can locate and/l it. The program will run 8 axis using two parallel ports. Of course you will need a stepper motor driver that takes step and direction signals from the PC. You can get the drivers from www.xylotex.com Dan

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Site Timeline

  • - the site's newest thread. Posted in

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.