Revisiting stepper motors

We had a chat about this before and since then a stepper module was offered by the community http://wiki.tinyclr.com/index.php?title=Community_Offers Although this is a nice little stepper module, it has its limitations. First, it depends on NETMF for timing (not real time) and second it is not suited fro high power (heat).

After thinking about this for long, this is what I came up with. There are hundreds of stepper motor drivers out there that run off a PC’s parallel-ports. Some have heat sinks, some even have fans. Some companies even sell them with suitable large motors as a set. Even if it is not parallel port, it still uses the same concepts, pulses for steps. I think 90% are based on TB6560 chip from Toshiba. http://www.toshiba.com/taec/components2/Datasheet_Sync//382/27885.pdf

Examples?
5 axis driver: http://www.aliexpress.com/product-gs/320121980-5-Axis-TB6560-3-5A-stepper-motor-driver-wholesalers.html
3 axis driver: http://www.aliexpress.com/product-gs/320124466-3-Axis-TB6560-Motor-Driver-Stepper-controller-wholesalers.html
one axis non-parallel: I peeked inside our laser machine and this is what it uses! http://www.aliexpress.com/product-fm/493655561-Free-Shipping-3-pieces-lot-24-50V-DC-CNC-Stepper-Motor-Driver-Controller-2M542-4-2A-wholesalers.html

So, instead of limiting our module to a motor type or voltage, I think we will offer a module with parallel-port output. The module will have its own little 50mhz micro to handle timing and keep all motors in sync, which is very important when you are doing a curve. The C# code will send high level commands to the module, like 50 CW steps on A, 30 steps CCW on B. And then other commands for curves.

With this, you can use large or small motors, select the driver that fits your needs and hopefully create a commercial product using gadgeteer. Our laser machine would be MUCH more professional if we upgraded it electronics with FEZ Spider :slight_smile:

Comments?

Sounds like a good idea.

:stuck_out_tongue:

Do not feel bad soldermonkey, your module still has its place. It is perfect for smaller stepper modules. Our goal from this is to run a commercial machine.

I had considered doing a module kinda like that which would have had a micro on it with replaceable driver daughter boards. ( I actually had the layout half done…) This, like Gus said, would allow precise control in both steps per second and step counting (LittleStep offers one or the other depending upon whether you use a Y or P socket).

So far I have used it with 12v@ 1A after a few hours of it in ‘hold’ mode and the motor and driver were warm to the touch (~110Deg F). These can operate at much higher temps without problems, I expect this one to run at 12v and 2A before having to worry about fans or heatsinks.

I planned for LittleStep to work anywhere you might want to use a servo but want better controll. It can drive any bipolar stepper(4 wire) up to about a NEMA 17.

Also working on a module. Up to 6 steppers. Using the dstep chip from ST. Cant find the part number now as I’m away from home and PC. Module will power main board and have heatsink. Design almost done. It isnt as flexable as the one GHI is suggesting, but it will be smaller, and probably cheaper. :slight_smile:

The design is almost done. I’ll do a 3D mockup once done and while I wait for the pcb.

I think there’s room for both types of modules. Something for the big, complex, demanding scenarios, and something for those with more simple needs (and more modest means… having an integrated stepper driver will certainly make it less expensive).

Another way of making a ‘dumb’ stepper or motor controller a little smarter is to make a ‘motor manager’ module. It would have a I or S socket as input and could have several P sockets as output. That way you could pass high level commands to a real time motor control module that could syncronize the motors and give it higher resolution/frequency control.

This way it would maintain the Gadgeteer socket strategy and let you choose your power level and control level.

Now that I re-read the original post I realize I may be restating the same thing…

Thoughts?