modelBodyBox

Rigid body with box shape. Mass and animation properties are computed from box data and density (12 potential states)

Information

Rigid body with box shape. The mass properties of the body (mass, center of mass, inertia tensor) are computed from the box data. Optionally, the box may be hollow. The (outer) box shape is by default used in the animation. The hollow part is not shown in the animation. The two connector frames frame_a and frame_b are always parallel to each other. Example of component animation (note, that the animation may be switched off via parameter animation = false):

Parts.BodyBox

A BodyBox component has potential states. For details of these states and of the "Advanced" menu parameters, see model MultiBody.Parts.Body.

Parameters

TypeNameDefaultDescription
Booleananimationtrue= true, if animation shall be enabled (show box between frame_a and frame_b)
SI.Position[3]rVector from frame_a to frame_b resolved in frame_a
SI.Position[3]r_shape{0, 0, 0}Vector from frame_a to box origin, resolved in frame_a
Modelica.Mechanics.MultiBody.Types.AxislengthDirectionto_unit1(r - r_shape)Vector in length direction of box, resolved in frame_a
Modelica.Mechanics.MultiBody.Types.AxiswidthDirection{0, 1, 0}Vector in width direction of box, resolved in frame_a
SI.LengthlengthModelica.Math.Vectors.length(r - r_shape)Length of box
SI.Distancewidthlength/world.defaultWidthFractionWidth of box
SI.DistanceheightwidthHeight of box
SI.DistanceinnerWidth0Width of inner box surface (0 <= innerWidth <= width)
SI.DistanceinnerHeightinnerWidthHeight of inner box surface (0 <= innerHeight <= height)
SI.Densitydensity7700Density of cylinder (e.g., steel: 7700 .. 7900, wood : 400 .. 800)
SI.Massmodensity*length*width*heightMass of box without hole
SI.Massmidensity*length*innerWidth*innerHeightMass of hole of box
SI.Massmmo - miMass of box
Frames.OrientationRFrames.from_nxy(r, widthDirection)Orientation object from frame_a to coordinates system spanned by r and widthDirection
SI.Position[3]r_CMr_shape + normalizeWithAssert(lengthDirection)*length/2Position vector from origin of frame_a to center of mass, resolved in frame_a
SI.Inertia[3,3]IFrames.resolveDyade1(R, diagonal({mo*(width*width + height*height) - mi*(innerWidth*innerWidth + innerHeight*innerHeight), mo*(length*length + height*height) - mi*(length*length + innerHeight*innerHeight), mo*(length*length + width*width) - mi*(length*length + innerWidth*innerWidth)}/12))Inertia tensor of body box with respect to center of mass, parallel to frame_a
Initialization
Booleanangles_fixedfalse= true, if angles_start are used as initial values, else as guess values
SI.Angle[3]angles_start{0, 0, 0}Initial values of angles to rotate world frame around 'sequence_start' axes into frame_a
Types.RotationSequencesequence_start{1, 2, 3}Sequence of rotations to rotate world frame into frame_a at initial time
Booleanw_0_fixedfalse= true, if w_0_start are used as initial values, else as guess values
SI.AngularVelocity[3]w_0_start{0, 0, 0}Initial or guess values of angular velocity of frame_a resolved in world frame
Booleanz_0_fixedfalse= true, if z_0_start are used as initial values, else as guess values
SI.AngularAcceleration[3]z_0_start{0, 0, 0}Initial values of angular acceleration z_0 = der(w_0)
Advanced
BooleanenforceStatesfalse= true, if absolute variables of body object shall be used as states (StateSelect.always)
BooleanuseQuaternionstrue= true, if quaternions shall be used as potential states otherwise use 3 angles as potential states
Types.RotationSequencesequence_angleStates{1, 2, 3}Sequence of rotations to rotate world frame into frame_a around the 3 angles used as potential states

Connectors

TypeNameDefaultDescription
Interfaces.Frame_aframe_aCoordinate system fixed to the component with one cut-force and cut-torque
Interfaces.Frame_bframe_bCoordinate system fixed to the component with one cut-force and cut-torque

Components

TypeNameDefaultDescription
Modelica.Mechanics.MultiBody.Types.ColorcolorModelica.Mechanics.MultiBody.Types.Defaults.BodyColorColor of box
Types.SpecularCoefficientspecularCoefficientworld.defaultSpecularCoefficientReflection of ambient light (= 0: light is completely absorbed)
SI.Position[3]r_0Position vector from origin of world frame to origin of frame_a
SI.Velocity[3]v_0Absolute velocity of frame_a, resolved in world frame (= der(r_0))
SI.Acceleration[3]a_0Absolute acceleration of frame_a resolved in world frame (= der(v_0))
Bodybody
FixedTranslationframeTranslation