Mates and Joints
Mates and Entities
In a SolidWorks® assembly, you connect parts using mates. Each mate applies a geometric relationship between mate entities on different parts. Mates include parallel, concentric, and coincident types. Mate entities include points, lines, and surfaces.
Consider the connection between the upper-arm and forearm parts of a robotic arm assembly. This connection allows the two parts to rotate with respect to each other about a single axis and therefore has one rotational degree of freedom. You specify this degree of freedom by applying mates such as:
One concentric mate between the cylindrical hinge surfaces of the two parts. This mate reduces the joint degrees of freedom to two—one translational, along the cylindrical axis, and one rotational, about the same axis.
One coincident mate between two planes normal to the cylindrical axis. This mate removes the translational degree of freedom between the two parts. These can now only rotate about the common hinge axis.
The figure shows the mated surfaces in a CAD robotic arm assembly.
For the purposes of CAD import, Simscape™ Multibody™ software supports these mate entities:
Circle/arc
Cone
Cylinder
Line
Plane
Point
Simscape Multibody also supports these mates:
Angle
Coincident
Concentric
Distance
Parallel
Perpendicular
Supported mates are valid only for certain entity pairs. The table shows the entity pairs compatible with the supported mates. This table is symmetric with respect to the diagonal row.
Joints and Constraints
Joint and Constraint blocks are the Simscape Multibody equivalent of SolidWorks mates. They apply between two bodies the kinematic constraints that determine how they can move. A Revolute Joint block is an example. This block removes five degrees of freedom between two bodies, allowing them only to rotate about a common axis.
Consider the connection between the upper-arm and forearm parts of the robotic arm assembly. This connection provides a single rotational degree of freedom and therefore is a revolute joint. During CAD import, the mates between the two parts translate into a Revolute Joint block between two rigid body subsystems. The figure shows this joint block in an imported model (polished for clarity).
Joint blocks are assortments of joint primitives, basic yet complete joints of various kinds you cannot decompose any further—at least without losing behavior such as the rotational-translational coupling of the lead screw joint. Joint primitives range in number from zero in the Weld Joint block to six in the Bushing Joint block. There are five joint primitives:
Prismatic — Allows translation along a single standard axis (x, y, or z). Joint blocks can contain up to three prismatic joint primitives, one for each translational DoF. Prismatic primitives are labelled P*, where the asterisk denotes the axis of motion, e.g., Px, Py, or Pz.
Revolute — Allows rotation about a single standard axis (x, y, or z). Joint blocks can contain up to three revolute joint primitives, one for each rotational DoF. Revolute primitives are labelled R*, where the asterisk denotes the axis of motion, e.g., Rx, Ry, or Rz.
Spherical — Allows rotation about any 3-D axis, [x, y, z]. Joint blocks contain no more than one spherical primitive, and never in combination with revolute primitives. Spherical primitives are labelled S.
Lead Screw Primitive — Allows coupled rotation and translation on a standard axis (e.g., z). This primitive converts between rotation at one end and translation at the other. Joint blocks contain no more than one lead screw primitive. Lead screw primitives are labeled LS*, where the asterisk denotes the axis of motion.
Constant Velocity Joint — Allows rotation at constant velocity between intersecting though arbitrarily aligned shafts. Joint blocks contain no more than one constant velocity primitive. Constant velocity primitives are labelled CV.
A Joint block can have up to three revolute primitives or, alternatively, one spherical primitive. Each revolute primitive aligns with a different axis in the joint base frame—X, Y, or Z. These are denoted Rx, Ry, and Rz, respectively. The spherical primitive, denoted S, enables rotation about a general axis [X, Y, Z] in the joint base frame.
Similarly, a Joint block can also have up to three prismatic primitives. Each primitive aligns with a different axis in the joint base frame—X, Y, or Z. These are denoted Px, Py, and Pz, respectively. The table shows the Joint blocks that CAD mates can translate into, the joint primitives the blocks contain, and the degrees of freedom they provide. T and R denote translational and rotational DOFs. Joint blocks not shown are not supported.
By defining the relative degrees of freedom between two bodies, Joint blocks partially determine how these bodies can move with respect to each other. Constraint blocks enable you to impose additional restrictions on their motion. CAD mates can translate into these Constraint blocks:
Mate-Joint Mapping
The table shows the Joint blocks that different mate combinations map into. Different mate combinations can map into the same joint. This happens if the mate combinations provide the same degrees of freedom between the parts they join. For a legend of the icons in the table, see Mates and Entities.
Mate pairs marked with a note number must satisfy additional requirements. This list outlines these requirements:
Cylinder axes in mate I must be parallel to planes in mate II.
Lines in mate I must be parallel to planes in mate II.
Planes in mate I must not be parallel to planes in mate II.
Cylinder axes in mate I must be perpendicular to planes in mate II.
Lines in mate I must be perpendicular to planes in mate II.
Mate-Constraint Mapping
The table shows the Constraint blocks that different mate combinations map into. Different mates map into the same Constraint block if they provide the same degrees of freedom. Angle mates must have values of 0 or 90 degrees. Other mate settings are not supported. For a legend of the icons in the table, see Mates and Entities.
Special Mate Translation Cases
The lack of mates between parts, combinations of mates that fully constrain two parts, and unsupported mates are special translation cases. Here is how Simscape Multibody software handles these cases:
Unsupported mates between parts translate into rigid connections between rigid bodies. The rigid connections can be in the form of Weld Joint blocks or direct frame connection lines between the rigid bodies. These connections are meant to be temporary. After CAD import, search your model for rigid connections and, if appropriate, replace them with other Joint and Constraint blocks.
Mate combinations that fully constrain two parts translate into rigid connections between two rigid bodies. The rigid connections can be in the form of Weld Joint blocks or direct frame connection lines between the rigid bodies. These rigid connections accurately model the degrees of freedom between the two bodies and do not need to be replaced.
The absence of a mate between a part and the rest of the assembly translates into a 6-DOF Joint block between a rigid body and the World frame. This joint block provides the rigid body the six degrees of freedom that the CAD part has within the CAD assembly.