WOLFRAM SYSTEMMODELER

Universal

Universal joint (2 degrees-of-freedom, 4 potential states)

Diagram

Wolfram Language

In[1]:=
Click for copyable input
SystemModel["Modelica.Mechanics.MultiBody.Joints.Universal"]
Out[1]:=

Information

This information is part of the Modelica Standard Library maintained by the Modelica Association.

Joint where frame_a rotates around axis n_a which is fixed in frame_a and frame_b rotates around axis n_b which is fixed in frame_b. The two frames coincide when "revolute_a.phi=0" and "revolute_b.phi=0". This joint has the following potential states;

  • The relative angle phi_a = revolute_a.phi [rad] around axis n_a,
  • the relative angle phi_b = revolute_b.phi [rad] around axis n_b,
  • the relative angular velocity w_a (= der(phi_a)) and
  • the relative angular velocity w_b (= der(phi_b)).

They are used as candidates for automatic selection of states from the tool. This may be enforced by setting "stateSelect=StateSelect.always" in the Advanced menu. 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 universal joint is shown. The light blue coordinate system is frame_a and the dark blue coordinate system is frame_b of the joint (here: n_a = {0,0,1}, n_b = {0,1,0}, phi_a.start = 90o, phi_b.start = 45o).

Connectors (2)

frame_a

Type: Frame_a

Description: Coordinate system fixed to the component with one cut-force and cut-torque

frame_b

Type: Frame_b

Description: Coordinate system fixed to the component with one cut-force and cut-torque

Parameters (6)

animation

Value: true

Type: Boolean

Description: = true, if animation shall be enabled

n_a

Value: {1, 0, 0}

Type: Axis ()

Description: Axis of revolute joint 1 resolved in frame_a

n_b

Value: {0, 1, 0}

Type: Axis ()

Description: Axis of revolute joint 2 resolved in frame_b

cylinderLength

Value: world.defaultJointLength

Type: Distance (m)

Description: Length of cylinders representing the joint axes

cylinderDiameter

Value: world.defaultJointWidth

Type: Distance (m)

Description: Diameter of cylinders representing the joint axes

stateSelect

Value: StateSelect.prefer

Type: StateSelect

Description: Priority to use joint coordinates (phi_a, phi_b, w_a, w_b) as states

Components (3)

world

Type: World

Description:

revolute_a

Type: Revolute

Description:

revolute_b

Type: Revolute

Description:

Used in Examples (1)

UniversalConstraint

Body attached by one spring and universal joint or constrained to environment