Calculating current draw vs Voltage and load

Does anyone know how to calculate current draw from FRC motors (775, CIM,…) under load? I need to determine the voltage at which the current draw would be the lowest to output a certain load since I presume the motor would last longer if used at a lower current.
If this isn’t what your team considers when designing gearboxes, then what do you guys typically takes into account?


I highly suggest using the mechanism design calculator in my design spreadsheet for these kind of calculations. You can use it to calculate current drawn under load, stall voltage, and a bunch of other things. There are explanations on how to use it in there, and if you have any questions feel free to ask here or over PM.

1 Like

Output torque is always directly proportional to current draw. At stall, drawn current is directly proportional to voltage, so a stalled CIM will output 2.41 n-m at 12v, 1.205 n-m at 6v, 0.2 n-m at 1v, and so on and so forth.

If you want to know drawn current at a variety of motor speeds, you need to do some basic modeling. Instead of V=IR, you have to take back emf (the voltage generated by the spinning rotor) into account:
V-w*Ke = I*R
R = V_nominal/I_stall
Ke = (V_nominal + I_free + R)/(w_free)

In the case of a CIM,
R = 12/131
Ke = (12 + 2.7 + R)/(5330)

So, a CIM spinning at 2000 RPM with 8v of power applied will generate:
(8-2000*Ke) / R = 26.74 amps of current, which equates to 2.41/131*26.74 = 0.49 n-m of torque.

Limiting current in design is a great idea, and a good way to save battery and lengthen your motor’s life (and prevent burning them outright, especially in the case of 775s)


Given an applied voltage:

Scale your free current, stall current, stall torque, free speed appropriately.

Figure out the torque (at the motor end) required by your mechanism.

Figure out what percentage of stall torque that is.

Take your stall current, subtract your free current, multiply the result by that percentage.

That’s your current draw.

To solve for optimal voltage to lower current draw, it’s essentially a mathematical optimization problem at that point. There’s some fun higher math to do that, but you can probably solve it iteratively using Excel or Wolfram Alpha or a similar tool to get a good approximation.

You can usually download a graph for the motor that lists torque for current and efficiency. Its usually part of the cad drawing.

As for voltage… In a DC environment Voltage = speed and current = torque and Watts (Voltage * current) = power. Be aware though that in todays environment the motor controller NEVER will apply anything but 12V (assuming its a 12V system like FRC) to the motor. Just not all the time. All motors are controlled with a PWM output that allows MOSFETs which are digital switches. If you would want a motor to go 1/2 speed it would need 6v at lets say 10 A that means the Motor controller would have to produce a resistive load (Which could be done with a regular transistor) of 6V at 10A and dissipate 60W in heat. Instead the MOSFET will provide 12V for 1/2 the time of usually a 1.5ms cycle or for .75 ms and then turn it off for .75ms. The motor being and inductive load coupled with a capacitor on the controller will average this out to 6V and you will see 6V with your meter. The advantage of this is that you drop mV over the MOSFET - lets say 100mV in which case the motorcontroller only his to dissipate 0.6W in above example for 1/2 the time or and average of 0.3W So when you calculate your Torque look at the graph at the torque desired and then see what max RPM is possible at that torque. So for a CIM you can see the graph here

So you see at about 20A you get about 160something oz-in and about 4600 rpm at 12 V if you want to go slower the Motor controller will adjust the “voltage” by pulsing it in above manner accordingly

In general, you should select the fastest motor speed which produces the amount of power you need (including a safety factor of perhaps 50% - 100%). Separately, figure out the output shaft speed you need to do the job. Divide one by the other, and there’s your target gear ratio. OBTW, performance curves for many FRC motors is available at

Especially if your “load” is a force/torque which is not moving, then don’t use a motor to do the heavy work, add some sort of counterbalance or spring to do most of the work, and just use the motor for the final stabilization.

1 Like

Check out the Vex Website. There are graphs and motor curves such as this one which will help with what youre asking.

1 Like

Consider looking at this post:

You will be able to investigate the Current response to the motion of the robot.
You can also investigate impact of changing gearboxes.

1 Like