I'm trying to control some 24 volt DC brush motors using Pololu Trex Jr's. I don't have any inputs into the Ardunio to detect the motor RPM, but I need to be able to set specific RPMs from the Ardunio. So I can control the voltage sent to the motor, but I'm having issues overcoming the inertia/friction that is needed to get the wheels the motors to start turning at all.
So if X volts are required to get the wheel turning at all, once the wheel is turning, it is going much faster than some of the speeds I want to run it at. So if X volts gets it running at say 100 RPM, if I want it to go at 50 RPM, I have to first give it X volts, then drop the voltage to something less than X (call it Y). And if I just give it Y volts in the first place, the motor doesn't turn at all.
I know this is a well understood aspect of controlling DC motors, but what I don't know is if there are standard equations or algorithms available to get a motor to run at specific speeds in a non-feedback system, or if I need to just give it a higher voltage to start it turning and then drop the voltage, determining what voltages to get what RPMs through trial and error...
Or should I switch to motor controllers that have current feedback? Maybe that would be easier?
Can anyone point me in the right direction on this?