BodyBox: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 1: | Line 1: | ||
A rigid body with uniform mass calculated by the given density and extent. | A rigid body with uniform mass calculated by the given density and extent. [https://build.openmodelica.org/Documentation/Modelica.Mechanics.MultiBody.Parts.BodyBox.html] | ||
===Modeling Approach=== | ===Modeling Approach=== |
Latest revision as of 16:23, 3 January 2020
A rigid body with uniform mass calculated by the given density and extent. [1]
Modeling Approach[edit]
The rigid body box has two frames, frame_a and frame_b located at, notionally, two ends. The shape is specified by length,width,and height, located at r_shape. Specify inner width and height to form a rectangular cylinder.
Required Parameters[edit]
name | type | description |
---|---|---|
r | SIunits.Position | vector from frame_a to frame_b such that {1, 0, 0} describes a 1<unit> long box with the length in the x direction. |
Optional Parameters[edit]
name | type | default | description |
---|---|---|---|
r_shape | SIunits.Position | {0,0,0} | vector that locates the box's shape (length, width, height) in frame_a |
r_shape | SIunits.Position | {0,0,0} | vector that locates the box's shape (length, width, height) in frame_a |
length | SIunits.Length | length(r-r_shape) | Length of box |
lengthDirection | Modelica.Mechanics.MultiBody.Types.Axis | r-r_shape | Vector in length direction of box, resolved in frame_a |
width | SIunits.Distance | length/defaultWidth | Width of box |
innerWidth | SIunits.Distance | 0 | Width of inner box surface (0 <= innerWidth <= width) |
widthDirection | Modelica.Mechanics.MultiBody.Types.Axis | {0,1,0} | Vector in width direction of box, resolved in frame_a |
height | SIunits.Distance | width | Height of box |
innerHeight | SIunits.Distance | innerWidth | Height of inner box surface (0 <= innerHeight <= height) |
density | SIunits.Density | 7700 | Density of matieral (e.g., steel: 7700 .. 7900, wood : 400 .. 800) |
mo | SIunits.Mass | min=0, =density*length*width*height | Mass of box without hole |
mi | SIunits.Mass | min=0, =density*length*innerWidth*innerHeight | Mass of hole of box |
m | SIunits.Mass | (min=0) =mo-mi | Mass of box |
r_CM | SIunits.Position | =r_shape+normalize(lengthDirection)*length/2 | Position vector from origin of frame_a to center of mass, resolved in frame_a |
angles_fixed | Boolean | false | if angles_start is used as initial values, else as guess values |
angles_start | SIunits.Angle | {0,0,0} | Initial values of angles to rotate frame_a around 'sequence_start' axes into frame_b |
sequence_start | Types.RotationSequence | {1,2,3} | Sequence of rotations to rotate frame_a into frame_b at initial time |
w_0_fixed | Boolean | false | if w_0_start are used as initial values, else as guess values |
w_0_start | SIunits.AngularVelocity | {0,0,0} | Initial or guess values of angular velocity of frame_a resolved in world frame |
z_0_fixed | Boolean | false | if z_0_start are used as initial values, else as guess values |
z_0_start | SIunits.AngularAcceleration | {0,0,0} | Initial values of angular acceleration z_0 = der(w_0) |
enforceStates | Boolean | false | if absolute variables of body object shall be used as states (StateSelect.always) |
useQuaternions | Boolean | true | if quaternions shall be used as potential states otherwise use 3 angles as potential states |
sequence_angleStates | Types.RotationSequence | {1,2,3} | Sequence of rotations to rotate world frame into frame_a around the 3 angles used as potential states |
Public Fields[edit]
name | type | description |
---|---|---|
frame_a | Interfaces.Frame_a | Coordinate system fixed to the component with one cut-force and cut-torque |
frame_b | Interfaces.Frame_b | Coordinate system fixed to the component with one cut-force and cut-torque |
r_0 | SIunits.Position | Position vector from origin of world frame to origin of frame_a |
v_0 | SIunits.Velocity | Absolute velocity of frame_a, resolved in world frame (= der(r_0)) |
a_0 | SIunits.Acceleration | Absolute acceleration of frame_a resolved in world frame (= der(v_0)) |
R | Frames.Orientation | Orientation object from frame_a to coordinates system spanned by r and widthDirection |
I | SIunits.Inertia | Inertia tensor of body box with respect to center of mass, parallel to frame_a |