I am making a 2 wheel drive robot.

Suppose I know that my robot is going to weight x kg when finished and I know the diameter of the wheels y (geared motors will be connected directly to the wheels). I can choose from several geared motors and I know the peak torque of each motor and the idling speed.

How can I calculate the load that a specific motor can take? I.e. will a motor with a given torque be able to move my robot without being too overloaded? What rpm will the motor have when it has load?


2 Answers 2


I would say you should use the diameter of the wheel (and any gearing embedded in the motor) to calculate how much force each motor can provide in the point of contact, and estimate the amount of friction your wheel would have against the expected surface your robot would be moving around on.

Note that this isn't exactly trivial to estimate, so usually what people do as far as I know is either choose a motor that is obviously much stronger than what would be necessary or prototype until they reach a sweet spot. Open-source projects are also a great way to become more aware of the realistic needs of your robot.

I will also add another point that wasn't included in your question but is mighty important: if you plan to use DC motors, make sure they have encoders. That way, you will be able to perform closed-loop control and your robot will be able to walk in a straight line. Also, if its possible, try to use current sensing so you can detect overloading conditions when your robot is stalled.


There are really nice on-line calculators on societyofrobots including a robot motor factor calculator that could be helpful for you.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.