modelPlanar

Planar joint (3 degrees-of-freedom, 6 potential states)

Extends from Modelica.Mechanics.MultiBody.Interfaces.PartialTwoFrames (Base model for components providing two frame connectors + outer world + assert to guarantee that the component is connected).

Information

Joint where frame_b can move in a plane and can rotate around an axis orthogonal to the plane. The plane is defined by vector n which is perpendicular to the plane and by vector n_x, which points in the direction of the x-axis of the plane. frame_a and frame_b coincide when s_x=prismatic_x.s=0, s_y=prismatic_y.s=0 and phi=revolute.phi=0. This joint has the following potential states:

  • the relative distance s_x = prismatic_x.s [m] along axis n_x,
  • the relative distance s_y = prismatic_y.s [m] along axis n_y = cross(n,n_x),
  • the relative angle phi = revolute.phi [rad] around axis n,
  • the relative velocity v_x (= der(s_x)).
  • the relative velocity v_y (= der(s_y)).
  • the relative angular velocity w (= der(phi))

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 planar 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 arrows are parameter vectors "n" and "n_x" (here: n = {0,1,0}, n_x = {0,0,1}, s_x.start = 0.5, s_y.start = 0.5, phi.start = 45o).

Parameters

TypeNameDefaultDescription
Booleananimationtrue= true, if animation shall be enabled
Modelica.Mechanics.MultiBody.Types.Axisn{0, 0, 1}Axis orthogonal to unconstrained plane, resolved in frame_a (= same as in frame_b)
Modelica.Mechanics.MultiBody.Types.Axisn_x{1, 0, 0}Vector in direction of x-axis of plane, resolved in frame_a (n_x shall be orthogonal to n)
Animation › if animation = true
SI.DistancecylinderLengthworld.defaultJointLengthLength of revolute cylinder
SI.DistancecylinderDiameterworld.defaultJointWidthDiameter of revolute cylinder
SI.DistanceboxWidth0.3*cylinderDiameterWidth of prismatic joint boxes
SI.DistanceboxHeightboxWidthHeight of prismatic joint boxes
Advanced
StateSelectstateSelectStateSelect.preferPriority to use joint coordinates (s_x, s_y, phi, v_x, v_y, w) as states

Connectors

TypeNameDefaultDescription
Interfaces.Frame_aframe_a (from PartialTwoFrames)Coordinate system a fixed to the component with one cut-force and cut-torque
Interfaces.Frame_bframe_b (from PartialTwoFrames)Coordinate system b fixed to the component with one cut-force and cut-torque

Components

TypeNameDefaultDescription
Types.ColorcylinderColorModelica.Mechanics.MultiBody.Types.Defaults.JointColorColor of revolute cylinder
Types.ColorboxColorModelica.Mechanics.MultiBody.Types.Defaults.JointColorColor of prismatic joint boxes
Prismaticprismatic_x
Prismaticprismatic_y
Revoluterevolute
SI.Positions_xRelative distance along first prismatic joint starting at frame_a
SI.Positions_yRelative distance along second prismatic joint starting at first prismatic joint
SI.AnglephiRelative rotation angle from frame_a to frame_b
SI.Velocityv_xFirst derivative of s_x (relative velocity in s_x direction)
SI.Velocityv_yFirst derivative of s_y (relative velocity in s_y direction)
SI.AngularVelocitywFirst derivative of angle phi (relative angular velocity)
SI.Accelerationa_xSecond derivative of s_x (relative acceleration in s_x direction)
SI.Accelerationa_ySecond derivative of s_y (relative acceleration in s_y direction)
SI.AngularAccelerationwdSecond derivative of angle phi (relative angular acceleration)