In an ideal DC motor, rev is proportional to voltage and torque proportional to the current. So if you connect it to a constant-voltage supply, it would ideally reach the maximum speed immediately. Of course, this does not happen in reality: the mechanical parts have a finite moment of inertia, so you get an increase of angular momentum -> torque -> current, which would be infinite for an immediate-response. Such a current is prevented by two factors:
- a non-arbitrarily powerful supply,
- the internal resistance of the copper wire inside the motor.
Assuming you have an over-sufficiently powerful supply, you can also overcome the latter factor to some degree: the voltage that drops off at the copper resistance simply follows Ohm's law. You can determine the resistance \$R\$ by applying a small voltage to the motor while this is blocked mechanically. Then, rather than simply using the constant voltage that corresponds to the desired rev in torque-free mode, you always add the voltage \$R\cdot I\$. You need to be careful not to produce resonances with such a feedback circuitry. Also, not all motors might cope very well with the large currents that may arise with this method.
A constant current means, for an ideal motor, a constant torque. This is approximately true for real motors. It doesn't matter what you attach to the motor, or how fast it's turning.
What you seem to be missing is Newton's second law of motion. It states that force is the product of mass and acceleration:
$$ F = ma $$
The constant current you supply to the motor is one force. The weight opposes that force. The difference is the net force, \$F\$ in this equation, and \$m\$ is the mass of the weight, plus the mass of the rotor and the string and everything else the motor must move.
You set current to be sent to the motor so that the torque applied is 10 in-lbs without any load.
Not possible. There is nothing for the motor to "torque against". This is the mechanical equivalent of trying to develop 10 volts across a dead short. The motor will rapidly spin at its maximum speed, and the back-EMF will rise to the driving voltage such that your driving electronics are unable to supply enough voltage above the back-EMF to make enough current to have that much torque.
Let's just say you determine how much current is required for 10 in-lbs of torque, and you drive your motor with a constant-current supply set to that.
What happens when the torque from the weight/load is 5 in-lbs?
Assuming that the rotor and the string are massless and frictionless, the weight will be accelerated upwards by the net 5 in-lbs of torque (motor's 10 in-lbs, less 5 in-lbs from the weight). The rate of the acceleration is determined by the mass of the weight and Newton's law above.
As the speed of the motor changes (the weight is accelerating), the back-EMF also changes. Your constant-current supply to the motor will have to apply an increasing voltage to maintain the same current. Electrical power thus goes up, as does mechanical power.
What happens when the torque from the weight/load is 10 in-lbs?
Motor torque balances weight torque. However fast the weight is moving (if at all), it keeps doing that. Newton's first law applies.
What happens when the torque from the weight/load is 15 in-lbs?
The weight will accelerate downward, overpowering the motor. However, it won't be a free-fall. The motor cancels some of the force of the weight, resulting in a slower acceleration downwards.
If the weight overpowers the motor, then eventually it can get the motor to run backwards, relative to the way it would run if there were no load. When this happens, the back-EMF now adds (instead of subtracts) from the voltage you apply to the motor. At some point, your controller, which is attempting to maintain a constant current, must apply a negative voltage to maintain that current. In other words, the back-EMF is sufficient to create the necessary torque on its own: your controller must oppose it.
This is perfectly symmetrical with the first case, where the motor was overpowering the weight. In that case, electrical and mechanical power went up (without bound, if you let them). In this case, electrical and mechanical power go down (negative, if you let them). Energy is conserved because you are changing the gravitational potential of the weight.
The need to resist the back-EMF usually means storing electrical energy in a capacitor or battery, or using it to heat a resistor. If you can't do this fast enough, then the motor will create more torque than your desired 10 in-lbs, and you have hit the limits of your "constant current" driver.
Further reading:
Best Answer
To control acceleration you need to measure one of two things: Current or Velocity.
Acceleration is the affect of torque being applied to some inertia & torque is proportional to current. Thus if you measure current & control current you will control acceleration.
Acceleration is the rate of change of velocity. Thus if you measure the velocity you can deduce acceleration.
to implement this you will need a controller to generate an error term (be it current or velocity) & via a PI controller to generate a voltage demand to then generate the needed PWM to synthesis the needed voltage.
I would suggest controlling based upon velocity simply because controlling acceleration via Torque (ie current) is extremely dependant on the load profile. Equally if a DC motor is being used you can take credit for the velocity is proportional to the voltage applied & while this "constant" isn't really constant, it variation with stator current maybe low enough that you could operate open-loop with just a voltage profile.