Robot Arm Torque Tutorial

@Jdiknight Welcome to the RobotShop Community. By “3DoF”, do you mean an articulated arm with shoulder / elbow and wrist, or a “3DoF” like:

Regarding moment of inertia, you’d need it for each actuator and for each link. The more links you have, the increasingly complex the calculations become. As for the shape (for inertia calculations), use something “relatively close” (rectangle normally works well enough), unless your 3D CAD software can calculate it for you.

@cbenson by 3dof i mean like the example you gave here Lynxmotion (LSS) - 3 DoF Robotic Arm (Kit)

It would be interesting if you could treat each link as “massless” to save a ton of calculations (and only take into account the “heavier motors” like the ones in the wrist, as well as the payload (which is now only moving in 2D). On the plus side, the inertia calculations are a bit easier since there are fewer degrees of freedom.

1 Like

Hello @cbenson I am struggling with calculating the the required torque for my robot arm (I tried to follow the tutorial but I am confused at how to apply it to my robot arm). This is a diagram of my arm below:

How would I calculate the torque due to gravity, would I assume all the masses are in the centre?

@pk2902 Welcome to the RobotShop Community.

“Counter-torque” needed to keep the arm horizontal against gravity would be:

  • 0.535Kg x 45cm (assuming the mass is centered) = 24.075 Kg-cm
  • 0.81Kg x 50.5cm (90-22-35/2) = 40.905 Kg-cm
  • 0.55Kg x 79cm (90-22/2) = 43.45 Kg-cm
  • 0.5Kg x 90cm = 45 Kg-cm (payload?)

Add them up to get 153.43 Kg-cm. However you show there’s a mass on the opposite side:

  • 0.264Kg x 15cm (30/2) = 3.96 Kg-cm

Therefore the torque needed at the pivot would be:

  • 153.43 Kg-cm - 3.96Kg-cm = 149.47 Kg-cm (let’s round it to 150 Kg-cm)

If you wanted to raise the arm, the pivot would need to produce more torque than 150 Kg-cm to produce a change in velocity (i.e. acceleration). To calculate that torque is more involved since the equation is Torque = (Moment of Inertia) x (Angular Acceleration). A slow acceleration involves less additional torque.

Thank you for replying!! Very helpful

Yes the 0.5kg is the payload.

Great, i’m gonna try to calculate the torque due to angular acceleration and then add it to the torque due to gravity?

I’m guessing I will need to specify in how many seconds I would like the link to move up or down. (E.g. 45 degrees in 1 second).

Moving 45 degrees in one second doesn’t actually directly give you acceleration (radians per second per second) but rather the average angular speed. The harder part tends to be calculating the total inertia of the system.

Thank you,

Total Inertia=Motor Inertia + Link Inertia, if i’m correct

Does that mean I will already need to have motors selected? And then do the calculations

Effectively the inertia of each of the masses (and the support rod). Assuming the motor is not rotating at high speed (and it’s not a flywheel), its effect on the inertia is likely to be minimal so it’s up to you if you want to estimate it and include it. Remember, even with all the calculations, it’s best to multiply the calculated value by a “safety margin” to account for inefficiencies etc.

So would I use this equation I=(m*r^2)/2 for each of the masses and add them together? (I’ve also seen some other equations for inertia online)

I’m gonna be adding around 20% to my final calculations as the safety margin.

I’m really appreciating your help!

When it comes to inertia formulae, it’s dependent on the shape, the rotation, where the weight is located etc. You’ll need to look it up for each unfortunately. Example

Ok great, thank you for all the help!

Hi again, small question,

When calculating inertia let’s say for example I’m using the following equations from your tutorial and my diagram:

I = (m*r^2)/2

image

Would I take ‘r’ to be from the pivot point to the centre of each mass?

e.g. if I’m calculating the inertia where the mass is 810g:

would r = 68cm or would r = 50.5cm

Note that the formula I = (m*r^2)/2 is associated with a disk rotating about the center, which is not the case in your drawing (no disk). You’ll likely be using the formula for a “rod”, “plank” or “satellite”. In inertia equations, “R” is associated with the object’s radius, whereas “L” is the length from the axis of rotation to the center of mass of the object.

Thank you, So I’ve completed the calculations for the joint, and found it to be around 19Nm (~15Nm + 20% for safety margin)

How would i calculate the torque needed for the base motor? The motor is positioned as below:

To calculate the torque do I ignore the torque due to gravitational torque?

Thank you in advance

Provided the arm is horizontal to the ground, the torque needed is only a factor of the acceleration needed. If you really want to do the calculations, it’s back to Torque = (Moment of Inertia) x (Angular Acceleration).

I’m using the equation for a rod rotating at one end:
1/3mL^2

The acceleration can be 360 degrees (2pi) in 4 seconds. Therefore, the angular acceleration is:
pi/2

However is ‘m’ for the moment of inertia the total mass of everything above the base motor?

You’re getting into understanding how to use equations for moment of inertia, which is beyond the tutorial here. It took a chapter in Physics to understand the concept of inertia and the corresponding equations, so it’ll be best to do some background reading outside of this tutorial to ensure you get things right :slight_smile:

Ah I see, thank you for all the help!

One last question,

Would you say the torque at the base will be the most torque needed for the arm? Or will it be a lower value?

Sorry about spamming your comment section:)