Wimminz – celebrating skank ho's everywhere

Goose stepping

The image on the right is a cheapo stepper controller, bough from amazon with prime so bought and delivered for just under ten quid.

So, with no more ado.

From top to bottom

I’m going to assume you have some sort of breakout board or arduino or something that is going to generate your direction of rotation and movement pulses, I’m going to assume you have a suitable 12-24 VDC PSU, and I’m going to assume you have one stepper motor, up to around NEMA 23 and up to around 1 NM torque and 2 phase (that means 4 wire) though you can run a 4 phase if you bond the phases together in parallel.

There are some dip switches at the top that set current limiting and microstepping, if in doubt start at a low current like 1 amp and start at 16 microstepping.

Steppers motors can get warm or even very warm, but never hot.

Stepper motors should sound smooth, no vibration, if there is vibration or harmonics you have a setting wrong.

Connect one phase of the stepper across the A terminals and the other phase across the B terminals, just make sure you get the colour coding right, see image on right.

Now one wire from your “pulse” output to PUL +, and one wire from your “direction” output to DIR +, and a common ground for PUL – and DIR – to your ground (GND should do) connect PSU -ve to GND, PSU +ve to VCC, and you’re good to go.

Pretty much all steppers are 1.8 degree which means 200 steps per revolution, at 16 microstepping that means 3,200 microsteps per revolution, if you run a 5 mm pitch ballscrew directly coupled to the stepper then 3,200 / 5 = 640 microsteps per mm of X travel along the ballscrew.

At 640 steps per mm I can get 1,000 mm/min out of a real cheap NEMA 23 4 wire stepper, that’s 16.7 mm/sec

1,000 mm/min x 640 microsteps per mm = 640,000 microsteps per minute.

640,000 microsteps per minute / 3,200 microsteps per revolution gives us 200 rpm at the stepper to get that max 1,000 mm/min out of a 5 mm pitch ballscrew.

A 10 mm pitch ballscrew would give us 2,000 mm/min at the same RPM, but half the precision / accuracy per step.

200 RPM is, being practical, all you are going to get out of a cheapo 4 wire stepper connected to anything, sure, you may get 600 RPM running it free, but when connected you do NOT want to miss steps, or put up with noisy / harmonic motions, I’m talking “sweet spot” and the sweet spot is going to be around 200 RPM for this stuff.

“This stuff” assumes things like 100 kHz signal between the “computer” and the controller above, eg cheap, sure you can spend 900 quid on a PCI-E driver card that will talk to controllers in mHz speeds, but it’s not relevant here.

Get it all right and it sings sweetly, runs smoothly, and steppers never get more than warm to the touch.

I’m using one of these and a 12 VDC PSU and a cheap NEMA 23 stepper on a linear slide with a 5 mm pitch C3 ballscrew, in theory the ballscrew is ground to 30 micron (0.030 mm) accuracy, and in theory my 640 microsteps per mm gives me 1.5 micron accuracy, so in *theory* I can get 32 micron repeatable accuracy out of this and rapid speeds of up to 1,000 mm / min, and I have an 800 mm travel on this so 47 seconds from one end of the slide to the other, for a 400 quid linear rail and a 10 quid controller and a 15 quid PSU, and a PC running Mach3.

32 micron we are talking about the focus dot size of a metal marking fibre galvo laser (which in reality ranges between 15 and 50 micron depending on the final f-theta lens)

So call what I have 450 quid, theoretical 32 micron accuracy with a travel of 800 mm and a full excursion time of 45 seconds or so.

Want 5 micron accuracy over the same distance with the same speeds?

Expect to pay 5x as much.

Wants 5 micron accuracy and 60x those speeds?

Expect to pay 50x as much.

The fact is that today in 2017, and this is the point of this article, control a reasonably good precision and excellent value 400 quid ground 5 mm pitch ballscrew linear motion table from amazon with a 10 quid stepper controller from amazon, and pretty much out of the box get 50 micron or better accuracy, repeatable accuracy.

50 micron is two thousandths of an inch.

older more mature readers will know that 2 thou is good enough for 99.9% of everything, with some specific exceptions, all mechanical diesel injection pump for example.

Being able to do this at the touch of a button on a screen for less than 450 quid…. that’s fucking awesome. Flash Gordon awesome.

Because it means 20 positions per millimetre, and a 800 mm travel means 16,000 positions, I can say “go to X0” and it will, to within 0.050 mm or better, I can say “go to X550.75” and it will, in 32 seconds, to within 0.050 mm or better, I can say “go to X250.55” and it will, and it will do it all day long, with the stepper controller set to 1 amperes and drawing 12 VDC, so PC aside I’m using 12 watts of power to do this.

The linear rail can carry 80 kg, and even at the low “stepper runs luke warm at best” 1 amp 12 volt supply, a 16 mm diameter 5 mm pitch ballscrew will crush your fingers so badly you have to go to hospital for significant surgery.

This is fucking peanuts, money wise, for what you get and what you can do.

The only downside is you MUST either have or be prepared to learn, some basic CNC skills, such as Mach3, and learn about things like steppers and microstepping and pulse durations and so on, but it’s not actually that hard, it’s just complex.

I have never had or used an arduino or pi, I am always tempted but time etc, but I think it is a reasonable assumption that anyone who isn’t daunted by buying an arduino and a couple of shields and knocking up some gcode could do the hardware side fairly easily, once they read something like the Mach3 manual, (103 page pdf) even if they don’t have Mach3, it’s a good foundation for CNC.

Buy this shit while you still can in 2017, most of it is only so good and so cheap because it is made in China, which means you’re at the mercy of exchange rates and geopolitics, and there is nothing there to suggest that 2018 is going to be a whole lot cheaper than 2017, quite the opposite in fact.

If you’re in the UK and want slightly better quality stuff but still reasonable prices, but want to buy locally, I’ve used Motion Control Products for years, and have steppers and controller and stuff from them that is going on 10 years old and still works like new.

In closing, if you’re not sure, and wavering, consider this…

A “used” acme etc linear motion jobby is worthless even if it only has 2 hours hobby use on it… a “used” C3 ballscrew linear motion jobby with a few hobby hours on it retains 95% of its value, so all you’re looking at is a 10 quid stepper controller and a 15 quid stepper motor, if you already have an arduino.

If you have a PC you *MUST* have some sort of breakout board of box to talk to a stepper controller, MCP (listed above) do a parallel port breakout for 25 quid, if you do not have a parallel port you can get a USB2 to parallel converter specially for mach3 for 80 euros, there are other option such a smoothstepper etc and on upwards in price.

An arduino running a shield and gcode is NOT the same thing as a PC running Mach3, but they will talk to the same sort of hardware to produce motion, so it depends on what you want to do with that motion… if you do not want to input various parameters and cut a keyway or mill a pocket and generate the gcode and then control the machine all in one program then you do not need mach3, an arduino can run a stepper well enough to drive a plotter axis for example.

YMMV but IMHO you won’t learn shit worth knowing by starting out taking apart printers and floppy drives for steppers / servos etc, and arduino or a pc and a shorter linear rail with ballscrew could come in less than 200 quid, and becaue it would have some useful precision and repeatability and rigidity and power, you could learn one hell of a lot from playing with it.