Increase NEMA17 power to stop skipping steps on Rubik solver

Hello.

I'm creating a Rubik cube solver which uses 6 NEMA17 17HS4401 motors, 6 DRV8825 drivers, 19V~6.32A power supply, NodeMCU brain - like in the attached schema.
The drivers are set to 0.8V with the potentiometer.

The problem is that the motor doesn't have always enough force to finish a full rotation(attached to the Rubik's cube face, when not perfectly aligned, even tough I can easily do it by hand.)
I've tried playing with the time between steps but it didn't seem to help.

delay(35);
//200 steps per rotation
int steps = (rotation * 50) + 2;
for (int x = 0; x < steps; x++){
digitalWrite(PIN_STEPS, HIGH);
delay(2.4);
digitalWrite(PIN_STEPS, LOW);
delay(2.4);
}

Do I need a bigger power supply? Or maybe increase the voltage on the driver?

Any help is appreciated, thanks.

Could need more power. Are you micro stepping?

Also, If you're really connecting this up using a breadboard, that may be the problem - they aren't intended for handling large currents.

It's in full step mode. I'm indeed using a breadboard..

Case closed, I suspect!

delay(2.4); looks odd to me. delay doesn't support float values as I know it.
Also delay 2 + 2 might give a too high frequency. Try 2 + 10, or more.

Use some microstepping. Full steps lead to resonant miss-stepping (aka mid-band resonance), and is extremely noisy. Slower motion should allow some more torque, especially if not using full-steps.

You may simply have too low torque motors - if you are direct driving without reduction gearing this is more likely. Motor torque is strongly dependent on motor size if no gearing is used (which is why gearing is often used).

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.