Prismatic
Prismatic joint (1 translational degree-of-freedom, 2 potential states, optional axis flange)
Library
Modelica/Mechanics/MultiBody/Joints
Description
Joint where frame_b is translated along axis n which is fixed in frame_a. The two frames coincide when the relative distance "s = 0".
Optionally, two additional 1-dimensional mechanical flanges (flange "axis" represents the driving flange and flange "support" represents the bearing) can be enabled via parameter useAxisFlange. The enabled axis flange can be driven with elements of the Modelica.Mechanics.Translational library.
In the "Advanced" menu it can be defined via parameter stateSelect that the relative distance "s" and its derivative shall be definitely used as states by setting stateSelect=StateSelect.always. Default is StateSelect.prefer to use the relative distance and its derivative as preferred states. The states are usually selected automatically. In certain situations, especially when closed kinematic loops are present, it might be slightly more efficient, when using the StateSelect.always setting.
In the following figure the animation of a prismatic joint is shown. The light blue coordinate system is frame_a and the dark blue coordinate system is frame_b of the joint. The black arrow is parameter vector "n" defining the translation axis (here: n = {1,1,0}).
Parameters
Name | Label | Description | Data Type | Valid Values |
---|---|---|---|---|
mo_useAxisFlange | useAxisFlange | = true, if axis flange is enabled | Number | 0 |
mo_animation | animation | = true, if animation shall be enabled | Scalar | true |
mo_n | n | Axis of translation resolved in frame_a (= same as in frame_b) | Vector of size 3 | |
mo_s_offset | s_offset | Relative distance offset (distance between frame_a and frame_b = s_offset + s) | Scalar | |
mo_e | e | Unit vector in direction of prismatic axis n | Vector of size 3 |
Name | Label | Description | Data Type | Valid Values |
---|---|---|---|---|
mo_boxWidthDirection | boxWidthDirection | Vector in width direction of box, resolved in frame_a | Vector of size 3 | |
mo_boxWidth | boxWidth | Width of prismatic joint box | Scalar | |
mo_boxHeight | boxHeight | Height of prismatic joint box | Scalar | |
mo_boxColor | boxColor | Color of prismatic joint box | Vector of size 3 | |
mo_specularCoefficient | specularCoefficient | Reflection of ambient light (= 0: light is completely absorbed) | Scalar |
Name | Label | Description | Data Type | Valid Values |
---|---|---|---|---|
mo_stateSelect | stateSelect | Priority to use distance s and v=der(s) as states | Structure | |
mo_stateSelect/choice1 | StateSelect.never | Number | 0 | |
mo_stateSelect/choice2 | StateSelect.avoid | Number | 0 | |
mo_stateSelect/choice3 | StateSelect.default | Number | 0 | |
mo_stateSelect/choice4 | StateSelect.prefer | Number | 0 | |
mo_stateSelect/choice5 | StateSelect.always | Number | 0 |
Name | Label | Description | Data Type | Valid Values |
---|---|---|---|---|
mo_s | s | s | Structure | |
mo_s/fixed | fixed | Cell of scalars | true | |
mo_s/start | start | Cell of scalars | ||
mo_v | v | v | Structure | |
mo_v/fixed | fixed | Cell of scalars | true | |
mo_v/start | start | Cell of scalars | ||
mo_a | a | a | Structure | |
mo_a/fixed | fixed | Cell of scalars | true | |
mo_a/start | start | Cell of scalars | ||
mo_f | f | f | Structure | |
mo_f/fixed | fixed | Cell of scalars | true | |
mo_f/start | start | Cell of scalars |
Ports
Name | Type | Description | IO Type | Number |
---|---|---|---|---|
frame_a | implicit | Coordinate system fixed to the joint with one cut-force and cut-torque | input | 1 |
frame_b | implicit | Coordinate system fixed to the joint with one cut-force and cut-torque | output | 1 |
Port 3 | implicit | 1-dim. translational flange that drives the joint | input | mo_useAxisFlange |
Port 4 | implicit | 1-dim. translational flange of the drive support (assumed to be fixed in the world frame, NOT in the joint) | output | mo_useAxisFlange |