Inertia tensor for multibody system(Robot)

In summary, Sigurd needs to find the inertia tensor of the robot using the parallel axis theorem, and then use that to calculate the inertia tensor of each part of the robot.
  • #1
Sigurdv
3
0
Hi,
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

Sigurd
 
Physics news on Phys.org
  • #2
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:)
 
  • #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.
Example:
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:
[tex]
^{3}COM=[x_3\ y_3\ z_3\ 1]^T
[/tex]
And then the inertia tensor(aligned with coordinate frame 3)
[tex]
^{3}\mathbf{I}
[/tex]

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)

[tex]
^{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
[/tex]
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.
[tex]
^{c}\mathbf{I} =\ ^{3}\mathbf{I} + m(r^2\mathbf{1} - \mathbf{r}\mathbf{r}^T)
[/tex]

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
 
  • #4
Sigurdv said:
… 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.

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!)
 
  • #5


Hello Sigurd,

Thank you for sharing your project on simulating a legged robot. In order to accurately simulate the movement and behavior of your robot, it is important to consider the inertia tensor of the entire system.

The inertia tensor is a mathematical representation of the distribution of mass within an object. For a multibody system like your legged robot, the inertia tensor can be calculated by summing the individual inertia tensors of each component, taking into account their respective masses and distances from the center of mass.

One approach to finding the inertia tensor for your robot would be to use the parallel axis theorem, which states that the inertia tensor of a body can be calculated by adding the inertia tensor of the body when it is rotating around its center of mass to the product of its mass and the square of the distance between its center of mass and the new axis of rotation.

Another approach could be to use the composite body method, where the inertia tensor is calculated by considering the individual components as separate bodies and summing their respective inertia tensors using the parallel axis theorem.

I would also recommend consulting with a mechanical engineer or a robotics expert for further guidance on calculating the inertia tensor for your specific robot design.

I hope this helps and wish you all the best in your simulation project. Keep up the great work!
 

FAQ: Inertia tensor for multibody system(Robot)

1. What is the inertia tensor for a multibody system?

The inertia tensor for a multibody system is a mathematical representation of the distribution of mass and mass moments of inertia for all the individual bodies within the system. It is used to calculate the system's overall inertia and is an important factor in determining its dynamics and control.

2. How is the inertia tensor calculated for a robot?

The inertia tensor for a robot is calculated by summing the individual inertia tensors for each body within the robot, taking into account their respective mass, position, and orientation. This can be done analytically using the robot's geometric properties or numerically using computer simulations.

3. What is the significance of the inertia tensor for a multibody system?

The inertia tensor is crucial for understanding the dynamics and kinematics of a multibody system, such as a robot. It provides information about the system's resistance to changes in motion and can be used to design controllers and predict its behavior.

4. How does the inertia tensor affect the motion of a robot?

The inertia tensor influences the motion of a robot by determining how much force is required to accelerate or decelerate the system, as well as how it will respond to external disturbances. It also affects the stability and controllability of the robot.

5. Can the inertia tensor change for a multibody system?

Yes, the inertia tensor can change for a multibody system if there are changes in the mass distribution, shape, or orientation of the individual bodies within the system. For example, if additional components are attached to the robot, the inertia tensor will be different compared to when it was just the base robot.

Back
Top