Will microsteps make a stepper faster ?

Busy with a project that uses a Nema 17 stepper and leadscrew that moves a gantry. Movement is too slow.

My Mega 2560 is fitted with a Ramps 1.4 shield, and A4988 stepper drivers.

The code that I am using to turn the steppers is :

digitalWrite(X_DIR_PIN, LOW); // direction  - move gantry DOWN

while(digitalRead(EndStop1) == HIGH){
	digitalWrite(X_STEP_PIN, HIGH);
	delayMicroseconds(5);
	digitalWrite(X_STEP_PIN, LOW);
	delayMicroseconds(900);
}

I have the jumpers removed so the driver is running full Steps - accuracy is not critical - the gantry only needs to move 300mm between endstops.

I am finding the gantry travel too slow and would like double the current speed.

I find that I can run the code with delayMicroseconds in the range of 800 to 1300. Outside that range the motor gets very noisy, vibrates, shudders, and does nto turn.

My calculation tells me that I am running at just over 1000 steps per second.

= 5 revolutions of the stepper motor
= 5 revs x 8 mm pitch = 40 mm / second gantry travel
= 7,5 second travel for the 300mm distance.

Specs on the motor and leadscrew :

NEMA 17 200step/rev stepper motor
Step Angle ( ° ) 1.8
Motor Length L(mm) 40
Rated Voltage (V) 3.4
Rated Current (A) 1.7
Phase Resistance (Ω) 2
Phase Inductance (mH) 3
Holding Torque (g.cm) 4000

Leadscrew
Tr8*8-2p (4 starts)
Lead Screw Diameter 8mm
Pitch 2mm
Lead (Effective Pitch) 8mm

micro stepping makes it move slower, but gives better accuracy. you want it to move faster, increase the pulse rate.

I don't think microstepping will make it faster and if it does I wouldn't expect much difference. Microstepping might allow you to accelerate a load faster, but once you're up to speed I doubt it makes any difference.

accuracy is not critical - the gantry only needs to move 300mm between endstops.

In that case, a stepper is probably the wrong motor. The main advantage of stepper motors is multiple-precise location/positionlng (or maybe precise slow-speed, like in a clock). If you only need to "hit" a couple of end-points there are better-easier solutions.

DVDdoug:
In that case, a stepper is probably the wrong motor.

Hi DVDdoug

So if a stepper is not the ideal motor for the application, what should I be looking at to move a gantry ( running on V slots ) a distance of 300mm and stop at the endstop, and change direction quickly ?

So if a stepper is not the ideal motor for the application, what should I be looking at

A DC motor.

unless I change the leadscrew to a GT2 belt :?

GT2 belt

1000 pulses per second @
200 steps / rev
= 5 rpm / second
@ 2 mm ( GT2 belt ) x 20 tooth pulley on stepper x 5 revs per second = 200mm / second
= 1.5 seconds / 300 mm required travel

You can make a stepping motor go faster if you accelerate up to the speed and down before a stop.

You can also make it go faster by supplying a higher voltage to the motor but keeping the current down with a chopping regulator, and increasing the stepping speed as well of course.

Grumpy_Mike:
You can make a stepping motor go faster if you accelerate up to the speed and down before a stop.

You can also make it go faster by supplying a higher voltage to the motor but keeping the current down with a chopping regulator, and increasing the stepping speed as well of course.

Thanks Grumpy_Mike

I am limited to a 12V system so I can not change the voltage to the stepper.

By using acceleration, I assume that you mean starting the stepper motion with the existing 900ms delay, then after, say 25 steps, increase it to a faster speed / shorter ms delay ( a speed that the stepper does not run at if started from stationary ) ?

So for example, I could decrease the ms delay by 50ms after every 25 steps until the ms has reduced to 600ms.

But realistically, what are the chances that a Nema 17 is going to turn much faster than the 5 rev per second ( 1000 pulses ) that it is doing at the moment ?

By using acceleration, I assume that you mean starting the stepper motion with the existing 900ms delay, then after, say 25 steps, increase it to a faster speed / shorter ms delay ( a speed that the stepper does not run at if started from stationary ) ?

That is one way, but a much better way is to gradually change the delay so that it ramps up to the right speed.

what are the chances that a Nema 17 is going to turn much faster than the 5 rev per second

A Nema 17 defines the size of the frame it tells nothing about the motor's resistance and current rating.

You would need to post a data sheet to the motor and also to the driving electronics. If you have no current regulation driver and you can only use 12V then that is your basic problem. You are stuffed.

Grumpy_Mike:
That is one way, but a much better way is to gradually change the delay so that it ramps up to the right speed.
A Nema 17 defines the size of the frame it tells nothing about the motor's resistance and current rating.

You would need to post a data sheet to the motor and also to the driving electronics. If you have no current regulation driver and you can only use 12V then that is your basic problem. You are stuffed.

Unfortunately, the specs in the top post are all that I have for this stepper.

When you say 'gradually change' does it mean to start at 900ms delay and decrease the delay by 1ms for each of the first 300 steps to get the delay down to 600ms ( as opposed to changing the delay in 25ms chunks ) ?

123Splat:
micro stepping makes it move slower, but gives better accuracy. you want it to move faster, increase the pulse rate.

Bit od a falacy that. Microstepping reduces resonance, resonance can be a show stopper, so microstepping
can enable higher speeds. No high performance stepper driver uses full steps these days because of this,
although many dynamically switch between microstepping ratios to get the best of both worlds.

However if your library cannot generate pulses fast enough you are forced to use less microstepping
to get more rotation per step pulse.

For speed you must ramp the step rate up and down for all but the tiniest steppers or it'll
immediately stall. Motors just cannot accelerate to top speed instantly, they have inertia (the only motor
I've seen jump to full speed on the first two pulses was 6mm in size).

Any leadscrew system will be slow compared to belt drive.

Resonance is worst with a leadscrew as there is not damping in the mechanical system, so adding mechanical
dampig can be useful. Some high-end stepper drivers detect resonance and add electromagnetic damping
to the driver waveform.

DaveO:
But realistically, what are the chances that a Nema 17 is going to turn much faster than the 5 rev per second ( 1000 pulses ) that it is doing at the moment ?

Give it 24V and a decent microstepping driver - I've seen 2400rpm at 20V supply (but with neglible torque however!)