RevolutePlanarLoopConstraint

Revolute joint that is described by 2 positional constraints for usage in a planar loop (the ambiguous cut-force perpendicular to the loop and the ambiguous cut-torques are set arbitrarily to zero)

    RevolutePlanarLoopConstraint

Library

Mechanics/MultiBody/Joints

Description

Joint where frame_b rotates around axis n which is fixed in frame_a and where this joint is used in a planar loop providing 2 constraint equations on position level.

If a planar loop is present, e.g., consisting of 4 revolute joints where the joint axes are all parallel to each other, then there is no unique mathematical solution if all revolute joints are modelled with Joints.Revolute and the symbolic algorithms will fail. The reason is that, e.g., the cut-forces in the revolute joints perpendicular to the planar loop are not uniquely defined when 3-dim. descriptions of revolute joints are used. Usually, an error message will be printed pointing out this situation. In this case, one revolute joint in the loop has to be replaced by model Joints.RevolutePlanarLoopCutJoint. The effect is that from the 5 constraints of a 3-dim. revolute joint, 3 constraints are removed and replaced by appropriate known variables (e.g., the force in the direction of the axis of rotation is treated as known with value equal to zero; for standard revolute joints, this force is an unknown quantity).

Parameters

RevolutePlanarLoopConstraint_0

NameLabelDescriptionData TypeValid Values

mo_animation

animation

= true, if animation shall be enabled (show axis as cylinder)

Scalar

true
false

mo_n

n

Axis of rotation resolved in frame_a (= same as in frame_b)

Vector of size 3

mo_cylinderLength

cylinderLength

Length of cylinder representing the joint axis

Scalar

mo_cylinderDiameter

cylinderDiameter

Diameter of cylinder representing the joint axis

Scalar

mo_cylinderColor

cylinderColor

Color of cylinder representing the joint axis

Vector of size 3

mo_specularCoefficient

specularCoefficient

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

Scalar

mo_e

e

Unit vector in direction of rotation axis, resolved in frame_a (= same as in frame_b)

Vector of size 3

mo_nnx_a

nnx_a

Arbitrary vector that is not aligned with rotation axis n

Vector of size 3

mo_ey_a

ey_a

Unit vector orthogonal to axis n of revolute joint, resolved in frame_a

Vector of size 3

mo_ex_a

ex_a

Unit vector orthogonal to axis n of revolute joint and to ey_a, resolved in frame_a

Vector of size 3

Ports

NameTypeDescriptionIO TypeNumber

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