AllVol said:
Which "that" won't work ... the resistive divider or the lm317?
Sorry, the resistive divider won't work. The LM317 will.
What is it actually that controls the speed of a motor the voltage or the current, and are there better ways of controlling the speed of it. I want it to go slowly.
At no load, voltage is pretty much the only thing that determines motor speed. The more load you put on the motor, the more current it will draw. So voltage->speed, current->torque. BUT of course things aren't that simple, because as load (torque) increases, speed decreases. At a fixed voltage, an increasing load will cause the motor to draw more current and use it to apply more torque in an effort to maintain that maximum speed (which it obviously won't be able to unless the motor is seriously oversized and massive compared to the load. Even then it will slow down a smidgen.) Bigger motors have a shallower slope for their speed-torque graph which means that their speed is less sensitive to changes in torque/load than smaller motors which have a steeper speed-torque curve. This means if you apply X load to a large motor, it's RPM will decrease by less than if you apply X load to a smaller motor. Makes sense.
It's all a balance. You cannot blindly apply a voltage to get a motor to spin at a specific speed unless you know the load. The higher the load, the higher the voltage you must apply to get it to run at the same speed (and the more current it will draw as well). This is assuming of course, you can supply unlimited current regardless of the voltage and the motor doesn't heat up. There are practical limits.
For speed control, don't use a variable resistor- that is wasteful since it dissipates all extra voltage off as heat. Instead, for an inductive load like a motor, use PWM pulses. A frequency of 20kHz is good (too slow and the motor will noticeably pulse and too fast is inefficient for the electronics). The % duty cycle you apply is effectively the % of the full voltage seen by the motor.
Actually if you want it to always go at a speed significantly lower than it's maximum, you should gear it down a bit so you also get more force...it's pointless to run a undervolt a really fast motor to get it to move very slowly because it is too weak and doesn't output enough power to do anything.