Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Inertia tensor for multibody system(Robot)

  1. May 18, 2010 #1
    I'm trying to make a simulation of a legged robot. The Robot consists of a body, with 6 legs attached, all with three DOF. This entails that i have a total of 19(18 from the legs + 1 from the body) moving parts. To be able to make a simulation, i need the centre of mass and the inertia tensor of the entire robot.
    I have the centre of mass and tensors for the individual parts(+all forces(impact+friction), angles, angular velocities and accelerations).

    The centre of mass of the entire robot is quite easy to find, using a mass weighted sum of the centre of masses, but i'm having trouble finding a way to derive the inertia tensor of the entire system from the tensors of the smaller parts.

    Any help would be greatly appreciated

  2. jcsd
  3. May 18, 2010 #2


    User Avatar
    Science Advisor
    Homework Helper

    Welcome to PF!

    Hi Sigurd! Welcome to PF! :smile:

    The total inertia tensor Itotal about the overall c.o.m. is the sum of the inertia tensors In of each part, all about the overall c.o.m.

    so you need the parallel axis theorem, to convert the principal moments of inertia of each part about its own c.o.m. into moments of inertia about the overall c.o.m. (and then you have the tricky part of converting them all to the same x,y,z axes, since I assume the principal axes of different parts won't be parallel :redface:)
  4. May 18, 2010 #3
    Hi again, thanks for the big welcome:smile:, and fast reply. I think i understand the procedure you explained to me, but just to be shure that i'm on the right track.
    The robot legs consist of three links, each with a coordinate frame attached(frame 1, 2 and 3). If i want to find the contribution of the last link(link 3) of one of the legs to the overall inertia tensor, i do the following:

    First i find the centre of mass of the last link, in coordinate frame 3:
    ^{3}COM=[x_3\ y_3\ z_3\ 1]^T
    And then the inertia tensor(aligned with coordinate frame 3)

    I then move the coordinates of the COM through the links, to come to the centre of the robot(Where i want derive the overall inertia tensor)

    ^{c}COM=[x_c\ y_c\ z_c\ 1]^T=_1^cT\cdot_2^1T \cdot _3^2T \cdot [x_3\ y_3\ z_3\ 1]^T
    Where T is a transformation matrix derived by using the denavit hartenberg notation(Just a normal translation+rotation matrix).
    Now that i have the COM position in the central coordinate frame, and then by the parallel axis theorem i get the new tensor.
    ^{c}\mathbf{I} =\ ^{3}\mathbf{I} + m(r^2\mathbf{1} - \mathbf{r}\mathbf{r}^T)

    I then need to do this for all centre of masses, add them together and finally i have the overall inertia tensor of the robot.

    Is this procedure correct or am doing something completely wrong
  5. May 18, 2010 #4


    User Avatar
    Science Advisor
    Homework Helper

    Hi Sigurd! :wink:

    Yes, that looks ok. :smile:

    (though I can't remember whether your (r2I - rrT) formula is correct … I've never had to combine tensors with different orientations, so I've never looked it up!)
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Similar Discussions: Inertia tensor for multibody system(Robot)
  1. Tensor of Inertia (Replies: 0)