modelBodyShape
Information
Rigid body with mass and inertia tensor and two frame connectors. All parameter vectors have to be resolved in frame_a. The inertia tensor has to be defined with respect to a coordinate system that is parallel to frame_a with the origin at the center of mass of the body. The coordinate system frame_b is always parallel to frame_a.
By default, this component is visualized by any shape that can be defined with Modelica.Mechanics.MultiBody.Visualizers.FixedShape. This shape is placed between frame_a and frame_b (default: length(shape) = Frames.length(r)). Additionally a sphere may be visualized that has its center at the center of mass. Note, that the animation may be switched off via parameter animation = false.
The following shapes can be defined via parameter shapeType, e.g., shapeType="cone":
A BodyShape component has potential states. For details of these states and of the "Advanced" menu parameters, see model MultiBody.Parts.Body.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | animation | true | = true, if animation shall be enabled (show shape between frame_a and frame_b and optionally a sphere at the center of mass) |
| Boolean | animateSphere | true | = true, if mass shall be animated as sphere provided animation=true |
| SI.Position[3] | r | Vector from frame_a to frame_b resolved in frame_a | |
| SI.Position[3] | r_CM | Vector from frame_a to center of mass, resolved in frame_a | |
| SI.Mass | m | Mass of rigid body | |
| Inertia tensor (resolved in center of mass, parallel to frame_a) | |||
| SI.Inertia | I_11 | 0.001 | Element (1,1) of inertia tensor |
| SI.Inertia | I_22 | 0.001 | Element (2,2) of inertia tensor |
| SI.Inertia | I_33 | 0.001 | Element (3,3) of inertia tensor |
| SI.Inertia | I_21 | 0 | Element (2,1) of inertia tensor |
| SI.Inertia | I_31 | 0 | Element (3,1) of inertia tensor |
| SI.Inertia | I_32 | 0 | Element (3,2) of inertia tensor |
| Initialization | |||
| Boolean | angles_fixed | false | = 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.RotationSequence | sequence_start | {1, 2, 3} | Sequence of rotations to rotate world frame into frame_a at initial time |
| Boolean | w_0_fixed | false | = 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 |
| Boolean | z_0_fixed | false | = 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) |
| Animation › if animation = true | |||
| Types.ShapeType | shapeType | "cylinder" | Type of shape |
| SI.Position[3] | r_shape | {0, 0, 0} | Vector from frame_a to shape origin, resolved in frame_a |
| Types.Axis | lengthDirection | to_unit1(r - r_shape) | Vector in length direction of shape, resolved in frame_a |
| Types.Axis | widthDirection | {0, 1, 0} | Vector in width direction of shape, resolved in frame_a |
| SI.Length | length | Modelica.Math.Vectors.length(r - r_shape) | Length of shape |
| SI.Distance | width | length/world.defaultWidthFraction | Width of shape |
| SI.Distance | height | width | Height of shape |
| Types.ShapeExtra | extra | 0.0 | Additional parameter depending on shapeType (see docu of Visualizers.Advanced.Shape) |
| Animation › if animation = true and animateSphere = true | |||
| SI.Diameter | sphereDiameter | 2*width | Diameter of sphere |
| Advanced | |||
| Boolean | enforceStates | false | = true, if absolute variables of body object shall be used as states (StateSelect.always) |
| Boolean | useQuaternions | true | = true, if quaternions shall be used as potential states otherwise use 3 angles as potential states |
| Types.RotationSequence | sequence_angleStates | {1, 2, 3} | Sequence of rotations to rotate world frame into frame_a around the 3 angles used as potential states |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Interfaces.Frame_a | frame_a | Coordinate system fixed to the component with one cut-force and cut-torque | |
| Interfaces.Frame_b | frame_b | Coordinate system fixed to the component with one cut-force and cut-torque |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| SI.Position[3] | r_0 | Position vector from origin of world frame to origin of frame_a | |
| SI.Velocity[3] | v_0 | Absolute velocity of frame_a, resolved in world frame (= der(r_0)) | |
| SI.Acceleration[3] | a_0 | Absolute acceleration of frame_a resolved in world frame (= der(v_0)) | |
| Types.Color | color | Modelica.Mechanics.MultiBody.Types.Defaults.BodyColor | Color of shape |
| Types.Color | sphereColor | color | Color of sphere of mass |
| Types.SpecularCoefficient | specularCoefficient | world.defaultSpecularCoefficient | Reflection of ambient light (= 0: light is completely absorbed) |
| FixedTranslation | frameTranslation | ||
| Body | body |