How to obtain the translational and angular accelerations of center of mass in rigid body
4 visualizzazioni (ultimi 30 giorni)
We had placed several acceleration sensors (e.g., 4 to 6) on a compressor at different positions. And the translational accelerations in x,y,z-directions over time for different positions on the compressor were messasured.
Assuming the compressor as Rigid Body, we would like to calculate the translational and angular accelerations of center of mass in this compressor (the x, y, z-corrdinates of center of mass are known) by using MATLAB.
Any suggestions would be greatly appreciated. Thanks. Feng
William Rose il 17 Ott 2023
@Feng, I have moved my comment to an answer, since that is what I intended.
To start, we should know the positions of the sensors relative to one another in x,y,z space, at rest.
To estimate what is happening at the center of mass (COM), we have to know where the COM is, relative to the sensors. This could be calculated, if you know the mass distribution of the compressor. If you do not have that information, then you can estimate the COM location, using your own intuition, or by using the centroid of the sensor locations, or the median of the sensor locations.
Are the sensors oriented with their axes aligned? If not, then we need to estimate their relative alignment, and then we need to rotate the measured linear accelerations to a common coordinate system.
Now assume that the linear accelerations are expressed in a common coordinate system. I assume that the rotation angles will be quite small, since this is a compressor which is probably mounted securely to a base that does not move. In that case, we can estimate the motions of each sensor by double integration, without having to do quaternion math associated with rotations. We will go back and check the small-rotation-assumption later.
Now you have estimated 3D positions of each sensor as a function of time. If the entire compressor were truly rigid, then the distances between sensor locations and the angles between them would all remain exactly constant. But in the real world, this will not be the case, due to non-rigidity and due to measurement error. Therefore, at each time point, we estimate the position and orientation of the "rigid" body, by least squares fit, using singular value decomposition. This will provide an estimate of the position and orientation of the "rigid" compressor at each instant.
Then we can see how much it rotates, and we can see if the positions estimated with linear acceleration plus rotation are close to the positions we originally esitmated by ignoring the rotation.