AccelStepper - how to maximize initial torque

My first post - hope my question make sense.

I'm writing a sketch that will control a bipolar stepper motor (2.7V, 2.1A, 92oz) in order to run a peristaltic pump for aquarium dosing purposes. Ideally, the motor will start, run for a defined period of time (at a steady and very slow speed) and then stop. I'm using the AccelStepper library. Driver is a DRV8825. Using 12V to run it.

Problem is that the motor cannot overcome the initial standing inertia (?) caused by the friction of the pump tubing against the housing. It just clicks and skips. I can get it started if I stretch the pump tubing for a moment to reduce the friction. Once started, it continues to run.

My question: is there a way, using the functionality of AccelStepper to increase or maximize the starting torque?

The only code (other than the necessary declarations) controlling the motor is:


AccelStepper stepperAlk(1, ALK_STEPPER_PIN, STEPPER_DIR_PIN);

stepperAlk.setAcceleration(10.0);
stepperAlk.setMaxSpeed(500);
stepperAlk.setSpeed(160);


Works perfectly - except the initial torque problem. Any help or ideas would be appreciated.

Have you adjusted the motor current as described here? Are you using microstepping? Are you using acceleration?

Stepper motors operate at max torque all the time. If your motor does not have enough torque to get the load moving, then you've made a poor choice of motor, and you need one with a higher stall torque rating. Over-driving the motor risks damaging the motor, and probably won't solve your problem anyway. It's a band-aid at best.

Regards,
Ray L.

If you only need very slow then consider a gearbox. The stepper will be happier running at 100RPM with an output shaft speed of 20RPM. That gives you 5 times the torque with the same power consumption.

Thanks for your comments. I just thought that maybe there was a way to combine single steps with increasing acceleration to overcome the resistance gradually. I probably don't sufficiently understand the physics involved. The motors I have are rated at 92oz. The highest torque sold for a 2A stepper at Steppers Online. Disappointing.

BTW: I set vRef at .95V and I use 16X stepping - maybe I should try 32?

GlassReef:
Thanks for your comments. I just thought that maybe there was a way to combine single steps with increasing acceleration to overcome the resistance gradually. I probably don't sufficiently understand the physics involved. The motors I have are rated at 92oz. The highest torque sold for a 2A stepper at Steppers Online. Disappointing.

BTW: I set vRef at .95V and I use 16X stepping - maybe I should try 32?

That is a very tiny motor....
Regards,
Ray L.

Steppers are all-or-nothing. If it can't take one step then it can't start moving.

A full step will have more torque than a 1/16 or 1/32 step.

GlassReef:
My question: is there a way, using the functionality of AccelStepper to increase or maximize the starting torque?

Nope. Accelstepper just manages the rate at which the individual steps are taken. You need a bigger motor, more volts, or fool about with the pump set-up.

MorganS:
If you only need very slow then consider a gearbox. The stepper will be happier running at 100RPM with an output shaft speed of 20RPM. That gives you 5 times the torque with the same power consumption.

This is a very good idea. Just gear the thing down. I made a thing to open and close my window blinds using a gearbox built out of meccano - the stepper drove a worm-and-wheel.