Multibody Dynamics Component
SixDOFMB

Description:

Coordinate System:

The coordinate system is right hand rule. X cross Y gives Z and Roll is right hand rule about X, Pitch is right hand rule about Y, and Yaw is right hand rule about Z.

Vector Storage:

All linear three vectors (LinPos, LinVel) store their values as [X, Y, Z].
All angular three vectors (AngVel) store their values as [Roll, Pitch, Yaw].
The transformation matrix TM is stored:

Pre-multiplying a local vector by the TM will generate the vector in global coordinates.

Multibody Dynamics, Link Numbers and 60 and 20 Length Vectors:

Please refer to Multibody Dynamics and 60 Length Vectors for information on 60
length vectors.

Methodology:

The SixDOF component models a six-degree of freedom base body. Gravity is initialized as Z down, X north, and Y east.

The SixDOF component calculates the position, velocity, and acceleration of the body and outputs this on each of Side 1, Side 2, and Side 4.

The SixDOF component also sums the internal force from Side 1, Side 2, and Side 4, and adds in the internal force due to the acceleration of the Mass and the moment of Inertia.

The SixDOF component calculates the internal force generated in each degree of freedom due
to the perturbation of each degree of freedom. In addition it calculates the default internal forces
due to gravity, velocity, and external forces.

The multibody solver calculates the actual accelerations of each of the six degrees of freedom. These are integrated and used to calculate the position and velocity of the body.

The actual accelerations from the multibody solver are low passed filtered to remove integration noise and to avoid algebraic loops, converted to local coordinates and output via LocalLinAccel and LocalAngAccel. These values can then be used for recording information about the body or for driving a motion base. (NOTE: These are the actual accelerations of the body NOT the perturbations).

Finally the SixDOF component translates the velocities of the body into local coordinates and outputs them on Side 3 in LocalLinVel and LocalAngVel.
 

Side 1: Inputs:

SimRealVar Force1[60] - Global Force (N)
SimRealVar Moment1[60] - Global Moment (Nm)

Outputs:

SimRealVar LinAccel1[60] - Global Linear Acceleration (m/s/s)
SimRealVar LinVel1[3] - Global Linear Velocity (m/s)
SimRealVar LinPos1[3] - Global Linear Position (m)
SimRealVar AngAccel1[60] - Global Angular Acceleration (rad/s/s)
SimRealVar AngVel1[3] - Global Angular Velocity (rad/s)
SimRealVar TM1[9] - Transformation Matrix (ND)
SimRealVar LinkNumber1[20] - Link Number Output (ND)
 

Side 2: Inputs:

SimRealVar Force2[60] - Global Force (N)
SimRealVar Moment2[60] - Global Moment (Nm)

Outputs:

SimRealVar LinAccel2[60] - Global Linear Acceleration (m/s/s)
SimRealVar LinVel2[3] - Global Linear Velocity (m/s)
SimRealVar LinPos2[3] - Global Linear Position (m)
SimRealVar AngAccel2[60] - Global Angular Acceleration (rad/s/s)
SimRealVar AngVel2[3] - Global Angular Velocity (rad/s)
SimRealVar TM2[9] - Transformation Matrix (ND)
SimRealVar LinkNumber2[20] - Link Number Output (ND)
 

Side 3: Inputs:

SimRealVar Inertia[3] - Inertia of Body (kg-m-m)
SimRealVar Mass - Mass of Body (kg)

Outputs:

SimRealVar LocalLinAccel[3] - Local Linear Acceleration (m/s/s)
SimRealVar LocalLinVel[3] - Local Linear Velocity (m/s)
SimRealVar LinPos[3] - Global Linear Position (m)
SimRealVar LocalAngAccel[3] - Local Angular Acceleration (rad/s/s)
SimRealVar LocalAngVel[3] - Local Angular Velocity (rad/s)
SimRealVar TM[9] - Transformation Matrix (ND)
 

Side 4: Inputs:

SimRealVar Force4[60] - Global Force (N)
SimRealVar Moment4[60] - Global Moment (Nm)

Outputs:

SimRealVar LinAccel4[60] - Global Linear Acceleration (m/s/s)
SimRealVar LinVel4[3] - Global Linear Velocity (m/s)
SimRealVar LinPos4[3] - Global Linear Position (m)
SimRealVar AngAccel4[60] - Global Angular Acceleration (rad/s/s)
SimRealVar AngVel4[3] - Global Angular Velocity (rad/s)
SimRealVar TM4[9] - Transformation Matrix (ND)
SimRealVar LinkNumber4[20] - Link Number Output (ND)

 

States: SLinPos[3] - Global Linear Position (m)
LinVel[3] - Global Linear Velocity (m/s)
SAngVel[3] - Global Angular Velocity (rad/s)
EulerParam[4] - Euler Parameters (ND)
SLinAccel [3] - Filtered Global Linear Acceleration (m/s/s)
SAngAccel [3] - Filtered Global Angular Acceleration (rad/s/s) 
 
Dimensions: None
 
 

return to component list

Home  |  Products & Services  |  Support Downloads & Demos  |  Documents  |  News & Events  |  About Us  |   Contact

Realtime Technologies, Inc.
© Copyright 2004-2010 Realtime Technologies Inc. All rights reserved.

Realtime Technologies Inc. (RTI) specializes in real time multibody vehicle dynamics, and graphical simulation and modeling.  We offer simulation software applications, consulting, custom engineering, software, and hardware development.  Realtime Technologies’ customer base includes international, government and private entities.  RTI was founded in 1998.