flash3780
Mechanical
- Dec 11, 2009
- 829
Good evening. I've been banging my head against the wall a bit trying to compute the moment of inertia of an assembly by hand. The reason for computing the MOI in this way is because the organics in some components (epoxy, potting, etc.) are not accounted for in our Solidworks model, so I've supressed the parts with organics and reported the MOI of everything else. The plan is to then add in the MOI of the remaining parts with their measured masses. Easy peezy, right? I should just be able to the parallel axis theroem to bring everything back to the global origin and bada-bing!
Solidworks reports the principal MOI, the MOI along the model axes, and the MOI about the origin along the model axes (see attached picture).
So, I wrote a quick script in Matlab to figure out the moment of inertia of my measured parts about the origin, given their moment of inertia about the centroid. To test it, I tried taking the moment about the centroid given by Solidworks and finding the moment about the origin:
Which produces:
Now if you compare those results to the picture, Solidworks gives the following for the inertia tensor about the origin:
Note that the products of inertia for my calculation don't match SolidWorks. I can't for the life of me figure out what I've screwed up, but I figure that its more like that I made a mistake than SolidWorks (one would hope). Anyhow, any suggestions?
Thanks for the help!
//signed//
Christopher K. Hubley
Mechanical Engineer
Sunpower Incorporated
Athens, Ohio
--
Solidworks reports the principal MOI, the MOI along the model axes, and the MOI about the origin along the model axes (see attached picture).
So, I wrote a quick script in Matlab to figure out the moment of inertia of my measured parts about the origin, given their moment of inertia about the centroid. To test it, I tried taking the moment about the centroid given by Solidworks and finding the moment about the origin:
Code:
I_stator = parallel_axis([ 256434.34, -21.80, 8.76;...
-21.80, 165497.02, -13.34;...
8.76, -13.34, 165469.26],362.56,28.75,0,0)
function I = parallel_axis(I0,mass,x,y,z);
% Function translates the moment of inertia of a body to an arbitrary point in space. For a point mass, use I0 = 0.
R = [0;0;0]-[x;y;z]; % Column vector from the center-of-mass to the origin
I = I0 + mass.*(dot(R,R)*eye(3,3) - R*R');
Which produces:
Code:
I_stator =
2.5643e+05 -2.1800e+01 8.7600e+00
-2.1800e+01 4.6518e+05 -1.3340e+01
8.7600e+00 -1.3340e+01 4.6515e+05
Now if you compare those results to the picture, Solidworks gives the following for the inertia tensor about the origin:
SolidWorks said:Ixx = 256434.35
Iyy = 465234.02
Izz = 465206.26
Ixy = Iyx = -23.45
Ixz = Izx = 9.35
Iyz = Izy = 13.33
Note that the products of inertia for my calculation don't match SolidWorks. I can't for the life of me figure out what I've screwed up, but I figure that its more like that I made a mistake than SolidWorks (one would hope). Anyhow, any suggestions?
Thanks for the help!
//signed//
Christopher K. Hubley
Mechanical Engineer
Sunpower Incorporated
Athens, Ohio
--