My goal is to control the movement of a lightweight plastic ball (under 100 grams I believe) by connecting it to three stepper motors with nylon strings and some small pulleys.
I managed to get a basic system running, using three Nema 17 motors and three Easydrivers v4.4, using the AccelStepper library to control the motors.
The three Easydrivers are powered by one 12v power supply.
What I'm having trouble with is finding the most efficient setting for the three motors, to get (1) maximal possible speed and (2) enough torque to move the ball and overcome the friction of the strings and pulleys. I do understand that speed and torque have an inverse relation, but what I'm looking for is a way to find the optimal balance between the two for this project.
I assume that the main parameters that affect these goals are: (a) motors power supply, (b) the AccelStepper code, and (c) the weight of the ball and friction of the strings.
While the solution for (c) is relatively straightforward I guess (less weight and less friction is better) I'm struggling to understand what would be the best powering options and optimal code to get the best results (for example, the max speed and acceleration settings for the steppers).
Please let me know if I should provide additional information about the setup.
Any tips or nudges in the right direction would be very appreciated!
To get the fastest response from the stepping motors, you need to use the highest possible motor supply voltage, which is 30V for the Easydriver 4.4 (although I would derate that by a few volts). Then, set the current limit to the maximum the Easydriver will tolerate without overheating, subject to the limitations of your motors. See these pages for the background: Jones on Stepping Motors
It would be helpful if you could post the specs on the motors, i.e. current rating or voltage rating and winding resistance.
The winding resistance is about 2.8 V/ 1.7 A = 1.6 ohms. Those are industrial-style motors and for maximum performance need a much heftier chopper-style driver than what you have. The Easydriver 4.4 is only capable of 750 mA per winding (if that), which might be OK for your purposes. You might look at these drivers Pololu - DRV8825 Stepper Motor Driver Carrier, High Current which handle twice the current and are good for much higher voltages.
At 750 mA per winding, for best performance your 24 volt power supply should be rated for around 6 times that (for 3 motors), or about 4 amperes. However, if the chopper driver is working properly and the load on the motors is light you might get away with half that, or 2 amperes.
Great, thanks, I will try it out with a 24V power supply, and read the Jones tutorial.
Unfortunately I probably won't have the budget or time to get different drivers at this point
Is it also possible to calculate the maximum rpm these motors can get with these specs?
I can't seem to find that piece of information anywhere.
No, you can't calculate the maximum RPM. It depends very much on the motor characteristics, the motor load and also how you drive the motors (voltage, current and proper acceleration ramps).
Resonance is usually the limiting factor to speed in systems like this - you have little
mechanical damping in the system I think, which won't help, but the most
important measure you can take is adjust the microstepping factor for best performance.
Setting both MS1 and MS2 high will give 8x microstepping, try that if not already using it.
You have to increase the frequency of step pulses accordingly, but the benefit is approximately
sinuisoidal drive to the motor, reducing step-induced torsional oscillations.