JointUPS

Universal - prismatic - spherical joint aggregation (no constraints, no potential states)

    JointUPS

Library

Modelica/Mechanics/MultiBody/Joints/Assemblies

Description

This component consists of a universal joint at frame_a, a spherical joint at frame_b and a prismatic joint along the line connecting the origin of frame_a and the origin of frame_b, see the default animation in the following figure (the axes vectors are not part of the default animation):

model Joints.Assemblies.JointUPS

This joint aggregation has no mass and no inertia and introduces neither constraints nor potential state variables. It is especially useful to build up more complicated force elements where the mass and/or inertia of the force element shall be taken into account.

The universal joint is defined in the following way:

  • The rotation axis of revolute joint 1 is along parameter vector n1_a which is fixed in frame_a.
  • The rotation axis of revolute joint 2 is perpendicular to axis 1 and to the line connecting the universal and the spherical joint.

The definition of axis 2 of the universal joint is performed according to the most often occurring case. In a future release, axis 2 might be explicitly definable via a parameter. However, the treatment is much more complicated and the number of operations is considerably higher, if axis 2 is not orthogonal to axis 1 and to the connecting rod.

Note, there is a singularity when axis 1 and the connecting line are parallel to each other. Therefore, if possible n1_a should be selected in such a way that it is perpendicular to nAxis_ia in the initial configuration (i.e., the distance to the singularity is as large as possible).

An additional frame_ia is present. It is fixed on the line connecting the universal and the spherical joint at the origin of frame_a. The placement of frame_ia on this line is implicitly defined by the universal joint (frame_a and frame_ia coincide when the angles of the two revolute joints of the universal joint are zero) and by parameter vector nAxis_ia, an axis vector directed along the line from the origin of frame_a to the spherical joint, resolved in frame_ia.

An additional frame_ib is present. It is fixed in the line connecting the prismatic and the spherical joint at the origin of frame_b. It is always parallel to frame_ia.

Note, this joint aggregation can be used in cases where in reality a rod with spherical joints at each end are present. Such a system has an additional degree of freedom to rotate the rod along its axis. In practice this rotation is usually of no interest and is mathematically removed by replacing one of the spherical joints by a universal joint.

The easiest way to define the parameters of this joint is by moving the MultiBody system in a reference configuration where all frames of all components are parallel to each other (alternatively, at least frame_a, frame_ia and frame_ib of the JointUSP joint should be parallel to each other when defining an instance of this component).

Parameters

JointUPS_0

NameLabelDescriptionData TypeValid Values

mo_animation

animation

= true, if animation shall be enabled

Scalar

true
false

mo_showUniversalAxes

showUniversalAxes

= true, if universal joint shall be visualized with two cylinders, otherwise with a sphere (provided animation=true)

Scalar

true
false

mo_n1_a

n1_a

Axis 1 of universal joint resolved in frame_a (axis 2 is orthogonal to axis 1 and to line from universal to spherical joint)

Vector of size 3

mo_nAxis_ia

nAxis_ia

Axis vector along line from origin of frame_a to origin of frame_b, resolved in frame_ia

Vector of size 3

mo_s_offset

s_offset

Relative distance offset (distance between frame_a and frame_b = s(t) + s_offset)

Scalar

mo_eAxis_ia

eAxis_ia

Unit vector from origin of frame_a to origin of frame_b, resolved in frame_ia

Vector of size 3

mo_e2_ia

e2_ia

Unit vector in direction of second rotation axis of universal joint, resolved in frame_ia

Vector of size 3

mo_e3_ia

e3_ia

Unit vector perpendicular to eAxis_ia and e2_ia, resolved in frame_ia

Vector of size 3

JointUPS_1

NameLabelDescriptionData TypeValid Values

mo_sphereDiameter

sphereDiameter

Diameter of spheres representing the spherical joints

Scalar

mo_sphereColor

sphereColor

Color of spheres representing the spherical joints

Vector of size 3

mo_axisDiameter

axisDiameter

Diameter of cylinder on the connecting line from frame_a to frame_b

Scalar

mo_axisColor

axisColor

Color of cylinder on the connecting line from frame_a to frame_b

Vector of size 3

mo_specularCoefficient

specularCoefficient

Reflection of ambient light (= 0: light is completely absorbed)

Scalar

mo_cylinderLength

cylinderLength

Length of cylinders representing the two universal joint axes

Scalar

mo_cylinderDiameter

cylinderDiameter

Diameter of cylinders representing the two universal joint axes

Scalar

mo_cylinderColor

cylinderColor

Color of cylinders representing the two universal joint axes

Vector of size 3

JointUPS_2

NameLabelDescriptionData TypeValid Values

mo_checkTotalPower

checkTotalPower

= true, if total power flowing into this component shall be determined (must be zero)

Scalar

true
false

JointUPS_3

NameLabelDescriptionData TypeValid Values

mo_s

s

s

Structure

mo_s/fixed

fixed

Cell of scalars

true
false

mo_s/start

start

Cell of scalars

mo_f

f

f

Structure

mo_f/fixed

fixed

Cell of scalars

true
false

mo_f/start

start

Cell of scalars

mo_axisLength

axisLength

axisLength

Structure

mo_axisLength/fixed

fixed

Cell of scalars

true
false

mo_axisLength/start

start

Cell of scalars

mo_totalPower

totalPower

totalPower

Structure

mo_totalPower/fixed

fixed

Cell of scalars

true
false

mo_totalPower/start

start

Cell of scalars

Ports

NameTypeDescriptionIO TypeNumber

frame_a

implicit

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

input

1

frame_b

implicit

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

output

1

frame_ia

implicit

Coordinate system at origin of frame_a fixed at prismatic joint

input

2

frame_ib

implicit

Coordinate system at origin of frame_b fixed at prismatic joint

output

2

axis

implicit

1-dim. translational flange that drives the prismatic joint

input

3

bearing

implicit

1-dim. translational flange of the drive bearing of the prismatic joint

output

3